3 ms·
I agree. The longer I've been a programmer, the more Greenspun's tenth rule rings true. It's sad that in the modern day, ad-hoc YAML template programming is mor
by grose 3y ago
I agree. The longer I've been a programmer, the more Greenspun's tenth rule
rings true. It's sad that in the modern day, ad-hoc YAML template programming is more widespread than e.g. embedded Lisps. Feels like the concept of "code as data" is severely underrepresented in the programming zeitgeist.
I've been thinking a lot about how to make Prolog (and niche languages in general) more palatable. Killer app, like Ruby:Rails? Corporate backing, like Go:Google? Strong IDE integration, like Typescript:VSCode? Cute mascot? Meme power (HTMX:Grug)? Seems like all of these can help but none are a guarantee. So I figure that starting with IDE support is a decent approach. At the very least it's something I would use myself.
The Reddit example you brought up is very interesting. I feel like niche languages can be a kind of advantage in attracting strong talent despite the small talent pool, but then you have companies that mistake headcount as growth and optimize their tech stack for hireability, picking the popular choices instead.
One decent argument against niche languages is libraries. I have some vague hopes that Wasm Components will be a huge boon for niche languages once it stabilizes and libraries and cloud services start providing their APIs in component form. Of course, we already have near-universal FFI with the C ABI but that is messy enough that most people are unwilling to work with it.
Enjoyed the rant! Here's my own :). I understand there are valid business reasons not to pick a niche language ("we need to hire 10 people NOW and use XYZ library! no time to write our own!") but it's a bit soul-crushing. Working on Prolog stuff is my way of coping.