[racket] howto-like text about writing DSLs?
FWIW, my Datalog language is now in the core and significantly updated
and redesigned to be easier for a beginner to read the code.
Jay
On Wed, Nov 10, 2010 at 2:13 PM, Matthias Felleisen
<matthias at ccs.neu.edu> wrote:
>
> We are concerned with the production of complex DSLs and haven't made the production of easy DSLs -- like the one you see on Linkedin -- easy.
>
> The 'creating a language' is one half of the problem: make a module and a reader and wire it all up so you can say
>
> #lang MyDSL
>
> somewhere else.
>
> The other half is implementing the parser/constraint checker/semantics, which happens within the language module/package. For that, you need to study things such as syntax-parse and the syntax system and then syntax-case and -- for easy style -- plain old syntax-rules. So the reverse order of what I just wrote will usually do you much more good than the actual order.
>
> Other than that, look at things such as Algol 6o (in the core and a tad old) and Jay's Datalog language (on Planet, and recent) to study some example.s
>
> -- Matthias
>
>
>
>
>
>
> On Nov 10, 2010, at 3:50 PM, keydana at gmx.de wrote:
>
>> Hi,
>>
>> does anyone know of a tutorial / howto - like text regarding writing DSLs?
>> I've read the "creating languages" chapter in the racket guide, but while I find it "technically understandable" I'm a bit at a loss as to "what to do in order to reach which goal" - the chapter explains the technical possibilities I have, but I don't really know which to choose for what purpose / "use case"...
>>
>> Many thanks in advance,
>> Sigrid
>> _________________________________________________
>> For list-related administrative tasks:
>> http://lists.racket-lang.org/listinfo/users
>
> _________________________________________________
> For list-related administrative tasks:
> http://lists.racket-lang.org/listinfo/users
>
--
Jay McCarthy <jay at cs.byu.edu>
Assistant Professor / Brigham Young University
http://faculty.cs.byu.edu/~jay
"The glory of God is Intelligence" - D&C 93