Category:Oz: Difference between revisions
(Added links, language tempalte, removed WP template) |
(Accommodating changes made for Mozart 2: ozmake no longer exists, the official homepage has been relocated.) |
||
(9 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{language|Oz |
|||
⚫ | |||
|site=https://mozart.github.io/ |
|||
|checking=dynamic |
|||
|gc=yes |
|||
|LCT=yes |
|||
|strength=strong |
|||
|express=implicit |
|||
|safety=safe |
|||
|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 |
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]]] |
||
==How to execute the examples on Rosetta Code== |
|||
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→Feed Buffer". |
|||
Some examples are functor definitions and must be compiled. The compiler is invoked with a command such as: <code>ozc -c filename.oz</code>, and then executed with the command, <code>ozengine filename.ozf</code>. This [https://stackoverflow.com/a/29207029/371304 Stack Overflow answer] shows an example of the boilerplate to transform code written for the Emacs IDE to code that can run directly on the Mozart VM. |
|||
==Citation== |
==Citation== |
||
#[ |
#[https://mozart.github.io/mozart-v1/doc-1.4.0/tutorial/index.html Tutorial of Oz] |
||
#[[wp:Oz_%28programming_language%29|Wikipedia:Oz (programming language)]] |
#[[wp:Oz_%28programming_language%29|Wikipedia:Oz (programming language)]] |
Latest revision as of 19:06, 13 February 2019
This programming language may be used to instruct a computer to perform a task.
Official website |
---|
Garbage collected: | Yes |
---|---|
Parameter passing methods: | By reference |
Type safety: | Safe |
Type strength: | Strong |
Type compatibility: | Structural |
Type expression: | Implicit |
Type checking: | Dynamic |
See Also: |
Oz is a multi-paradigm language that is designed for advanced, 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.[1]
The 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.[2]
How to execute the examples on Rosetta Code
All examples that start with declare
can be used directly in the Emacs-based IDE, without a separate compilation step. Just copy the source code to the Oz
buffer and select the menu item "Oz→Feed Buffer".
Some examples are functor definitions and must be compiled. The compiler is invoked with a command such as: ozc -c filename.oz
, and then executed with the command, ozengine filename.ozf
. This Stack Overflow answer shows an example of the boilerplate to transform code written for the Emacs IDE to code that can run directly on the Mozart VM.
Citation
Subcategories
This category has the following 3 subcategories, out of 3 total.
@
- Oz examples needing attention (empty)
- Oz Implementations (empty)
- Oz User (9 P)
Pages in category "Oz"
The following 78 pages are in this category, out of 278 total.
(previous page) (next page)S
- Search a list
- Sequence of non-squares
- Shell one-liner
- Short-circuit evaluation
- Sierpinski carpet
- Sierpinski triangle
- Sieve of Eratosthenes
- Simple windowed application
- Simulate input/Keyboard
- Simulate input/Mouse
- Singleton
- Sleep
- Sockets
- Sort an array of composite structures
- Sort an integer array
- Sort stability
- Sort using a custom comparator
- Sorting algorithms/Bogosort
- Sorting algorithms/Bubble sort
- Sorting algorithms/Cocktail sort
- Sorting algorithms/Comb sort
- Sorting algorithms/Counting sort
- Sorting algorithms/Gnome sort
- Sorting algorithms/Heapsort
- Sorting algorithms/Insertion sort
- Sorting algorithms/Merge sort
- Sorting algorithms/Quicksort
- Sorting algorithms/Selection sort
- Sorting algorithms/Stooge sort
- Spiral matrix
- Stack
- Stack traces
- Stair-climbing puzzle
- String case
- String concatenation
- String interpolation (included)
- String length
- Substring
- Sudoku
- Sum and product of an array
- Sum of a series
- Sum of squares
- Symmetric difference
- Synchronous concurrency
- System time