>I just don't like the workflow of compiling everything. If I want to
use clojure on the comandline i want to write "clojure-pypy
mytool.cljp".

Does this seam resenable?

I was thinking about starting this rather soon. For me it would be a
research type project (at least at first). Would anybody care to work
with me on this?
>

I would love to help out on this project. A few things to think about:

1) PyPy takes a very, very loose view of "bytecode". That is, there is
no reason to execute "bytecode" inside your interpreter. Instead...in
LISP data=code. So why not just allow any arbitrary object to be
eval()? Basically this means you can write a pure LISP
interpreter...and PyPy will write the JIT.

2) It should be possible to implement only a very, very small subset
of Clojure in RPython, then write the rest in Clojure. ClojureScript
does a very, very good job at this. The idea is that you define
deftype, defprotocol, if, def, and a few other functions, then
implement 100% of the rest of the code via these functions. Using
arrays, it's possible to implement PersistentHashMaps, Vectors, etc.
And then the nice thing is, you can completely modify the underlying
interpreter at will, and not have to modify any code. I guess what I'm
suggesting, is that you abstract Clojure from the VM that it operates
on. As long as the compiler knows how to deftype, defprotocol, etc.,
it can run your Clojure subset.

I guess the above two points are mostly to keep you from having to
re-implement code in the future, or have to spend a ton of time on
useless code. I've built a bytecode system in PyPy and it's no fun. As
it is, you'll have fun with just basic things like figuring out how to
add a float and a int.

Timothy

-- 
“One of the main causes of the fall of the Roman Empire was
that–lacking zero–they had no way to indicate successful termination
of their C programs.”
(Robert Firth)

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en

Reply via email to