On Tue, 18 Jul 2006, Frank Barknecht wrote:
Yes, that's how I think it is, too. Python has the advantage of being much easier to program, especially for a huge library as ODE, if you use some introspection trickery to provide a Pd interface to all the methods ODE provides with just a handfull of code lines.
At University of Ottawa we use introspection to provide an interface between LTIlib (http://ltilib.sourceforge.net/) and PureData.
One issue we have are that LTIlib is really made by C++ people to be used by C++ people, so the Python bindings are lagging behind (being made by a separate person for his own needs), and the Ruby bindings that we had to make (or rather, that Heriniaina Andrianirina made) are not quite complete. All bindings are made using SWIG, which is a tool that helps pretend that C++ supports introspection (ha!ha!ha!).
Once the Ruby bindings are made, the other problem is that Ruby, like Python, is oblivious to typing and overloading, which requires strange hacks in order to keep everything mostly automatically introspective. That's about 200 lines. The remaining 500 lines do the bindings with PureData and the integration with existing GridFlow structures.
A third problem is that LTIlib doesn't prevent people from making it segfault in any way, and that doesn't make it so suitable for embedding in interactive coding systems (e.g. PureData,Ruby,Python), so additional checks will have to be added in order to prevent the most common mistakes.
Of course, this is all being built using the research funds of (you guessed it) Alexandre Castonguay.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801 - http://artengine.ca/matju | Freelance Digital Arts Engineer, Montréal QC Canada