Wikipedia · einfach zusammengefasst · Stand
Oz (Programmiersprache)
Oz ist eine multiparadigmatische Programmiersprache, die mitunter deklarative, objektorientierte, parallele Programmierung sowie Constraintprogrammierung …
Inhalt4 Abschnitte
Überblick über Oz
Oz ist eine multiparadigmatische Programmiersprache aus dem Jahr 1991. Sie verbindet logische, funktionale, imperative, objektorientierte, constraint-basierte, verteilte und nebenläufige Programmierung. Dadurch können unterschiedliche Programmieransätze innerhalb einer Sprache eingesetzt werden: deklarative Programmierung beschreibt vor allem das gewünschte Ergebnis, während imperative Programmierung Arbeitsschritte vorgibt; Constraintprogrammierung arbeitet mit Bedingungen, die Lösungen erfüllen müssen.
Oz ist dynamisch typisiert, das heißt, die Typen von Werten werden zur Laufzeit behandelt. Die Sprache wurde von Gert Smolka entworfen; wichtige Einflüsse waren Erlang, Lisp und Prolog. Als wichtige Implementierung wird das Mozart Programming System genannt. Die aktuelle Version ist 2.0.1 vom 5. September 2018. Oz beeinflusste Alice.
Mozart als Oz-Implementierung
Mozart (The Mozart Programming System) ist vermutlich die einzige Implementierung von Oz. Die Entwicklung begann Anfang der 1990er Jahre als DFKI Oz durch den Informatikprofessor Gert Smolka und seine Forschungsgruppe an der Universität des Saarlandes.
1999 übernahm das Mozart Consortium das Projekt. Es bestand aus der Universität des Saarlandes, dem Swedish Institute of Computer Science (SICS) und der belgischen Katholischen Universität Löwen. Seit 2005 liegt die Verantwortung beim Mozart Board, das sich aus verschiedenen internationalen Forschungseinrichtungen zusammensetzt.
Nutzung, Lizenz und Erweiterungen
Mozart läuft unter GNU/Linux, Mac OS X und Microsoft Windows bis Vista. Debian, Ubuntu und Gentoo stellen Mozart teilweise direkt über ihre offiziellen Paketquellen bereit.
Mozart ist freie Software und steht unter der Mozart License, die der X11-Lizenz ähnelt. Die Mozart Global User Library (MOGUL) ist ein Repository für von der Gemeinschaft hochgeladene Mozart-Pakete. Einige wichtige Pakete fehlen dort jedoch, etwa Strasheela, ein constraint-basiertes Musikkomponiersystem.
Entwicklungsunterstützung
Das Oz Programming Interface (OPI) soll die Arbeit mit dem Mozart-Entwicklungssystem erleichtern. Es besteht im Wesentlichen aus einem Mode für GNU Emacs und XEmacs. Dieser integriert den Mozart-Compiler und die Mozart-Engine in den Editor. Dadurch lassen sich Quelltext oder einzelne Teile schnell kompilieren und bei Fehlern untersuchen.