PlusPedia wird derzeit technisch modernisiert. Aktuell laufen Wartungsarbeiten. Für etwaige Unannehmlichkeiten bitten wir um Entschuldigung; es sind aber alle Artikel zugänglich und Sie können PlusPedia genauso nutzen wie immer.
Neue User bitte dringend diese Hinweise lesen:
Anmeldung - E-Mail-Adresse Neue Benutzer benötigen ab sofort eine gültige Email-Adresse. Wenn keine Email ankommt, meldet Euch bitte unter NewU25@PlusPedia.de.
Hinweis zur Passwortsicherheit:
Bitte nutzen Sie Ihr PlusPedia-Passwort nur bei PlusPedia.
Wenn Sie Ihr PlusPedia-Passwort andernorts nutzen, ändern Sie es bitte DORT bis unsere Modernisierung abgeschlossen ist.
Überall wo es sensibel, sollte man generell immer unterschiedliche Passworte verwenden! Das gilt hier und im gesamten Internet.
Aus Gründen der Sicherheit (PlusPedia hatte bis 24.07.2025 kein SSL | https://)
Bei PlusPedia sind Sie sicher: – Wir verarbeiten keine personenbezogenen Daten, erlauben umfassend anonyme Mitarbeit und erfüllen die Datenschutz-Grundverordnung (DSGVO) vollumfänglich. Es haftet der Vorsitzende des Trägervereins.
PlusPedia blüht wieder auf als freundliches deutsches Lexikon.
Wir haben auf die neue Version 1.43.3 aktualisiert.
Wir haben SSL aktiviert.
Hier geht es zu den aktuellen Aktuelle Ereignissen
Operno
Operno ist ein objektorientierter und dynamischer Token-Interpreter, welcher von Josef Sniatecki entwickelt wurde. Mit dynamisch ist gemeint, dass viele Aufgaben des Interpreters zur Laufzeit erledigt werden. Die folgenden detaillierten Beschreibungen beziehen sich auf die aktuelle Version 5.00 von Operno, die am 18.05.2009 erschienen ist.
Orientierung
Der Operno-Interpreter legt viel Wert auf die Dynamik und die Lesbarkeit eines Skripts in Operno. Beispielsweise werden Funktionen zur Laufzeit definiert und können später gelöscht und wieder neu definiert werden. Zur Lesbarkeit des Skripts tragen eine leichte Syntax und Synonyme für bestimmte Zeichen bei.
"Hello world!"-Programm
Hier eine Implementierung eines "Hello world!"-Programms in Operno:
out "Hello world!"
Syntax
Die Syntax von Operno ist flexibel und einfach zu lesen. Oftmals können verschiedene Algorithmen in mehreren Formen ausgedrückt werden. Dabei sind die verschiedenen Schreibweisen nach der Verarbeitung des Parsers unterschiedlich. D.h. es werden keine Optimierungen von Operno vorgenommen.
Namensgebung
Die Namensgebung in Operno hat starke Unterschiede zu vielen anderen Skriptsprachen. Namen können Umlaute enthalten und oftmals bietet sich auch die Möglichkeit an, Namen mit Leerzeichen zu definieren.
Beispiele:
mein name = "Timmy"
höhe = 100
Zeilenverbindungsmöglichkeiten
Ein großer Vorteil der Syntax von Operno ist, dass sich Zeilen elegant durch bestimmte Operatoren am Ende einer Zeile verbinden lassen. Manuell lassen sich auch Zeilen durch "#" verbinden.
Beispiel:
x = 5 +
2
out x 'Gibt 7 aus.
y = 100 #
+ 3
out y 'Gibt 103 aus.
Definitionen
Objekte lassen sich meist ohne zusätzliche Schlüsselwörter (engl. keywords) definieren. Beispielsweise können Variablen durch die erste Zuweisung eines Wertes definiert werden. Besonders die Definition von Funktionen unterscheidet sich zu vielen anderen Skriptsprachen:
sum(a, b) a + b
say hello(name){
out "Hello, " + name + "!"
out "This was an example."
}
Objekte
Operno ist sehr objektorientiert. Dadurch sind Standardtypen, wie Integer, Float, String usw. als Objekte angelegt. Somit können sich Ruby ähnliche Ausdrücke ergeben:
out "abc":upper case 'Gibt "ABC" aus
out 123:negative 'Gibt -123 aus
Gleichzeitig orientiert sich Operno an ein ähnliches System, wie Dateien verarbeitet werden: Ordner-Objekte können mehrere Unterobjekte (auch Kindobjekte (engl. Child-objects)) tragen.
Beispiel:
myself{
name = "John"
age = 25
}
out myself\name 'Gibt "John" aus.
out myself\age 'Gibt 25 aus.
Da Operno als dynamisch gilt, können Objekte jeder Zeit gelöscht und wieder neu definiert werden. Die neue Definition ist nicht von der Vorherigen abhängig.
Beispiel:
x = 5 'Als Integer definiert.
del x 'Die Variable existiert nicht mehr.
x = "Hello world!" 'Nun als String definiert.
Vorteile und Nachteile
Vorteile
- Operno ist gut lesbar
- Objekte lassen sich zur Laufzeit völlig modifizieren
- Man erreicht schnell Ziele auf der Kalkulations-Basis
- Operno lässt sich als DLL in anderen Projekten einbinden
Nachteile
- Durch die Dynamik fehlt es an Geschwindigkeit
- Funktionen aus anderen Sprachen lassen sich nicht importieren
Quellen
- Dieser Beitrag wurde vom Entwickler des Operno-Interpreters verfasst
Weblinks
- [1] Homepage des Entwickler