Computing Atlas

How Computing Was Built
Sign In
Text size
100%
Theme
Programming Language

Caml

Functional Language

Caml is a functional programming language in the ML family, designed in France during the mid-1980s by Gerard Huet, Guy Cousineau, Ascander Suarez, Pierre Weis and Michel Mauny at INRIA and the Ecole normale superieure in Paris. Its name originally stood for Categorical Abstract Machine Language. The first implementation was written in Lisp by Ascander Suarez in 1987, after which Xavier Leroy and Damien Doligez wrote a lighter implementation in C known as Caml Light, with the original version later nicknamed Heavy Caml because of its resource demands. Caml is statically typed with type inference, strict evaluation and automatic memory management, supporting both functional and imperative programming. Caml Special Light, a later version that added a module system, was extended with object oriented features to become OCaml, which is Caml's main descendant. This description is adapted from Wikipedia contributors under CC BY-SA 4.0; changes were made. https://creativecommons.org/licenses/by-sa/4.0/

Facts
First Released
1985 1
Significance
OCaml, the main descendant of Caml, adds many features to the language, including an object oriented programming (object) layer. 2
Classification
Typing Discipline
Statically Typed 1
Typing Discipline
Strongly Typed 1
Connections

Follows Typing Discipline

Entity-backed identity for the typing discipline value this language already carries as an enum fact, resolved to a concept entity by an explicit value-to-entity map (phase 3 bucket conversion, docs\design_entity_backed_browse_buckets_20260928.md). The enum fact itself stays on the entity unchanged.

Entity-backed identity for the typing discipline value this language already carries as an enum fact, resolved to a concept entity by an explicit value-to-entity map (phase 3 bucket conversion, docs\design_entity_backed_browse_buckets_20260928.md). The enum fact itself stays on the entity unchanged.

In Field

Source Wikipedia: Caml
Sources
1. Wikidata: Caml
  • Wikidata Q1118153, class allow-list match (w-wdresolver-0926)
  • Wikidata Q1118153 P571 (inception)
  • Wikidata Q1118153 P7078 (typing discipline)
View the Source
2. Wikipedia: Caml
  • Lead paragraph, sentence 3
    OCaml, the main descendant of Caml, adds many features to the language, including an object-oriented programming (object) layer.
  • In Group: ML Dialects, lead states Caml is a multi-paradigm functional programming language which is a dialect of the ML programming language family
  • In Field: Programming Language Theory, Lead paragraph
View the Source
Comments (0)
No comments yet. Be the first to share a thought.
Reader Challenges (0)
No disputes yet. Spotted an error or a better source? Open the first one.