Crosscut

Daily Note - 2025-05-01

Hey, I'm Hanno! These are my daily notes on Crosscut, the programming language I'm creating. If you have any questions, comments, or feedback, please get in touch!

Let's recap: Crosscut's goal is to shorten the feedback loops in programming as much as possible. A coarse-grained approach, like using the new code on the next frame/update/request, is not enough to do that. Every single change must be available immediately in the running program, right where it's made.

I have found that achieving these fine-grained updates is hard when code is represented as text, because you lose information. You had the user make specific changes in specific places. But if you then only look at the resulting text, you're left guessing what specifically changed in comparison with the older version of that text.

I decided I wasn't going to deal with heuristics. Instead, Crosscut code would be stored in a structured code database, and there was going to be an editor that makes changes to that code database directly. That way, the system would always know precisely what changed, and the user's intent would not be lost.

Tomorrow, let's talk about some of the the challenges of building such an editor.

Hey, you! Want to subscribe to my daily notes? Just let me know (maybe include a nice message, if you're up for it), and I'll send you an email every time I post a new one.