Kai Devlog #7: Triumph of Roc
Apologies in advance for the brief post. More details to come soon.
Two months ago when I wrote Devlog #3, I decided to write my own custom config language for Kai. Emboldened by Caddy having paved the way, I gambled that the long-term simplicity gains were worth it. Agents of course saved me from having to do the difficult and tedious work of learning how all of this worked at a deep level, but I was also losing even my superficial grip on it.
The “custom language”, while fun in theory, distracted from the real work and was the source of a lot of developer slowdown and feature churn. Friends were requesting syntax highlighting and LSP’s and such, and it quickly became higher priority to think about things this project shouldn’t be slowed down by, when, as pointed out by Luke Boswell, the Roc language was purpose-built for this!
Moving forward, Kai’s config language will be done in Roc.
Thank you to Russell Weas and LightningKoala for your encouragement and suggestions to not roll my own config language, and especially to Luke Boswell for writing an amazing proof of concept that even improved upon the original design and UX of Kai and for your enlightening discussions.
Onward and upward friends. Let’s make something great!