The Lone Lisp Heap

(matheusmoreira.com)

10 points | by stevekemp 2 hours ago ago

5 comments

  • PaulHoule 2 hours ago 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 40 minutes ago 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.

      • exe34 7 minutes ago 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.

      • zabzonk 9 minutes ago ago

        > The second attempt is always better.

        Um, see The Second System Effect.

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

        • matheusmoreira 3 minutes ago ago

          Lone itself is a second system: it's the spiritual successor of liblinux. I suppose the scope did increase... I'll try to be careful.