Caterpillar

Daily Thought - 2024-06-01

< back to list

Currently, everything is experimental, subject to change all the time, and there are no version numbers. Things will hopefully calm down over time, but as I said before, I am (as of now) not targeting a 1.0 release that I intend to keep stable.

The way I envision it, any given Caterpillar release might add a new feature, deprecate an existing one, or remove an old one that has been deprecated for a while. The point is not to adhere to some definition of stability. The point is to continue evolving the language, make it easy for users to keep up, and minimize the cost of maintaining the project.

I think that the key to make this work is for upgrades to be easy. No change or removal should come as a surprise, unless that's required to fix a critical bug. Features should stay deprecated for an extended period, to give users ample opportunity to upgrade. Where these upgrades can be automated, they should be.

<< previous thoughtnext thought >>