January 21, 2010 Sierra Wireless Proprietary and Confidential 1
Lua on Steroids
Embedded Tools Manager at Sierra Wireless
Koneki project co-lead at Eclipse
Gaetan Morice
??? What is Lua all about
“Lua is a powerful, fast, lightweight, embeddable scripting language.”
http://www.lua.org/about.html
Extending C/C++ applications with a configuration / scripting engine.
Rationale
Extending C/C++ applications with a configuration / scripting engine.
Rationale
• Based on a virtual machine • Can load source code / read char streams • And compile it to portable bytecode
Extending C/C++ applications with a configuration / scripting engine.
Rationale
• Tiny core (150kB) • Pure ANSI C • Simple C API
Extending C/C++ applications with a configuration / scripting engine.
Rationale
• DSL building kit • Provides only basic features • And a powerful runtime
16th on Tiobe language index http://www.tiobe.com/index.php/content/paperinfo/tpci/index.html
19th on GitHub http://github.com/languages/Lua
Gaining momentum
??? What is Missing
IDE Support
http://www.eclipse.org/koneki/ldt/
LDT
A tool that follows Lua’s philosophy
Providing lot’s of modern features while remaining easily embeddable in larger systems.
Rationale
Lua strengths Dynamic Embeddable
are double-edged swords
that make tooling support tedious.
However
Editor VS
Dynamic Code
Debugger VS
Embedded Application
LDT Typical Use Case
Sierra Developer Studio
Sierra’s IDE for ALEOS Embedded Application Framework
??? What’s Next
LDT Roadmap Working with local interpreters
Add launch configuration
Supporting OOP
Management of require
Improvement of content-assist and scoping
LuaDoc support contribution
Eclipse • RSE http://www.eclipse.org/tm/
• DLTK http://www.eclipse.org/dltk/
Lua • JNLua http://code.google.com/p/jnlua/
• MetaLua http://metalua.luaforge.net/
• Ldoc http://github.com/stevedonovan/LDoc
Big thanks to
Lua • Main site http://lua.org
• Kepler project http://www.keplerproject.org/
LDT • At Koneki http://www.eclipse.org/koneki/
• Update site http://download.eclipse.org/koneki/updates/
• Wiki http://wiki.eclipse.org/Koneki
• Mailing List https://dev.eclipse.org/mailman/listinfo/koneki-dev
Useful links
??? Any Questions