I’m just curious about Domain-Specific Languages. I have seen them several times in articles, and it seems that they can be used outside assurance or bank data definition problems.
So I come to SO to have some concrete input.
Did you ever use a DSL? Write one. If yes, what’s it feel like?
Do you think one of your projects could be better (more productive, more maintainable, …) with a DSL?
Edit : I’m sorry to put this after, but i was meanning a specific DSL that you wrote yourself.
It’s exclude Tex, HTML, Make , SQL. I fact, the question was more : “writing a DSL”
I was one of the people that worked on NUnit version 2.0 and up for a few years. It is a DSL written using C# attributes to describe unit tests. It isn’t the most obvious example of a DSL, but I have come to think of it as one.
I have written some other ones using ANTLR and even MGrammar. The experience is often the same. As soon as you show it to someone else they want to do a bunch of things you never thought of. That’s a good thing, but you have to be prepared to keep going and add functionality.
I’m now in the habit of thinking about and writing DSLs quite often. The current object relational mapper I use is a dsl. It isn’t a new language. It is pure C#, but by thinking of the language of the Domain, and that Domain is more than just Business Domain, we created a mini language to map objects. Thinking in terms of DSLs has changed our approach to API and framework building.