# Oz

> programming language

**Wikidata**: [Q1208217](https://www.wikidata.org/wiki/Q1208217)  
**Wikipedia**: [English](https://en.wikipedia.org/wiki/Oz_(programming_language))  
**Source**: https://4ort.xyz/entity/oz

## Summary
Oz is a multi-paradigm programming language designed for constraint programming and concurrent computation. It was created by Gert Smolka and first appeared in 1991; it is distributed under the MIT License and its reference implementation is available from the Mozart/Oz project.

## Key Facts
- Oz is a programming language first introduced in 1991.
- Oz was designed by Gert Smolka.
- Oz is an instance of a constraint programming language and a multi-paradigm programming language.
- Oz supports multiple programming paradigms, including functional, imperative, object-oriented, prototype-based, concurrent computing, and constraint programming.
- Oz uses dynamic typing as its typing discipline.
- Oz is distributed under the MIT License.
- The Mozart/Oz reference implementation (Mozart2) has a stable release version 2.0.1 dated 2018-09-05.
- Official project website: http://www.mozart-oz.org/
- Source code / project pages: http://mozart.github.io/ and Open Hub identifier "mozart-oz".
- Common alternate names and aliases include "Oz (programming language)", "Lenguaje de programación Oz", "Langage Oz", "Оз", and "오즈 프로그래밍 언어".

## FAQs
### Q: What is Oz primarily used for?
A: Oz is used for constraint programming and general-purpose development across several paradigms, including concurrent and functional programming. Its design supports writing programs that combine constraint solving with other styles.

### Q: Who created Oz and when was it created?
A: Oz was designed by Gert Smolka and was first introduced in 1991.

### Q: Is Oz open source and where can I find its implementation?
A: Oz is distributed under the MIT License. The Mozart/Oz project provides implementations and releases; a stable release (Mozart2 v2.0.1) was published on 2018-09-05 and project resources are available at the official website and repository links.

### Q: What typing discipline does Oz use?
A: Oz uses dynamic typing.

## Why It Matters
Oz matters because it unifies several programming paradigms in a single language while explicitly supporting constraint programming. This makes Oz suitable for applications that need to combine declarative constraint solving with procedural, object-oriented, or concurrent code. By providing primitives for concurrency and constraint reasoning alongside functional and imperative features, Oz enables programmers and researchers to experiment with hybrid approaches that are harder to express cleanly in single-paradigm languages. Its association with the Mozart project gives it a maintained reference implementation and tooling, and its permissive MIT License lowers barriers for adoption and experimentation. For academics and practitioners working on constraint solvers, concurrent systems, or language design, Oz serves as a concrete platform that demonstrates how multiple paradigms and advanced features can interoperate in one language.

## Notable For
- Combining constraint programming capabilities with multiple other paradigms (functional, imperative, object-oriented, concurrent).
- Being a multi-paradigm language explicitly designed to support constraint programming.
- Having a maintained reference implementation in the Mozart project, with Mozart2 version 2.0.1 released on 2018-09-05.
- Using a permissive MIT License for distribution.
- Designed by Gert Smolka and originating in 1991.

## Body

### Overview
- Oz is a programming language that targets constraint programming and multi-paradigm programming.
- The language was designed by Gert Smolka.
- Oz was introduced in 1991.

### Design and Paradigms
- Oz is multi-paradigm. It supports:
  - Constraint programming
  - Functional programming
  - Imperative programming
  - Object-oriented programming
  - Prototype-based programming
  - Concurrent computing
- The language combines these paradigms to allow mixed-style programs.

### Typing Discipline
- Oz employs dynamic typing.

### Implementations and Versioning
- The Mozart/Oz project provides the principal implementation resources for Oz.
- Mozart2 stable release version 2.0.1 is recorded with a publication date of 2018-09-05.
- Open Hub project identifier for the Mozart implementation is "mozart-oz".
- Source code and project pages are available at http://mozart.github.io/ and the official site http://www.mozart-oz.org/.

### Licensing and Copyright
- Oz is distributed under the MIT License.
- The recorded copyright status for Oz is "copyrighted."

### Influences
- Oz lists Lisp and Prolog among languages that influenced its design.

### Identifiers, Aliases, and Links
- Aliases include: Oz (programming language); Lenguaje de programación Oz; Langage Oz; Оз; 오즈 프로그래밍 언어.
- Freebase identifier: /m/01m1y8.
- Sitelink count across Wikipedias: 19.
- Wikipedia article title: "Oz (programming language)".
- Wikipedia language editions present include: cs, de, en, es, fa, fr, gl, ja, ko, nl.

## Schema Markup
```json
{
  "@context": "https://schema.org",
  "@type": "Thing",
  "name": "Oz (programming language)",
  "description": "Oz is a multi-paradigm programming language designed by Gert Smolka in 1991, supporting constraint programming and dynamic typing.",
  "url": "http://www.mozart-oz.org/",
  "sameAs": [
    "https://en.wikipedia.org/wiki/Oz_(programming_language)",
    "http://mozart.github.io/"
  ],
  "additionalType": "programming language"
}

## References

1. [The mozart-oz Open Source Project on Open Hub: Languages Page. Open Hub](https://www.openhub.net/p/mozart-oz/analyses/latest/languages_summary)
2. [Mozart2 version 2.0.1 Latest. 2018](https://github.com/mozart/mozart2/releases)
3. Freebase Data Dumps. 2013