[pro] Fwd: Lisp and DSLs
Ala'a Mohammad
amalawi at gmail.com
Thu Jul 28 11:19:13 UTC 2011
[oops, I keep forgetting to add cl-pro email when replying.]
IMHO:
DSL can be made of a varying mix of abstraction, syntax and semantics.
All of which can be achieved within CL using interpreter & compiler,
macros, closures, reader macros, compiler macros, printing protocol
and CLOS. These will help a lot, both the developer and the user.
check the following examples:
Corman CL Assembler DSL (check the source code for assembler.lisp and
how elegantly normal x86 assembler syntax was introduced into CL code)
http://www.cormanlisp.com/index.html
SBCL VOPs:
http://sbcl-internals.cliki.net/Adding%20VOPs
http://paste.lisp.org/display/41937
GOAL: Game Object Assembly Lisp ("...intermix assembly instructions
seamlessly with higher-level code...")
http://www.gamasutra.com/view/feature/2985/postmortem_naughty_dogs_jak_and_.php?print=1
CLSQL: SQL syntax
CL-Typesetting: typesetting DSL
Prolog interpreter or compiler.
those are the ones I remember directly when talking about DSL in common-lisp
- Ala'a
More information about the pro
mailing list