You can also also view the full archives of micro-posts. Longer blog posts are available in the Articles section.
The Seine is green!
As a Lisp programmer, it’s not surprising that it’s a little slower. The number of person-years that have gone into C compilers to optimize idiomatic C code makes the development effort behind SBCL, the most popular open-source Lisp compiler, look like a rounding error. — Idiomatic Lisp and the nbody benchmark
TIL that we can use Texshop previewer with vimtex, which provides forward and
inverse search facilities. No need for Skim.app. #vim
Apple Silicon and Virtual Machines: Beating the 2 VM Limit: “I got 9 macOS VMs running at once on my M2 Pro MacBook Pro, and still usable for testing!”
Enough lines drawn close together stop looking like lines and start looking like a surface. Generative art over the years
Quoi ? C’est compliqué ? Faut faire un effort ? C’est pas joli ? C’est élitiste ? Et tu crois qu’entretenir une crête colorée sur le sommet de son crâne, c’est à la portée de tout le monde ? Bien sûr qu’être technopunk ça demande un effort. Tu voudrais que tout soit facile, sans apprendre et joli justement dans l’esthétique à la mode que t’impose un marketeux défoncé ? Mais retourne dans les jupes de Zuckerberg ! — La complainte du technopunk ringard
Vim Advanced Search and Replace. I too make heavy use of the Quickfix, and I think it is one of the most underrated feature of Neovim. #vim
Simplest hash functions. I wish every single technical blog post look so precise and so well laid out.
Adding guards to all the executables I use as makeprg, compiler,
formatprg, etc. in my Neovim config files (mostly in after/ftplugin) to
ensure portability across machines. While it is easy to detect language servers
when they come as static binaries, some LSPs come as packages, e.g., R or Racket
language servers. Here’s what I came with:
" after/ftplugin/r.vim
let output = system("Rscript -e '\"languageserver\" %in% installed.packages()'")
if v:shell_error == 0
lua <<EOF
vim.lsp.enable("r_language_server")
EOF
endif
" after/ftplugin/racket.vim
let output = system("raco pkg show racket-langserver | grep Checksum")
if v:shell_error == 0
lua <<EOF
vim.lsp.enable("racket-langserver")
EOF
endif
For other languages, I just use an if executable("<whatever>") test.
