This week-end, I am attending the Kross/KDEBindings meeting at the KDAB office in Berlin, organized by Thomas Moenicke (working on PHP bindings), with Mauro Iazzi (working on LUA bindings), Sebastian Sauer (main author of Kross), Arno Rehn (working on Smoke and on Mono bindings), Richard Dale (working on Ruby and Mono bindings), Simon Edwards (working on PyKDE bindings), Aleix Pol (working on Kross for KDevelop), and me (as Kross tester, and Kross/Ruby author).
Sorry, no picture yet, since I forgot to take my card reader, but they will come later This morning we discussed how to improve collaboration between Kross and Bindings, and also did some coding while discussing.
So I had an other look at how to create dockers in Ruby (or any other language with Qt bindings and a kross binding, which is basically only Ruby and Python at the moment). And I end up mostly tracking a bug in Krita, but in the end I have something mostly working:
It’s not visible in the screenshot, but the flipbook docker (which is a docker that allows to add images to a list, and then easily switch between images that you want to edit) was written in Ruby (you can see the actual code here). There are still some rough edge, in fact two crashes, one very bad involving the garbage collector, and an other not nice one at exit.
One of the most exciting things that have happen during this coding session is that at some point Sebastian asked Richard, how long it would take to add a new binding in Smoke, for instance, for QtScript. 20 minutes later, it was done and commited in subversion !
This afternoon, we talk a little bit about what exactly we are doing, and what are the difficulties/challenges we have. So Sebastian started with a presentation on Kross (on how easy it is to use it inside your application), then Richard explained us how Smoke is working for dynamic languages, and Arno told us what he did to extend Smoke for static languages. Then Simon talked a little bit about Python and SIP, then it was the turn of Mauro for the LUA bindings. Now, Aleix is going to talk about KDevelop and use of Kross in KDevelop.
Then we are going back to coding and waiting for the dinner.