lua-users home
lua-l archive

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


Sierra Wireless would like to propose two presentations to the Lua workshop.


1. Lua tooling for M2M & embedded development / Koneki Project.

Lua's flexibility makes it very versatile, but also makes it harder to provide good IDE support for it.
Koneki is an Eclipse technology project aiming at proposing advanced tooling to help M2M (machine-to-machine) developers to create their solution.
The proposed talk aims at highlighting the noteworthy features of Lua tooling in Koneki, in particular the support for LuaRocks and LuaDoc ; as well as giving the attendees an overview of a couple of design decisions which are allowing us to propose extensible tooling, in particular because most of the actual parsing code is written in (Meta)Lua.


2. Lua for M2M (machine-to-machine) communications.

We develop a software agent, running on various embedded devices, which allows to  monitor and control them through the net. A large part of the embedded code is written in Lua, which offers interesting solutions to many of our  problems. Among noteworthy technologies we consider presenting, we have:
- coroutine-based scheduling, which allows most of our code to run unmodified on Linux-based systems as well as OS-less, callback driven architectures.
- a widespread use of ltn12 to handle data streams (IPC as well as client/server communications, mostly based on Hessian).
- some modifications in the Lua bytecode format which allows to keep large parts of Lua code in flash, thus saving significant amounts of RAM.
- an application-generation wizard, which offers flexibility for unforeseen needs (by allowing to add arbitrary Lua code), and allows to provision generated applications on architectures which would normally only accept a single monolithic executable.


Discussion

We would also like to launch or join discussions about the standardization of commodity libraries and coding practices in Lua. We believe that we could have been more productive, had such standards been widely established in the Lua community. We think, for instance, that there ought to be a standard for coroutine scheduling, just as there's Luasocket as the de facto standard for networking; it also seems that serialization/RPC protocols ought to interface seamlessly through ltn12.

On a related note, Koneki is targeting M2M/embedded developers; it proposes a model of library intended to ease code analysis and reuse, deployment of cohesive sets of Lua files onto a remote target, remote launch and debug of applications, etc. We are interested into checking how much of those needs make sense beyond our M2M primary target.