It will happen to you
2026-06-09 16:51 UTC
Replies (7)
-
@mindbleach@sh.itjust.works 2026-06-09 17:31
It’s the configuration complexity clock. You hardcode values in an established, full-featured programming language. That gets annoying, so you push some into config files. That’s not powerful enough, so you let the config files include conditionals. Soon your config files are more like scripts, but it’s so easy to keep adding features… And suddenly you’re back to hardcoding, but in a newer, jankier programming language.
-
@marcos@lemmy.world 2026-06-09 19:21
Your DSL isn’t embedded on a Turing complete language. That was your mistake.
-
@Supercrunchy@programming.dev 2026-06-09 20:38
One word: Terraform
-
@SubArcticTundra@lemmy.ml 2026-06-09 21:46
If your DSL has loops tyen it should be a Python library
-
@bricked@feddit.org 2026-06-09 22:22
Aaand… it’s Turing-complete!
-
@Hudell@lemmy.dbzer0.com 2026-06-10 00:10
I have created a handful of DSLs over the years and I think most of them were bad ideas. Ironically the most complex one is the one that I think was actually right. It had support for a lot of stuff like loops, functions, custom variables and even some weird shit like async execution of child commands. I think what made it work in that case was mostly that the purpose of the DSL was completely different from the others. The system wasn’t designed with a DSL in mind. The DSL was just a simpler way to provide input for something that was already there.
-
@spazzman6156@sh.itjust.works 2026-06-10 03:07
Ok I’m inferring here, but why does DSL mean more than one thing in the technology/computer field? The only one I know is Digital Subscriber Line