Python + Lisp integration?

S

Simo Melenius

Hi,

I'm wondering (after a bit of googling) whether there exists a Python
binding to any open source Lisp environment (like librep or some
Scheme or Common Lisp implementation) that could be recommended for
non-toy use?

My intention would be to use the Lisp environment to augment and help
my Python programming (and/or conversely: have access to the wealth of
Python libraries and Python code from a lispy language), which yields
at least the following requirements:

- the type and runtime environment system would need to be quite
transparently integrated, e.g. being able to use (pass, call,
set/get attr) Python objects in Lisp and vice versa with minimum
hassle

- the performance should match at least that of Python's. That
probably requires a native interpreter, although the ability to
compile Lisp to Python bytecode could do (if the lispy language
could be efficiently implemented in the Python bytecode)

There are many Scheme/Lisp interpreters written in Python, but those
I've found and looked at I consider to be more of proof of concepts.
Nesting different interpreters costs probably an order of magnitude in
speed.
 
A

Arthur

Hi,

I'm wondering (after a bit of googling) whether there exists a Python
binding to any open source Lisp environment (like librep or some
Scheme or Common Lisp implementation) that could be recommended for
non-toy use?

Not sure this is going to help much,

but Lush - Lisp Universal Shell - is mature and has bindings to the
Python C API.

http://lush.sourceforge.net/lush-manual/f0288067.html

The bindings are specific to Python22. I had trouble getting all the
demos working against Python23.

Art
 
F

Fuzzyman

Simo said:
Hi,

I'm wondering (after a bit of googling) whether there exists a Python
binding to any open source Lisp environment (like librep or some
Scheme or Common Lisp implementation) that could be recommended for
non-toy use?

My intention would be to use the Lisp environment to augment and help
my Python programming (and/or conversely: have access to the wealth of
Python libraries and Python code from a lispy language), which yields
at least the following requirements:

- the type and runtime environment system would need to be quite
transparently integrated, e.g. being able to use (pass, call,
set/get attr) Python objects in Lisp and vice versa with minimum
hassle

- the performance should match at least that of Python's. That
probably requires a native interpreter, although the ability to
compile Lisp to Python bytecode could do (if the lispy language
could be efficiently implemented in the Python bytecode)

There are many Scheme/Lisp interpreters written in Python, but those
I've found and looked at I consider to be more of proof of concepts.
Nesting different interpreters costs probably an order of magnitude in
speed.


When I looked for one I oculdn't find one. As Common Lisp generally
runs *considerably* faster than Python it could be a useful thing to
have. (Writing python extensions in CLISP would be more 'Pythonic' than
writing them in C ?). A two way binding to GNU CLISP would seem a
sensible one to implement.

Don't think it's already been done though.
Regards,


Fuzzy
http://www.voidspace.org.uk/python/index.shtml
 
S

Simo Melenius

Arthur said:
but Lush - Lisp Universal Shell - is mature and has bindings to the
Python C API.

Lush looks like a very interesting project on its own, too, and seems
to have a load of bindings to other libraries too÷÷. (Even better if it
was to support Python 2.3/2.4 once again in the future).


br,
S
 
S

Simo Melenius

Erno Kuusela said:
you might want to look at <http://logix.livelogix.com/> .

Thanks, this was a good link! Logix looks like an interesting project,
really, and I think I'll at least study its internals myself to shed
light to how it uses the Python compiler. Looks like something to hack
on.


br,
S
 
P

Peter Dembinski

Simo Melenius said:
Hi,

I'm wondering (after a bit of googling) whether there exists
a Python binding to any open source Lisp environment (like librep
or some Scheme or Common Lisp implementation) that could
be recommended for non-toy use?

Dunno about non-toy uses, but if you want program your emacs with
Python, there is pymacs available :)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,484
Members
44,903
Latest member
orderPeak8CBDGummies

Latest Threads

Top