2 ms·
There is a sliding scale between API design and DSL design, at least when we are talking about internal DSL's. At what point does an API become a DSL? It is tr
by goto11 7y ago
There is a sliding scale between API design and DSL design, at least when we are talking about internal DSL's. At what point does an API become a DSL?
It is true that DSL's need to be documented and maintainable, but if you have the kind of problem when a DSL might be a solution, then not having a DSL would just express the inherent complexity in a different way.
To put it another way, a clear abstraction layer (component, API, framework, DSL etc.) needs to be well-designed, documentated and maintainable, but this need is not avoided by having a system of the same complexity without such clear abstraction layers.
Btw. I disagree about the popularity of general purpose languages. Some very popular languages (VB, JavaScript) are quite badly designed but a popular due to integration with a platform.