[Haskell-cafe] What *is* a DSL?
Günther Schmidt
gue.schmidt at web.de
Wed Oct 7 11:31:24 EDT 2009
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 <emax at 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
>
>
More information about the Haskell-Cafe
mailing list