On Sat, 2009-03-28 at 20:26 -0500, Glimmer Labs wrote:
What do you envision as final deliveries of this project?
I am still trying to work out the feasibility of various options, but hopefully a very minimal API along with a framework for expanding it.
One thing I would definitely have to work on (before the summer started, ideally) is making sure that the API is well designed and makes sense as a whole, even if I am only implementing a subset.
I think that makes sense. One thing that I think would be interesting for this project is to use the new GObject introspection libraries that are being developed. This basically allows for a static API file to be built that there are language libraries that can pick it up. Basically by doing the effort for GObject introspection once, we can pick up Python and Javascript easily, but also other languages pretty quickly.
The difficult part becomes where to put the interpreters. And that's always what we've struggled with a little in the past. You really want to provide every language that anyone could develop in, but we don't want Inkscape linking to every interpreter that you can possibly think of. That would suck.
One of the things that Mental and I had discussed, which I think might also be interesting. Is the idea of making an API like this and exporting it over DBus. So we'd still be calling an external process, but giving it a DBus address and an object. Then it could do what ever it needed. This would also give the possibility of doing floating panels and other types of extension as well.
--Ted