lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


During the last Lua Workshop, we presented what we do at Sierra Wireless: we provide a Lua framework to develop machine-to-machine communication systems on embeded devices.

The slides are available on the workshop's website.

One piece of this framework attracted particular interest: a collaborative scheduler, which allows easy coroutine-based multitasking (you might have seen references to it e.g. in http://lua-users.org/lists/lua-l/2011-09/msg00240.htmlhttp://lua-users.org/lists/lua-l/2012-01/msg00293.html). We've promised to open-source its Linux port, and so do we: a preview has been committed to Github, under MIT public license.

https://github.com/SierraWireless/luasched

The scheduler is fully integrated with (an internally modified version of) LuaSocket. It handles timers, IPC, etc. It also comes with a couple of goodies, including an interactive Lua shell over telnet with auto-completion.

The version released is based on POSIX's select(), but it can and has been ported to callback-based network backends: this allows both node.js-style non-blocking I/O in the back-end, and sane, readable code in the front-end.

For more details, check the readme on github.