3 ms·
The nuts and bolts will be embeddable DSL’s, they are the only code which does not rot. Put them in a hierarchy with one compiling down into another or several
by hdkdicnsnjes 1y ago
The nuts and bolts will be embeddable DSL’s, they are the only code which does not rot. Put them in a hierarchy with one compiling down into another or several and you have your building.
- layer8 1y agoHow would that not rot and be full of leaky abstractions?
- hdkdicnsnjes 1y agoDoes SQL or regex as a language rot? I’d say the abstraction above using SQL or regex to implement it rots, because it’s not formalised as a language. Does the implementation leak through things like JSON or a EBNF grammar? Performance can be a concern but the implementation doesn’t leak through the language unlike a library api. If you have access to the compiler you can adjust the implementation to get whatever performance you’d like without affecting the abstraction. Edit: JSON is a perfect example of resistance to rot and a good abstraction. You will always be able to read it in any given language because it is a language and not some library. Non DSL code should be considered as compiler output and that is what 99.9% of software devs spend their time writing. They mock people who would write assembly then go and create some fucked type hierarchy in Haskell for some business problem and call it a good abstraction. The complexity just multiplies until we end up with the current state of the industry.