Programmiersprachen - Abstraktionsniveau
Scriptsprachen
Definition von Scriptsprachen (aus ECMA_Script):
Eine Scriptsprache ist eine Programmiersprache, die zum Manipulieren, Anpassen und Automatisieren von
Vorrichtungen eines existierenden Systems dient (wobei das System in einer Systemprogrammiersprache erstellt wurde).
Scriptsprachen dienen nach http://dev.scriptics.com/advocacy/whyscript.html
- zum schnellen Entwickeln
- Integration von verschiedenen Anwendungen
Eigenschaften von Scriptsprachen
- schwach getypt
Man verspricht sich mehr Flexibelilität. Andererseits sind nicht umsonst
die Typen erfunden worden - Sicherheit geht verloren, Mit dem Typsystem
wird vom Compiler Logik und Folgerichtigkeit geprüft, womit Fehler schon
zur Übersetzungszeit entdeckt werden können. Die Prüfung ist aber auch
lästig ...
- hohes Abstraktionsniveau
- interpretiert
Bei interpretierten Sprachen kann man sehr konfortabel Änderungen
hineinpfuschen, ohne jedesmal neu kompilieren zu müssen.
Ein wirklich wichtiger Vorteil sind "eval"-Befehle, um Zeichenketten
als Anweisungen in der Sprache abarbeiten zu können. Dies erspart
dem Programmierer den Bau eines eigenen Parsers.
- mit Systemprogrammiersprachen erweiterbar, damit gibt es zwei Abstraktionsebenen
Wann verwendet man Scriptsprache oder Systemprogrammiersprache
Da Scriptsprachen auf einem höherern Abstraktionsniveau arbeiten, ist die
Programmentwicklung um ein vielfaches schneller.
Siehe: Untersuchung von John Ouserhout
Ohne Scripting macht ein Framework wie CORBA keinen Spaß.
Ein Betriebssystem-Kommandointerpreter wie z.B. bash(1) gehört auch zu den Scriptsprachen. Aus diesem Grunde sind Scriptsprachen schon sehr lange in der UNIX-Gemeinde beliebt.
Häufige Mechanismen von Scriptsprachen
- reguläre Ausdrücke zum Erkennen und Arbeiten mit Zeichenketten
- Listen/Sequenzen/Vektoren
- Abbildungen/Mappings
Bekannte Scriptsprachen
Weitere:
- GUILE ist
eine als Scheme (LISP) basierende erweiterbare Scriptsprache
Spezielle Scriptsprachen
Vergleiche
Interfacegenerator
Wie oben ausgeführt, ist der Witz, dss man in Systemprogrammiersprachen ormulierte effiziente Komponenten mit einer Scriptsprache zur autamatisierung einbetten kann.
- SWIG
- parst C/C++-Interfaces und generiert den Aufrufcode - wahlweise für mehrere Scriptsprachen
Informatik- und Netzwerkverein Ravensburg e.V
Rudolf Weber