![]() |
EE 192D / CS 193L Scripting Embedded Systems with Lua |
![]() |
This course will discuss the tradeoffs in the design of an embedded system language and how one can adapt languages to embedded systems. The course will review several popular options today (Forth, Java ME, PyMite, etc.) and focus on Lua, a popular language used in systems ranging from Adobe Lightroom to World of Warcraft. Course assignments will involve using Lua to program the BeagleBoard-xM, a low-cost, ARM-based embedded platform.
Rules for room 36.
1 | Introduction |
2 | Why Scripting? Why Scripting for embedded systems? |
3 | An overview of Lua |
4 | Functional facilities |
5 | Tables and data structures |
6 | Tables and language constructs: environments and modules |
7 | OO programming in Lua |
8 | Memory management and weak tables |
9 | Event-driven programming and coroutines |
10 | The Lua-C API |
11 | User-defined types in C |
12 | Some real use scenarios |
13 | An overview of the implementation of Lua |
14 | eLua: a distribution of Lua focused on embedded systems |
15 | Scripting languages x dynamic languages |
16 | Embedding x extending |
17 | Tradeoffs in language design |
18 | Other languages for embedding |
19 | Languages for "highly restricted systems" (sensors) |