Planned maintenance
A system upgrade is planned for 10/12-2024, at 12:00-13:00. During this time DiVA will be unavailable.
Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
A history of the Oz multiparadigm language
Université catholique de Louvain, Belgium.
RISE Research Institutes of Sweden, Digital Systems, Data Science.ORCID iD: 0000-0002-6718-0144
KTH Royal Institute of Technology, Sweden.
Saarland University, Germany.
2020 (English)In: Proceedings of the ACM on Programming Languages, E-ISSN 2475-1421, Vol. 4, no HOPL, article id 83Article in journal (Refereed) Published
Abstract [en]

Oz is a programming language designed to support multiple programming paradigms in a clean factored way that is easy to program despite its broad coverage. It started in 1991 as a collaborative effort by the DFKI (Germany) and SICS (Sweden) and led to an influential system, Mozart, that was released in 1999 and widely used in the 2000s for practical applications and education. We give the history of Oz as it developed from its origins in logic programming, starting with Prolog, followed by concurrent logic programming and constraint logic programming, and leading to its two direct precursors, the concurrent constraint model and the Andorra Kernel Language (AKL). We give the lessons learned from the Oz effort including successes and failures and we explain the principles underlying the Oz design. Oz is defined through a kernel language, which is a formal model similar to a foundational calculus, but that is designed to be directly useful to the programmer. The kernel language is organized in a layered structure, which makes it straightforward to write programs that use different paradigms in different parts. Oz is a key enabler for the book Concepts, Techniques, and Models of Computer Programming (MIT Press, 2004). Based on the book and the implementation, Oz has been used successfully in university-level programming courses starting from 2001 to the present day.

Place, publisher, year, edition, pages
Association for Computing Machinery , 2020. Vol. 4, no HOPL, article id 83
Keywords [en]
Computer programming, Concurrent programming, Dataflow, Distributed programming, Functional programming, Lazy evaluation, Logic programming, Multiparadigm programming, Programming education, Calculations, Concurrent constraint, Concurrent logic programming, Constraint Logic Programming, Foundational calculus, Layered Structures, Multi-paradigm languages, Programming course, Programming paradigms, PROLOG (programming language)
National Category
Natural Sciences
Identifiers
URN: urn:nbn:se:ri:diva-48928DOI: 10.1145/3386333Scopus ID: 2-s2.0-85091278047OAI: oai:DiVA.org:ri-48928DiVA, id: diva2:1475972
Available from: 2020-10-13 Created: 2020-10-13 Last updated: 2023-08-25Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

Publisher's full textScopus

Authority records

Haridi, Seif

Search in DiVA

By author/editor
Haridi, Seif
By organisation
Data Science
In the same journal
Proceedings of the ACM on Programming Languages
Natural Sciences

Search outside of DiVA

GoogleGoogle Scholar

doi
urn-nbn

Altmetric score

doi
urn-nbn
Total: 23 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf