[pypy-dev] Next step: gen???.py

Lutz Paelike lutz_p at gmx.net
Mon Apr 4 23:09:40 CEST 2005


Armin Rigo wrote:

 > That's an excellent point.
 >
 > I played with a more promizing approach in
 > http://codespeak.net/svn/pypy/dist/pypy/translator/typer.py .  Basically,
 > instead of enhancing genc to support all kind of typed operations and implicit
 > conversions (or rely on C++ to select the operations and insert these
 > conversions automatically), the abvoe module contains code that modifies the
 > flow graph itself to turn it into a "low-level" flow graph.  The idea was
 > already floating around here.  In short it turns code like



Hi,

i just want to pop in the discussion and bring up my idea on flowgraph modeling again.
I know i was'nt able to convince most of you at the PyCon but i still think this is a powerful
way to describe a problem. Maybe i can convince you in the future ;)

"..that modifies the flow graph itself to turn it into a "low-level" flow graph."

This is exactly what i want to create, a visual flowgraph construction tool that enables the user to connect
abstract nodes and to model an abstract (decision, data flow,whatever ..) tree. The idea is that your building blocks 
are abstract enough to be useful but atomic enough to model every possible problem. From this model i could easily 
generate (R)Python code and feed it into PyPy, so for the system it should make absolutely no difference if it handles 
generated or hand-typed RPython code. This user-view flowgraph can then be later translated to a system-view ( or 
"low-level") flowgraph. The difference is that the user is not modeling *the* flowgraph but *a* flowgraph.

I find it even more attractive to make the generation of code just an option and to directly interface with PyPy.
So opposed to the idea of having multiple code output modules (which is great) i propose an additional input module 
which is visually constructed in an editor. Since i can take the route through generated RPython code into the system 
there should'nt be compatibility issues.

To make my idea more clear i would like to point you to a video tutorial showing the 3d tool Houdini in action.
I want to put much of the functionality of Houdini into the visual editor i am thinking of so maybe you find it 
interesting. The candle component example illustrates a whole development cycle to develop a reusable component with
user controls..
http://sidefx.vislab.usyd.edu.au/houdini_video/by_topic/general/index.html

(there are more on the net..)
If your interest goes event further you may want to download a free demo of Houdini (Linux & Windows) and play around 
with it..
It's here:
http://sidefx.vislab.usyd.edu.au


I know that this thing is only loosely related to PyPy itself and is more a generic editor, which is my intention.
In the first place i do 3d graphics so i can not put much very much time in the project but i am very interested in it 
and maybe i can bring in a different point of view  into the discussion ;)


Cheers,

Lutz




More information about the Pypy-dev mailing list