[Haskell-cafe] Design of a DSL in Haskell

Joerg Fritsch fritsch at joerg.cc
Wed Dec 5 08:09:58 CET 2012


Kim-Eeh, Tillmann,

I am interested in the definition of deep vs shallow embedded, even if it is not featured in the Fowler textbook. Fowler that is one textbook "only" and I am not focused on it. 

--Joerg


On Dec 5, 2012, at 2:59 AM, Kim-Ee Yeoh wrote:

> On Wed, Dec 5, 2012 at 8:32 AM, Tillmann Rendel <rendel at informatik.uni-marburg.de> wrote:
> I mean internal == embedded, independently of deep vs. shallow, following Martin Fowler [1].
> [1] http://martinfowler.com/bliki/DomainSpecificLanguage.html
> 
> If I look here [2] I see:
> 
> "An internal DSL is just a particular idiom of writing code in the host language. So a Ruby internal DSL is Ruby code, just written in particular style which gives a more language-like feel. As such they are often called Fluent Interfaces orEmbedded DSLs. An external DSL is a completely separate language that is parsed into data that the host language can understand."
> 
> Fowler places undue emphasis on the "completely separate language", but other than that, the correspondence is clear. I wonder how he thinks about C implementing C? Or ghc implementing haskell in haskell? Would he say, "Well, clearly C and haskell are not DSLs, they are general purpose languages!"?
> 
> [2] http://martinfowler.com/bliki/DslQandA.html
> 
> -- Kim-Ee
> 
> 
> 
> 
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20121205/81b3caa8/attachment.htm>


More information about the Haskell-Cafe mailing list