The Lone Lisp Heap (matheusmoreira.com)

13 points by stevekemp 2 hours ago

PaulHoule 2 hours ago

You can learn a lot developing a language and runtime but you will reach a point when you'll realize you can go back and do it all better.

matheusmoreira an hour ago

No doubt. The second attempt is always better. My initial plan was to write a complete first implementation in C so that it's always possible to bootstrap the language, then write a compiler inside the lisp itself, or write a Rust version. Hope I somehow manage to do it all before I die of old age.

zabzonk 29 minutes ago

> The second attempt is always better.

Um, see The Second System Effect.

https://en.wikipedia.org/wiki/Second-system_effect

matheusmoreira 23 minutes ago

exe34 27 minutes ago

Aha I've been semi-vibe-coding a scheme for esp32c3 and linux at the same time, and forgoing the libc too, so baremetal c. I went with a slightly awkward approach for allocation, with heap being seen as pages, and within pages, fixed size objects of size 8, 16 or 32 bytes. A pair is two words, and either bitpacked or pointer to another object. I'm not far in, vaguely following the Peter Michaux approach.