Lingo (Programmiersprache)
Lingo ist die Programmiersprache der Authoringsoftware Macromedia Director, jetzt Adobe Director.
Lingo war in früheren Versionen von Director eine Interpretersprache. Aus Performancegründen wird Lingo mittlerweile vor der Ausführung kompiliert. Wegen der Vielzahl der integrierten Medien und der damit verbundenen Eigenschaften und Funktionen kennt Lingo mehrere hundert Schlüsselwörter.
Es gibt (Stand: Mai 2005) drei Varianten von Lingo. Die klassische (und älteste) Lingovariante war sehr stark an die natürliche englische Sprache angelehnt. Statements sahen z. B. so aus:
put "abc" into myVariable
Dieser Ausdruck würde in den meisten anderen Programmiersprachen etwa so formuliert:
myVariable = "abc"
Die klassische Schreibweise führte mitunter zu sehr langen Formulierungen. Außerdem gab es auch verschiedene Möglichkeiten der Schreibweise, etwa
set myVariable to "abc" myVariable="abc" put "abc" into myVariable
Seit Director 7 wird zusätzlich die sogenannte Dot-Syntax unterstützt, die ähnlich den objektorientierten Sprachen arbeitet. Wie beispielsweise hier dargestellt
member("textausgabe").text = "abc" sprite(1).color = myColor
Bis auf wenige Ausnahmen kann jede Befehlsfolge sowohl in klassischer als auch in Dot-Syntax geschrieben werden. Die beiden Dialekte können in einem Script gemischt werden, obwohl davon offiziell abgeraten wird.
Seit Director MX2004 wird auch JavaScript (ECMAScript) als Programmiersprache unterstützt. JavaScript-Befehle können jedoch nicht mit der klassischen oder Dot-Syntax in einem Script gemischt werden. Wohl aber in demselben Programm. Durch JavaScript lassen sich einige Befehlsfolgen eleganter schreiben. Es sind auch einige neue Funktionen durch JavaScript hinzugekommen. JavaScript wurde auch deshalb als Sprache implementiert, um Programmierern, die andere Sprachen kennen, den Einstieg in Director zu erleichtern.
Wichtig ist noch an dieser Stelle zu erwähnen, dass Lingo zwar objektorientierte Ansätze besitzt, aber keineswegs als objektorientierte Sprache gilt. Dazu wäre es notwendig, die noch in den Kinderschuhen steckenden Ansätze weiter zu formen und innerhalb der gesamten Sprache präsent zu machen.