Category:Oz: Difference between revisions

Accommodating changes made for Mozart 2: ozmake no longer exists, the official homepage has been relocated.
m (Clarification.)
(Accommodating changes made for Mozart 2: ozmake no longer exists, the official homepage has been relocated.)
 
(2 intermediate revisions by 2 users not shown)
Line 1:
{{language|Oz
|site=httphttps://www.mozart-oz.orggithub.io/
|checking=dynamic
|gc=yes
Line 9:
|compat=structural
|parampass=reference}}Oz is a multi-[[:Category:Programming Paradigms|paradigm]] language that is designed for advanced, [[concurrent programming|concurrent]], networked, soft real-time, and reactive applications. Oz provides the salient features of [[object-oriented programming]] including state, abstract data types, objects, classes, and inheritance. It provides the salient features of [[functional programming]] including compositional syntax, first-class procedures/functions, and lexical scoping. It provides the salient features of logic programming and constraint programming including logic variables, constraints, disjunction constructs, and programmable search mechanisms. It allows users to dynamically create any number of sequential [[threads]]. The threads are dataflow threads in the sense that a thread executing an operation will suspend until all operands needed have a well-defined value.[[#Citation|[1]]]
{{language programming paradigm|Logic_Programming}}
{{language programming paradigm|functional}}
{{language programming paradigm|Object-oriented}}
 
The [[Mozart/Oz|Mozart]] Programming System is the primary implementation of Oz. It is released with an [[open source]] license by the Mozart Consortium. Mozart has been ported to different flavors of [[Unix]], FreeBSD, [[Linux]], [[Microsoft]] [[Windows]], and [[Mac OS X]].[[#Citation|[2]]]
Line 15 ⟶ 18:
All examples that start with <code>declare</code> can be used directly in the Emacs-based IDE, without a separate compilation step. Just copy the source code to the <code>Oz</code> buffer and select the menu item "Oz&rarr;Feed Buffer".
 
Some examples are functor definitions and must be compiled. IfThe compiler is invoked with a command such as: <code>makefileozc -c filename.oz</code>, isand supplied,then executeexecuted with the command, <code>ozmakeozengine filename.ozf</code>. toThis build[https://stackoverflow.com/a/29207029/371304 theStack project.Overflow Otherwiseanswer] callshows an example of the compilerboilerplate directly:to transform <code> ozcwritten -cfor the Emacs IDE to filename.oz</code>. Executethat acan compiledrun functordirectly withon <code>ozenginethe filename.ozf</code>Mozart VM.
 
==Citation==
#[httphttps://wwwmozart.github.io/mozart-oz.orgv1/documentationdoc-1.4.0/tutorial/index.html Tutorial of Oz]
#[[wp:Oz_%28programming_language%29|Wikipedia:Oz (programming language)]]
10

edits