Category:Oz
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 200 pages are in this category, out of 277 total.
(previous page) (next page)A
- A+B
- Abstract type
- Accumulator factory
- Ackermann function
- Active object
- Add a variable to a class instance at runtime
- Algebraic data types
- Align columns
- Amb
- Anagrams
- Animate a pendulum
- Animation
- Apply a callback to an array
- Arbitrary-precision integers (included)
- Arithmetic evaluation
- Arithmetic/Integer
- Array concatenation
- Arrays
- Assertions
- Associative array/Creation
- Associative array/Iteration
- Atomic updates
- Averages/Arithmetic mean
- Averages/Median
- Averages/Mode
- Averages/Pythagorean means
- Averages/Root mean square
- Averages/Simple moving average
C
- Call a foreign-language function
- Character codes
- Check that file exists
- Classes
- Closest-pair problem
- Collections
- Combinations
- Command-line arguments
- Comments
- Compile-time calculation
- Compound data type
- Concurrent computing
- Conditional structures
- Conway's Game of Life
- Create a file
- Create a two-dimensional array at runtime
- Create an HTML table
D
- Date format
- Define a primitive data type
- Delegates
- Delete a file
- Detect division by zero
- Determine if a string is numeric
- Determine if only one instance is running
- Dining philosophers
- Distributed programming
- Dot product
- Doubly-linked list/Element definition
- Doubly-linked list/Element insertion
- Doubly-linked list/Traversal
E
F
- Factorial
- Factors of an integer
- Fibonacci sequence
- File input/output
- File modification time
- File size
- Filter
- Find common directory path
- Find limit of recursion
- Find the missing permutation
- First-class functions
- First-class functions/Use numbers analogously
- Flatten a list
- Flow-control structures
- Fork
- Formatted numeric output
- Function composition
- Function definition
G
H
I
K
L
- Leap year
- List comprehensions
- Literals/Integer
- Literals/String
- Logical operations
- Longest common subsequence
- Look-and-say sequence
- Loop over multiple arrays simultaneously
- Loops/Break
- Loops/Continue
- Loops/Do-while
- Loops/Downward for
- Loops/For
- Loops/For with a specified step
- Loops/Foreach
- Loops/Infinite
- Loops/N plus one half
- Loops/Nested
- Loops/While
- Lucas-Lehmer test
- Luhn test of credit card numbers
M
N
P
R
- Random number generator (included)
- Range expansion
- Range extraction
- RCRPG
- Read entire file
- Real constants and functions
- Regular expressions
- Remove duplicate elements
- Rendezvous
- Repeat a string
- Respond to an unknown method call
- Reverse a string
- Roman numerals/Encode
- Rosetta Code/Count examples
- Rosetta Code/Find unimplemented tasks
- Rosetta Code/Rank languages by popularity
- Rot-13