Ravi Teja wrote:

> People have however written various language interpreters (Scheme,
> Forth and yes, even Basic) in Python, just for kicks. Still does not
> make it a DSL language anymore than it makes C a DSL language.
>
> At present, the closest thing to writing a DSL in Python is Logix
> http://livelogix.net/logix/
> Too bad though, the project is defunct and there has never been enough
> interest in it.

You might be interested in EasyExtend:

http://www.fiber-space.de/EasyExtend/doc/EE.html

Unlike Logix there are no macros defined in application code and there
are no runtime macro expansions. So extension language semantics is
always fixed at compile time.

> Personally, I would like to see macros in Python (actually Logix
> succeeding is good enough). But I am no language designer and the
> community has no interest in it. When I absolutely need macros, I will
> go elsewhere.

Although Logix was written in Python and compiled to CPython bytecodes
it was a language on its own right: a Python / Lisp hybrid. Opposed to
this EasyExtend is a Python framework for language extensions and not
itself a language. A quite typical use case may not involve any new
grammar rules or terminals, but just generates code. See the coverage
fiber as an example.

-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to