[Netsukuku] Netsukuku port to Vala. Work in progress, help wanted.

I have encountered many problems [and did not succeed yet] in making Python Stackless work correctly in ARM or MIPS architectures. Even admitting that it is possible, the python interpreter itself is quite memory consuming. This makes many/most embedded devices out of luck for netsukuku. The main points in favor of using Stackless instead of C, at least for me, have been: - fast prototyping - co-routine support (that is, tasklets in stackless terminology) Recently I have made some research on alternatives. The first requirement of course was support of co-routines. The most portable framework for this support is GNU Pth. [0] The second requirement was a good-enough high-level language that could allow the developer to focus on functional details. And possibly have a near one-to-one mapping of the features of python interpreter that we mostly used in our program. I think Vala does. [1] And it has many good points over other languages. It has modern features while producing old style C API/ABI compatible machine code. Long story short, I started to organize the basis for a port of current python implementation of netsukuku to Vala. The first task was producing a binding (vapi file) for the Pth library. I made one that does the job for what we need - could be improved, though. Right now there is a working implementation of tasklets ("microfunc" in our python code) scheduling, switching, inter-communication (Channels in our python code) and events (for free in Vala as signals). I promise to post updates soon when I can make some tests on my little mipsel-based router. [2] Soooo, to get to the point. This work is not going to be quick and simple. Any help with the development is welcome, especially right now or soon. I could organize the work and assign little tasks to anyone that has some expertise on vala. I am a vala newbie myself. Knowledge of python is not a requirement, because reading the old code is quite straightforward and one can ask when in doubt. Knowledge of current workings of netsukuku is not a requirement either. Sure, it could help. But I would assign very specific tasks and coordinate the rest, so that also "new entry" developers can help a lot. Have a look at the initial code [3] and please get involved! --Luca [0] http://www.gnu.org/software/pth/ [1] http://live.gnome.org/Vala [2] http://www.omnima.co.uk/store/catalog/Embedded-controller-p-16140.html and a review here: http://www.kelvinsthunderstorm.com/omnima-embedded-controller-and-openwrt/ [3] http://dev.hinezumi.org/browser/netsukuku/sandbox/lukisi/branches/multipleip... _______________________________________________ Netsukuku mailing list Netsukuku@lists.dyne.org http://lists.dyne.org/mailman/listinfo/netsukuku ----- End forwarded message ----- -- Eugen* Leitl <a href="http://leitl.org">leitl</a> http://leitl.org ______________________________________________________________ ICBM: 48.07100, 11.36820 http://www.ativel.com http://postbiota.org 8B29F6BE: 099D 78BA 2FD3 B014 B08A 7779 75B0 2443 8B29 F6BE
participants (1)
-
Luca Dionisi