Hi Emil,
now that is an interpretation I could live with!
Glad I posted the question.
Günther
Am 07.10.2009, 17:24 Uhr, schrieb Emil Axelsson <e...@chalmers.se>:
Hi,
A DSL is just a domain-specific language. It doesn't imply any specific
implementation technique.
An *embedded* DSL is a library implemented in a more general language,
which has been designed to give the "feeling" of a stand-alone language.
Still nothing about implementation.
A *shallow embedding* of a DSL is when the "evaluation" is done
immediately by the functions and combinators of the DSL. I don't think
it's possible to draw a line between a combinator library and a
shallowly embedded DSL.
A *deep embedding* is when interpretation is done on an intermediate
data structure.
/ Emil
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe