@kf I feel your pain. I'm currently (re)writing the substrate of a #Lisp system in C. I am eagerly looking forward to the day (which will be soon -- hopefully as soon as next week) when I will be able to switch most of the work to Lisp. This is the fourth Lisp I've written, and this stage of the process is always the most gruelling.

#PostScarcitySoftware

@petealexharris Uh-huh. I really want, in #PostScarcitySoftware, for users to be able to type in any form of writing known to humanity, or at least to Unicode. I want it to Just Work™.

For this reason, as well as because I want to know exactly how many bits I have to allocate to each character, char32_t seems the right solution.

Except when it's not.

I've started my development log for May. It's really mostly about tooling -- specifically, editors and debuggers.

#PostScarcitySoftware
#Lisp

https://www.journeyman.cc/blog/posts-output/2026-05-05-Post-Scarcity-state-of-play-May-2026/

Post Scarcity state of play, May 2026

My monster, she builds! Admittedly, she doesn't yet do much, but... (also in this post, a lot of discussion of debuggers and editors).

The Fool on the Hill

I'm getting stack frames corrupted (or else I'm hitting the wrong stack frames) and I can't see why. My brain is far too messed up to deal with this level of shit just now!

#PostScarcitySoftware
#TheJoyOfSoftwareEngineering

My monster, she lives.

It has to be admitted, she can't do very much yet.

#PostScarcitySoftware

It's a week since my last #PostScarcitySoftware entry. The version of eval/apply copied from `0.0.6` still doesn't compile, let alone work. There are reasons. I've been ill — my brain really is fucked — and I've had urgent outdoor work.

There is progress. I am cleaning up bits of old cruft as I go. But I don't think copying the old code was a good decision. If I had started a clean room implementation a week ago, I would now have a working evaluator. Certainly, I'd have a better one.

#Lisp

@screwlisp @kentpitman @amszmidt (I mean, currently I implement loop by doing a specialisation of try...catch. and while it works I do not consider it elegant!)

#PostScarcitySoftware

@vnikolov @screwlisp OK, I'm going to take it on faith for now that the value of (expt 1/2 3/4) is irrational, because I don't have the headspace at present to work the proof. But I'm surprised -- it violates my naive intuition.

What I'm trying to do with #PostScarcitySoftware is to think about how the software for the hardware of the deep future will work.

Actually, it probably won't, of course. Actually, we'll probably burn the planet in the near future. But it's a fun thought experiment.

@vnikolov @screwlisp OK, I've not got further than basic peano arithmetic yet. #PostScarcitySoftware is a very big project and although yes of course one day it should have very sophisticated mathematics libraries, I'm nowhere near that. My naive expectation is that if I start something like exponentiation with integers and rationals, then the result should be an integer or a rational. I would be *satisfied* with a complex result, provided that the components were integer or rational.
/Continued

So yesterday, I decided to copy the versions of eval and apply from 0.0.6 (which, after all, do work — there are lots of problems with the 0.0.6 prototype but the interpreter is not one of them) into 0.1.0. But then last night I read the chapter in @cdegroot 's The Genius of Lisp and I'm back to wanting to reimplement them yet again. I'm not sure that this is wise.

#PostScarcitySoftware