Mit der Sprache Lua können Sie einige Funktionen programmieren. Tatsächlich ist Lua eine Sprache mit mehreren Paradigmen. Wikipedia behauptet, dass es sich um eine "scripting, imperative, funktionale, objektorientierte, prototypbasierte" Sprache handelt. Die Sprache erzwingt kein einziges Paradigma, sondern ist flexibel genug, um es dem Programmierer zu ermöglichen, jedes Paradigma zu implementieren, das auf die Situation anwendbar ist. Es wurde von Schema beeinflusst.
Zu den Merkmalen von Lua gehören erstklassige Funktionen , lexikalisches Scoping und Verschlüsse sowie Coroutinen , die für die funktionale Programmierung nützlich sind. Sie können sehen, wie diese Funktionen im Lua-Benutzer-Wiki verwendet werden, das eine Seite enthält, die der funktionalen Programmierung gewidmet ist . Ich bin auch auf dieses Google Code-Projekt gestoßen , habe es aber nicht verwendet (es wird angeblich von Haskell beeinflusst, einer anderen Sprache, die Sie erwähnt haben).
eLua ist eine Implementierung, die für eine Reihe von Entwicklungsplatinen für die Architekturen ARM7TMDI, Cortex-M3, ARM966E-S und AVR32 konfiguriert ist. Sie ist Open Source, sodass Sie sie für Ihre eigene Plattform konfigurieren können. Lua ist in ANSI C implementiert und die gesamte Quelle wiegt weniger als 200 kB. Daher sollten Sie in der Lage sein, es für die meisten Plattformen mit einem C-Compiler zu erstellen. Mindestens 128 KB Flash und 32 KB RAM werden empfohlen. Ich arbeite im Moment an einem PIC32-Port dafür (der sich noch in der Phase "PIC32-Karte holen" befindet).
Das Tolle an Lua ist, dass es als Klebesprache konzipiert wurde, so dass es sehr einfach ist, C-Erweiterungen für die Dinge zu schreiben, die schnell sein müssen (wie Interrupts usw.), und die dynamischen, interpretierten Funktionen der Sprache zu verwenden, um schnell zu arbeiten Entwicklung in der Programmlogik.
Lua ist keine rein funktionale Sprache, aber Sie können eine Menge funktionale Programme darin ausführen , es ist schnell und klein (im Vergleich zu anderen Skriptsprachen ) und Sie müssen Ihr Gerät nicht neu flashen, um ein Programm auszuprobieren. Es gibt sogar einen interaktiven Dolmetscher!