Caml

Caml

Meta Language (ML) beschreibt eine Familie funktionaler Programmiersprachen mit statischer Typisierung, Polymorphie, automatischer Speicherbereinigung und im Allgemeinen strenger Auswertung. ML ist allerdings keine rein funktionale Sprache wie Haskell, sondern erlaubt an manchen Stellen auch imperative Konstrukte und Wirkungen, beispielsweise für File I/O. ML wurde 1973 von Robin Milner an der Universität Edinburgh als Teil eines Theorem-Beweis-Programms LCF (Logic of Computable Functions) entwickelt, welches automatisiert die Korrektheit von Programmen beweisen sollte. Seither hat sich ML zu einer vollständigen und eigenständigen Programmiersprache entwickelt, die insbesondere im wissenschaftlichen Umfeld verwendet wird. Die Sprache wird an vielen Universitäten als primäre Programmiersprache gelehrt.

Die ML-Familienmitglieder

Unter ca. einem Dutzend Varianten sind die bekanntesten Vertreter von ML „Standard ML“ (im folgenden SML genannt), „Lazy ML“ und „Caml“. Caml steht für „Categorical Abstract Machine + ML“ und wurde am INRIA (Institut National de Recherche Informatique et en Automatique) in Frankreich von Gérard Huet in den Jahren 1984-85 entwickelt und 1990 unter Xavier Leroy zu Objective CAML (OCaml) erweitert. OCaml vereinigt funktionale, imperative und objektorientierte Sprachkonzepte. Lazy ML ist ein Dialekt von ML, der mit dem Grundsatz der strikten Semantik bricht. Standard ML hingegen war Robin Milners Versuch 1984, die Sprachdialekte von ML zu vereinigen. Neben dem ML-Kern sind auch Ideen, wie die Funktionsdeklaration durch Muster der Programmiersprache Hope, in SML eingeflossen. Es gibt eine 1997 überarbeitete Version von SML, die in der Literatur meist „Standard ML'97“ genannt wird, um sie von der Ursprungsversion zu unterscheiden. Die Referenzimplementation von SML ist Standard ML of New Jersey (SML/NJ).

Literatur

  • Gert Smolka: Programmierung : eine Einführung in die Informatik mit Standard ML. Oldenbourg Wissenschaftsverlag, München 2008, ISBN 978-3-486-58601-5. 
  • L.C. Paulson: ML for the working programmer. University Pr., Cambridge 1991, ISBN 0-521-42225-6. 

Weblinks


Wikimedia Foundation.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Caml — (prononcé camel, signifie Categorical Abstract Machine Language) est un langage de programmation généraliste conçu pour la sécurité et la fiabilité des programmes. Il se prête à des styles de programmation fonctionnelle, impérative et orientée… …   Wikipédia en Français

  • Caml — Семантика: Объектно ориентированное Появился в: 1985 Автор(ы): INRIA Релиз: 3.11.2 (20.01.2010) …   Википедия

  • CAML — may mean:* Caml, a dialect of the ML programming language * Collaborative Application Markup Language, an XML based markup language used with the Microsoft SharePoint collaborative portal applicationSee also: * Camel (disambiguation) …   Wikipedia

  • Caml — Infobox programming language name = Caml paradigm = multi paradigm: functional, imperative; object oriented in OCaml year = 1985 typing = strong, static designer = Gérard Huet, Guy Cousineau, Ascánder Suárez, Pierre Weis, Michel Mauny (Heavy… …   Wikipedia

  • Caml — ● /ka mail/ np. m. ►LANG Categorical Abstract Machine Language. métalangage fonctionnel (voir langage fonctionnel) mis au point à l INRIA à partir de 1984, et dont l objectif était de remplacer Pascal (et le modèle impératif) dans l enseignement… …   Dictionnaire d'informatique francophone

  • Caml Light — is a lightweight and portable implementation of the Caml programming language, a dialect of the ML programming language family.It is implemented in C and compiles programs to bytecode.Caml Light is not actively developed, having been replaced by… …   Wikipedia

  • Caml Light — est une implémentation légère du langage de programmation Caml développé par l INRIA. Elle est stable et facilement portable. Cette version de Caml permet une programmation fonctionnelle et impérative. Caml Light ne permet pas la programmation… …   Wikipédia en Français

  • Caml Lights — may refer to:* Camel Lights, a brand of cigarette. See Camel (cigarette). * Caml Light, a functional programming language …   Wikipedia

  • Caml-light — ● np. m. ►LANG Version légère de Caml, essentiellement destinée à l enseignement, mais qui n est plus développée …   Dictionnaire d'informatique francophone

  • CAML — cystic adenomatoid malformation of the lung …   Medical dictionary

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”