Re: JPush: Lush on Python on Java

Yann LeCun <[email protected]>
Newsgroups gmane.lisp.lush.devel
Organization Courant Institute, NYU
Message-ID <[email protected]>
It's certainly possible to implement some clone of Lush on top of Java
(instead of on top of C). This could play the same role as Jython for
people who want to use a lisp-like scripting language.

On the other hand, if we are going to consider an undertaking of that
magnitude, we need to think hard about what niche Lush occupies.

In my mind, the void that Lush fills is that of an open-source,
convenient, and flexible language for "numerical" research,
prototyping, and rapid development.  This is a space that Matlab,
pynum, and a few others are attempting to fill, but they all have
problems and limitations. For example Matlab (besides being non open
source) is not really designed as a full-fledged programming language,
and limits the size and complexity of projects that can be developed
with it.

There is a very real (and growing) need for such a language, which
Lush partially fills. You need this if you are doing R&D or
prototyping in data mining, robotics, vision, AI, machine learning,
graphics, multimedia, signal processing, image processing, audio
processing, scientific computing (physics, atmospheric science...),
operations research, music, games, medical imaging, user
interface,........

If we are going to spend some efforts thinking about possible rewrite
of Lush, I think we should keep that in mind.  Leon and I have toyed
with the idea of a possible Lush 2.0 (but since our primary research
interest is machine learning, not language design, this may never
see the light of day unless someone else takes the lead). 
Here are a few things we would do differently:
- implement Lush in C++
- an even better integration of the Lush world with the C/C++ world
  (e.g. using the same underlying structure for Lush objects and
   C++ classes).
- a compiler that compiles the whole language on the fly (a la Ocaml)
- lexical scoping (it's better for compiling)
- library functions (e.g strings, files...) that behave 
  more like their C/C++ counterparts (because people are used to
  that).
- a better imaging model for the default graphic driver
  (the existing one is based on the old Xlib).

  -- Yann


On Wednesday 02 November 2005 12:24 pm, Raymond Martin wrote:
> Hi all,
>
> I have been batting this idea around in my head for a while.
>
> Why not implement a version of lush in Java?
>
> Furthermore, why not implement it on top of Jython?
>
> Jython sits right on top of Java and both are able to take advantage of the
> others facilities. Java code can access Python API stuff and vice versa.
>
> Basing lush on Jython instead of immediately on Java will definitely have
> implementation benefits. Moreover, using the reflection capabilities of
> Java, which should be in Jython also, gives JPush some meta object protocol
> capabilities from the start. The name is tentative, but is just a funny
> play on (Java (Python (Lush))) like GNU or something, but for the lispy
> types.
>
> To me it is quite easy to envision the standard Lush and this one sitting
> side-by-side, at times serving the same purpose and then different ones.
> The two could use a communications mechanism via a future Jlush (akin to
> Clush) implementation, or even a Plush (Python interface in Lush), using
> and improving upon the Python access already available.
>
> It would be a sizeable piece of work, but it can be seen that it will take
> advantage of everything that both Java and Python have to offer and go
> beyond both of them by providing all the facilities of Lush. Two advantages
> of a Java base will be immediate cross-platform operation and access to
> J2EE with extensive web services (distributed computing functionality, SOA,
> etc.)
>
> Adding to all of this is the possibility to pursue development within Java
> IDEs that have support for Jython. Eclipse and NetBeans both have support
> to my knowledge.
>
> Seems like a great idea with a lot of potential to add to the great piece
> of work that Lush already is.
>
> Can we knock our heads to together and get something off the ground?
>
> Raymond
>
>
>
>
>
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around
> http://mail.yahoo.com
>
>
>
> -------------------------------------------------------
> SF.Net email is sponsored by:
> Tame your development challenges with Apache's Geronimo App Server.
> Download it for free - -and be entered to win a 42" plasma tv or your very
> own Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
> _______________________________________________
> Lush-devel mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/lush-devel




-------------------------------------------------------
SF.Net email is sponsored by:
Tame your development challenges with Apache's Geronimo App Server. Download
it for free - -and be entered to win a 42" plasma tv or your very own
Sony(tm)PSP.  Click here to play: http://sourceforge.net/geronimo.php
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.