Kleine embedded Scriptsprache gesucht
-
Hoi,
ich suche eine kleine Scriptsprache, die keine Abhängigkeiten zu anderen Bibliotheken als der C/C++ Standardbibliothek mitbringt (Header-only Fremdbibliotheken wie zb Teilen von Boost wären noch okay).
Das Interface zu nativem Code sollte einen zumindestens nicht in den Wahnsinn treiben.
Ein möglichst kleiner Interpreter ist ein großer Pluspunkt, Dinge wie ein JIT-Compiler oder besonders gute Performance sind optional.
Zielplattformen wären x86/x86_64 und Windows/Linux/OsX.Ich kenne da einige Sprachen, als erstes hat man da wohl Lua im Sinn, aber ich bin in der Hoffnung dass jemand von euch da ein Juwel kennt, mich kotzt nämlich das Arbeiten mit Lua und die Syntax fürchterlich an.
Mein aktueller Favorit ist Squirrel.Danke und Grüße,
Ethon
-
das juwel, das ich vorschlagen wuerde
ist sehr klein, laeuft quasi im eigenen 'virtuellem' speicherbereich den man zum start festlegt (was gerade fuer embedded von vorteil ist, z.b. gegenueber lua), syntax ist eher c artig als basic (wie bei lua), und da es auf embedded zielt, laeuft es mit puren c libs und c compiler.
-
mich kotzt nämlich das Arbeiten mit Lua und die Syntax fürchterlich an
Und wo sind die Probleme? Ich finde das Konzept sehr konsistent.
PAWN werde ich mir mal ansehen.
-
Kurze Anmerkung, bevor es Missverständnisse gibt: Mit embedded Scripting meine ich dass die Scripts im Kontext einer Software laufen und Funktionalität dieser liefern. Hat nichts mit embedded Systems zu tun. Nur ist der Einsatzzweck etwas speziell, deswegen möchte ich dynamische Abhängigkeiten bis auf das nötigste komplett vermeiden und statisches Linken ist nicht möglich. Deswegen möchte ich eine Sprache haben, deren Interpreter ich direkt in die Software hineinkompiliere.
das juwel, das ich vorschlagen wuerde
ist sehr klein, laeuft quasi im eigenen 'virtuellem' speicherbereich den man zum start festlegt (was gerade fuer embedded von vorteil ist, z.b. gegenueber lua), syntax ist eher c artig als basic (wie bei lua), und da es auf embedded zielt, laeuft es mit puren c libs und c compiler.
Nice, werde es mir mal ansehen, danke.
knivil schrieb:
mich kotzt nämlich das Arbeiten mit Lua und die Syntax fürchterlich an
Und wo sind die Probleme? Ich finde das Konzept sehr konsistent.
PAWN werde ich mir mal ansehen.
Mir gefällt einfach die Syntax und die Programmierparadigmen von Lua nicht. Wohl eine persönliche Sache.
-
Ethon schrieb:
ich suche eine kleine Scriptsprache, die keine Abhängigkeiten zu anderen Bibliotheken als der C/C++ Standardbibliothek mitbringt (Header-only Fremdbibliotheken wie zb Teilen von Boost wären noch okay).
Das Interface zu nativem Code sollte einen zumindestens nicht in den Wahnsinn treiben.
Ein möglichst kleiner Interpreter ist ein großer Pluspunkt, Dinge wie ein JIT-Compiler oder besonders gute Performance sind optional.
Zielplattformen wären x86/x86_64 und Windows/Linux/OsX.AngelScript erfüllt alle Anforderungen, inklusive JIT-Compiler. Das benutze ich für ein älteres Projekt, und es funktioniert gut. Exception-Handling geht nicht automatisch, aber sonst ist die Einbindung kein großer Umstand.
Für das nächste Projekt werde ich trotzdem kein AngelScript mehr verwenden, sondern wahrscheinlich C# als Skriptsprache mißbrauchen, weil ich gerne ein Source-Code-Interface und mehr High-level-Sprachfeatures hätte. Aber wenn man das nicht braucht und nur mehr oder weniger prozedurale Skripte vorgesehen sind, ist AngelScript okay.
-
Was ist mit Python?
Ist in C programmiert und kann direkt mit
DLL´s interagieren,welche in C/C++ geschrieben sind.
Einen JIT-Compiler gibt es auch, nämlich Pypy.0x0ERROR
-
Wenns kein Lua sein soll, wie wärs mit Scheme? In Form von Guile gibt es da sogar eine Variante, die explizit für das Einbinden in Anwendungen gedacht ist.
-
Ich habe in meinem letzten Projekt JavaScript verwendet (Googles V8), einfach weil es dafür hunderte Bücher gibt und das API nicht irgendeine C-Scheisse ist.
-
Wenn Scheme, dann ChickenScheme. Interfacing zu C sehr leicht (in beide Richtungen). Performance ist gut. Gleiches kann ich nicht von Guile behaupten.