DSLs(Domain Specific Programming Languages) implemented using different GPLs(General Purpose Programming Languages)

StackOverflow https://stackoverflow.com/questions/4237499

  •  26-09-2019
  •  | 
  •  

Question

I am looking for DSLs implemented using general purpose programming languages(GPLs) e.g., C#, Java , Scala and so on. Primary goal is to survey various important attributes of well-designed DSL implementations used in a daily basis in Software Industry.

I would highly appreciate if you could point me out such DSL implementations (examples or repositories) and state your reasons why you consider it to be a good DSL.

Thank you,

Adil Akhter


EDIT 1:

IMHO, this post can contribute to create a listing of interesting prevailing DSLs used extensively in today’s Software Development (after searching, at least I could not find any such listings covering all the GPLs).

One of the several inherent benefits of this listing – it can be used create taxonomy of the DSLs and domain they are targeting to.

Followings are the related links that describes some interesting DSLs and Tools:

DSLs( categorized by GPLs):

  1. Ruby DSLs => Ruby DSL (Domain Specific Language) repositories, examples
  2. Clojure DSLs => Are there any Clojure DSLs?
  3. Scala DSLs => Interesting DSLs, Implemented in Scala?
  4. C# DSLs => SharpDOM ( http://sharpdom.codeplex.com )

Tools:

  1. Microsoft Visual Studio Visualization and Modeling SDK : http://code.msdn.microsoft.com/vsvmsdk
Was it helpful?

Solution

take a look at boost.spirit2 to find a very complex DSL in a mainstream language. Otherwise you could look at any dialect of lisp which makes it very easy to write DSLs and so you will find lots of them.

OTHER TIPS

You might consider non-procedural techniques for implementing DSLs, such as (our) program transformation system. I think you will find them surprisingly powerful.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top