Lua (portugiesisch für Mond) ist eine Skriptsprache zum Einbinden in Programme, um diese leichter weiterentwickeln und warten zu können. Eine der besonderen Eigenschaften von Lua ist die geringe Größe des kompilierten Skript-Interpreters. Lua Programme werden vor der Ausführung in Bytecode bersetzt. Obwohl man mit Lua auch eigenständige Programme schreiben kann, ist Lua vorrangig als Skriptsprache von C-Programmen konzipiert. Der Lua Interpreter kann über eine C-Bibliothek angesprochen werden, die auch ein API für die Laufzeitumgebung des Interpreters für Aufrufe vom C-Programm aus beinhaltet. Mittels des API können verschiedene Teile des Programms in C und Lua geschrieben werden, während Variablen und Funktionen in beiden Richtungen erreichbar bleiben (d.h. eine Funktion in Lua kann eine Funktion in C aufrufen und umgekehrt). Lua ist in ANSI-C implementiert und unterstützt sowohl funktionale als auch objektorientierte Programmierung. Da der Lua Interpreter extrem schnell und hochgradig portabel ist und sich leicht in C-Programme einbetten lässt, ist er gerade für Embedded Systems eine attraktive Alternative zu anderen Skript Interpretern. Obwohl er nur wenige Kilobyte umfasst, passt noch eine vollständige Garbage Collection hinein, die anfallenden Datenm ll automatisch aus dem Speicher wirft. Mit dieser Broschüre wollen wir an Hand unserer Erfahrungen die Leistungsmerkmale von Lua verdeutlichen und die Erweiterungsfähigkeit anhand einiger Beispiele demonstrieren.