Crosscut

Daily Thought - 2024-05-28

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

This thought was published before Crosscut was called Crosscut! If it refers to "Caterpillar", that is the old name, just so you know.

< back to list

My approach to incremental development requires the ability and willingness to keep evolving the language over time. I'm not working towards a big 1.0 release, after which the language will be "stable", with few or no breaking changes ever again. Maybe that will happen one day. But currently, it's not part of the plan.

And I don't think that's a bad thing. I think a programming language is too big of a target to be "stable" indefinitely. And lots of languages acknowledge that; with gated feature, unstable flags, editions, or 2.0 releases.

I would like to embrace breaking changes in Caterpillar. Treat them not as something to be avoided, but as an inevitable part of the process, that the language and tooling are designed to make painless. There should be no need for a big 1.0 release, and then another big, and very painful, 2.0 some time after.

<< previous thoughtnext thought >>

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