Martin Cracauer, a Common Lisp (SBCL) developer, writes about garbage collection, compile-time computing, static typing in Lisp and developer focus.
Commenters cite his articles for Lisp type checking and for how userfaultfd and write barriers work in generational garbage collection, and call one article great.
It's a great article. Related, for Common Lisp: https://lispcookbook.github.io/cl-cookbook/type.html
and also:
- https://medium.com/@MartinCracauer/static-type-checking-in-the-programmable-programming-language-lisp-79bb79eb068a (by an author of the CLASP implementation, C++ & LLVM for CL)
- https://github.com/stylewarning/coalton - a library (pre-alpha): adding Hindley-Milner type checking to Common Lisp which allows for gradual adoption, in the same way Typed Racket or Hack allows for. It is as an embedded DSL in Lisp that resembles Standard ML or OCaml, but lets you seamlessly interoperate with non-statically-typed Lisp code (and vice versa).
Last year I wrote about focus and attention when programming and how slow tools and slow compile-run workaround time hurt us.
"Software Development at 1 Hz (medium.com)"
https://news.ycombinator.com/item?id=12577283
This is my followup with more general attention and focus issues for some parts of the workplace.
https://medium.com/@MartinCracauer/on-attention-focus-and-autism-in-the-tech-workplace-8246526fbbc0
If you like it I would also appreciate a retweet.
https://twitter.com/MartinCracauer/status/902199195674824704
If anyone is curious about how signals are used for garbage collection (specifically SIGSEGV) check out this article:
https://medium.com/@MartinCracauer/generational-garbage-collection-write-barriers-write-protection-and-userfaultfd-2-8b0e796b8f7f
It's handy for knowing which areas of the heap have been untouched (and thus don't need to be scavenged in a generational gc).
Yeah you can do optional static typing in common lisp:
https://medium.com/@MartinCracauer/static-type-checking-in-the-programmable-programming-language-lisp-79bb79eb068a
The typing discipline in strong. I think it also has type inference but I'm not 100% sure
I first learned about userfaultfd's utility to GC from https://medium.com/@MartinCracauer/generational-garbage-collection-write-barriers-write-protection-and-userfaultfd-2-8b0e796b8f7f