Костыли чтобы заюзать org-capture для того чтобы добавить запись в файлик ledger. Плюс комлишен Accounts из задаваемого списка. https://github.com/4DA/emacs-stuff/blob/master/ledger-completed-capture.el Работает примерно [так](http://dump.bitcheese.net/files/ihijiwy/ledger-org-capture-complete.ogv)
Сделай свое общение на point.im более разнообразным: Сделай свое общение на point.im более разнообразным => Кококо лойс кукарек ле маман.ле маман разнообразным (setq ko-table ["k" "ле" "yay" "лойс" "маман" "кококо" "кукарек" "зафорсил"]) (defun make-ko-regexp (word-len sw start end) (let ((rx (format "\\b[[:alpha:]]\\{%d\\}\\b" word-len))) (replace-regexp rx sw nil start end) rx)) (defun kokoify (start end) (interactive "r") (save-excursion (dotimes (number (length ko-table) nil) (make-ko-regexp (+ 1 number) (aref ko-table number) start end)))) ;; select the region and call M-x kokoify
Увидел следующую замену systemd: ``` #define _XOPEN_SOURCE 700 #include <signal.h> #include <unistd.h> int main() { sigset_t set; int status; if (getpid() != 1) return 1; sigfillset(&set); sigprocmask(SIG_BLOCK, &set, 0); if (fork()) for (;;) wait(&status); sigprocmask(SIG_UNBLOCK, &set, 0); setsid(); setpgid(0, 0); return execve("/etc/rc", (char *[]){ "rc", 0 }, (char *[]){ 0 }); } ``` Какие подводные камни?
Расписание горнолыжных соревнований TZ: MSK+4 | Day | Date | Begin | End | Discipline | | День 3 | Воскресенье, 9 февраля | 11:00 | 13:10 | Скоростной спуск, мужчины | | День 4 | Понедельник, 10 февраля | 11:00/15:00 | 12:30/16:10 | Суперкомбинация, женщины | | День 6 | Среда, 12 февраля | 11:00 | 13:10 | Скоростной спуск, женщины | | День 8 | Пятница, 14 февраля | 11:00/15:30 | 12:30/16:40 | Суперкомбинация, мужчины | | День 9 | Суббота, 15 февраля | 11:00 | 13:10 | Супергигант, женщины | | День 10 | Воскресенье, 16 февраля | 11:00 | 13:10 | Супергигант, мужчины | | День 11 | Вторник, 18 февраля | 11:00/14:30 | 13:00/16:10 | Гигантский слалом, женщины | | День 12 | Среда, 19 февраля | 11:00/14:30 | 13:00/16:10 | Гигантский слалом, мужчины | | День 15 | Пятница, 21 февраля | 16:45/20:15 | 18:00/21:25 | Слалом, женщины | | День 16 | Суббота, 22 февраля | 16:45/21:50 | 18:15/20:15 | Слалом, мужчины |
Костыль для емакса чтобы в конец буфера вставлялся первый встретившийся выше номер поста или комента (вида #foo/bar). (defun do-reply-to-post-comment () (if (re-search-backward "^#[0-9a-zA-Z]+\\(/[0-9a-zA-Z]+\\)?" nil t 1) (progn (end-of-buffer) (insert-buffer-substring-no-properties (current-buffer) (match-beginning 0) (match-end 0)) (insert " ")) (message "No comments found"))) (defun reply-to-post-comment() (interactive) (save-excursion (do-reply-to-post-comment)) (end-of-buffer)) (global-set-key (kbd "C-c r") 'reply-to-post-comment)
Суровый выхлоп работы ракетовского макростеппера: (define (g) (forever (let ([abort abort]) (unless #t (abort)) (abort)))))) Для тех, кому интересно: первый abort имееет контекст из раскрытия макроса `while', а второй - из раскрытия макроса `forever', этакие костыли для обхода гигены без использвания stx-params. сорцы: http://paste.lisp.org/display/138905 соус: barzilay.org/misc/stxparam.pdf
$ torify cabal update Downloading the latest package list from hackage.haskell.org Segmentation fault
Короче, меня заебало в emacs, что backward-kill-word удалит int array []; ^^^^^^^^^ вот это, вместо вот этого int array []; ^^^ Простого способа пофиксить это я не нашел, то есть либо хачить syntax-table, чтобы знаки пунктуации принадлежали word syntax class, либо перебыдлить backward-kill-word самому. Что я и сделал. Найденым багам буду рад шопиздец. https://github.com/4DA/emacs-stuff/blob/master/smart-kill.el P.S В бонус перебыдлил kill-word.
cl_int clEnqueueWriteImage Enqueues a command to write to an image or image array object from host memory. ptr The pointer to a buffer in host memory where image data is to be written to. image data is to be written to to be written to
На лоре спросили: /можно ли написать на Racket такую функцию, чтобы внутри неё (в её динамическом окружении) делений на 0 возвращало 0, а не прерывало вычисления/ Короче, да: (define-syntax-rule (try-or-zero body ...) (let/cc k (with-handlers ([exn? (λ _ (k 0))]) body ...))) (define (testl l) (if (null? l) '() (cons (try-or-zero (/ 1 (car l))) (testl (cdr l))))) (testl '(1 2 3 0 5))
настало время факториалов. -------------------------- мемоизация на ракете. nothing special. #lang racket ; replace define with a memoized version (define-syntax define-memoized (syntax-rules () [(_ (f args ...) bodies ...) (define f ; store the cache as a hash of args => result (let ([results (make-hash)]) ; need to do this to capture both the names and the values (lambda (args ...) ((lambda vals ; if we haven't calculated it before, do so now (when (not (hash-has-key? results vals)) (hash-set! results vals (begin bodies ...))) ; return the cached result (hash-ref results vals)) args ...))))])) ; example, fibonacci with memoization (define-memoized (mfib n) (cond [(< n 1) 1] [else (+ (mfib (- n 1)) (mfib (- n 2)))]))
llvm[0]: ***** Completed Debug+Asserts Build llvm[0]: ***** Note: Debug build can be 10 times slower than an llvm[0]: ***** optimized build. Use make ENABLE_OPTIMIZED=1 to llvm[0]: ***** make an optimized build. Alternatively you can llvm[0]: ***** configure with --enable-optimized. real 80m5.129s user 297m28.264s sys 2m28.560s
sudo aptitude remove xfonts-terminus-oblique
Тут короче понадобилось заюзать мне binary heap в racket и захотел я это сделать с использованием стандартных схем итерации через for-iterations. Однако текущая binary heap не реализует нужный интерфейс (stream?). Поэтому кое-чего нужно доопределить. К счастью, в racket это сделать достаточно просто. Необходимо задать структуру, реализующую три функции: stream-empty? stream-first и stream-rest (тест на пустоту потока, получение элемента из головы и хвоста) (define-struct hstream (v) #:methods gen:stream [(define (stream-empty? st) (eq? (heap-count (hstream-v st)) 0)) (define (stream-first st) (heap-min (hstream-v st))) (define (stream-rest st) (begin (heap-remove-min! (hstream-v st)) (hstream (hstream-v st))))]) простой пример: > (define h1 (make-heap <)) > (heap-add! h1 8) > (heap-add! h1 11) > (heap-add! h1 2) > (for/list ([x h1]) x) for: expected a sequence for x, got something else: #<heap> > (for/list ([x (hstream h1)]) x) '(2 8 11)
Надоело вручную цопипастить куски текста для квотирования, накостылял велосипед. Обосрите/найдите косяки чтоли. (defun quote-selection () "pastes selection prefixed by > to end of input to comment on that" (interactive) (kill-ring-save (point) (mark)) (goto-char (point-max)) (insert "> ") (yank) (insert (kbd "C-j")) )
GewogenGraaf<ONGERICHT, int> g; А я думал только рюсске называют переменные "int peremennaia1";
Пиздец. Исходник на с++. Из туторила. * Запакован в (!) RAR-файле. * Часть кода выравнивнено пробелами, часть - табами. * Вот такие перлы: vecteur dist = s.pos - r.start; cout << "Mal formed Scene file...
Невиданный аттракцион щедрости от меня. Палю годный кусок конфига для tmux: Быстрый переход по окнам. # start Window Numbering at 1 set -g base-index 1 bind-key -n M-1 select-window -t 1 bind-key -n M-2 select-window -t 2 bind-key -n M-3 select-window -t 3 bind-key -n M-4 select-window -t 4 bind-key -n M-5 select-window -t 5 bind-key -n M-6 select-window -t 6 bind-key -n M-7 select-window -t 7 bind-key -n M-8 select-window -t 8 bind-key -n M-9 select-window -t 9
В связи с приказом Федеральной службы безопасности.... .... всем обслуживающим оф. сайтов районных судов по г. Москве в приказном порядке сменить пароль от аккаунтов администратора на aBu2ChSo в целях усиления узловой безопасности. И.О начальника Управления. И.П. Александров http://ic.pics.livejournal.com/galeonis/8850090/1643219/original.jpg
вот код из #1899432 Предлагайте ваши варианты по оптимизации. //----------------------------------------- void calcParticles() { #ifdef USE_OPENMP #pragma omp parallel for #endif for (int i = 0; i < pVecSz; i++) { Particle &p = particleVec[i]; float sqrs = sqrt((X-p.x)*(X-p.x)+(Y-p.y)*(Y-p.y)+(Z-p.z)*(Z-p.z) ); // float f = G*((p.M*M)/sqrt(rs)); float f = G*((p.M*M)/1.0); float a = f/p.M; float cosx = (X-p.x)/sqrs; float cosy = (Y-p.y)/sqrs; float cosz = (Z-p.z)/sqrs; float ax = a*cosx; float ay = a*cosy; float az = a*cosz; p.vx += ax*1/invFPS; p.vy += ay*1/invFPS; p.vz += az*1/invFPS; p.x += p.vx; p.y += p.vy; p.z += p.vz; } } //------------------------------------------ Сам думаю: 1. Вынести за пределы цикла: float f = G*((p.M*M)/1.0); float a = f/p.M; 2. Заюзать pthreads (вдруг полущ будет) 3. Заюзать SSE3 для извлечения квадратного корня и подсчетса направляющих косинусов.