Nasal | |
---|---|
Entwickler: | Andy Ross |
Aktuelle Version: | 1.0.1 (4. Juli 2006) |
Wichtige Implementierungen: | C |
Beeinflusst von: | C, Python, Perl, Lua |
Betriebssystem: | plattformunabhängig |
Lizenz: | LGPL (Freie Software) |
wiki.flightgear.org/Nasal_scripting_language |
Nasal (Not another scripting language!) ist eine Programmiersprache, die als kleine, schlanke eingebettete Skriptsprache für größere Anwendungen, ähnlich wie zum Beispiel Lua, entwickelt wurde. Besonderes Augenmerk lag dabei auf Einfachheit, Transparenz, Schlankheit und ausgewogener Funktionalität, ohne dabei merklich an Geschwindigkeit zu verlieren. So ist der Quellcode für den Nasal-Interpreter nur 146 Kbyte groß.
Nasal wurde entwickelt, weil bewährte Skriptsprachen wie Python oder Perl dem Autor zu groß waren und oft sogar die Größe der Programme, in die die Skriptsprache eingebettet werden sollte, übertrafen. Bereits vorhandene kleine Skriptsprachen wie Lua, Scheme oder Tcl erschienen dem Autor von Nasal zwar kompakt genug, besaßen aber für seine Zwecke keine ausreichende Funktionalität.
Das ursprüngliche Ziel bei der Entwicklung von Nasal bestand daher darin, alle bekannten Programmiermerkmale moderner Programmiersprachen wie Objekte, Funktionen, Felder und assoziative Datenfelder zur Verfügung zu stellen. Gleichzeitig sollte das bei großen plattformunabhängigen Skriptsprachen wie Python, Perl usw. zu beobachtende Aufblähen vermieden werden.
Merkmale der Sprache
- threadsicher
- bietet automatische Speicherbereinigung
- funktionale Programmierung
- gängige Syntax bekannter üblicher objektorientierter Programmiersprachen wie zum Beispiel C++ oder Java
- Vektoren, Hashes und Skalare (Nummern/Zeichenketten)
- schlanker Interpreter (sein Quellcode ist kleiner als 146 Kilobytes)
Beispiel
Ein Beispiel für die gute Lesbarkeit und die Kompaktheit von Nasal-Code, hier anhand eines Hallo-Welt-Programms:
print("Hello World!");
Verwendung
Nasal wird in der Regel als eingebettete Skriptsprache für größere Anwendungen oder Computerspiele verwendet. Eine bekannte Anwendung für Nasal ist zum Beispiel der freie Flugsimulator FlightGear.
Weblinks
- Der Nasal-Entwickler betreibt ein github repository für die Programmiersprache