macOS
brew install ocamllocal Homebrew formula metadata
sudo port install ocamlMacPorts ports tree · lang/ocaml/Portfile · source: api.github.com
brew
General purpose programming language in the ML family. Version 5.4.1 via Homebrew; verified from local package data.
install
brew install ocamllocal Homebrew formula metadata
sudo port install ocamlMacPorts ports tree · lang/ocaml/Portfile · source: api.github.com
sudo apk add ocamlAlpine Linux edge package indexes · ocaml · source: dl-cdn.alpinelinux.org
sudo apt install libcompiler-libs-ocaml-devDebian stable package indexes · libcompiler-libs-ocaml-dev · source: deb.debian.org
sudo dnf install ocamlFedora Rawhide package metadata · ocaml · source: dl.fedoraproject.org
nix profile install nixpkgs#ocamlnixpkgs package indexes · ocaml · source: raw.githubusercontent.com
sudo pacman -S ocamlArch Linux sync databases · ocaml · source: geo.mirror.pkgbuild.com
sudo zypper install ocamlopenSUSE Tumbleweed package metadata · ocaml · source: download.opensuse.org
overview
General purpose programming language in the ML family
history
OCaml is the main implementation of the Caml branch of the ML family: a strict, statically typed, type-inferred language with functional, imperative, modular, and object-oriented features. The brewed ocaml package installs the compiler suite, runtime tools, lexer and parser generators, documentation tools, debugger, dependency analyzer, and native-code and bytecode compilers.
OCaml grew out of Caml work at INRIA. Caml Special Light arrived in 1995 with an optimizing native-code compiler and a module system inspired by Standard ML; Objective Caml followed in 1996 after Didier Remy and Jerome Vouillon's object-type work was integrated into the language. The official name became OCaml in 2011.
The language evolved through major compiler and ecosystem changes. OCaml 4.0 in 2012 added GADTs and first-class modules; OCaml 4.03 in 2016 split ocamlbuild out of the compiler distribution; OCaml 5.0 in 2022 rewrote the runtime, removed the global runtime lock, and introduced support for shared-memory parallelism and effect handlers.
OCaml began with a strong academic base and gained industrial users around the Objective Caml period documented by ocaml.org. The official history page identifies adoption in static analysis tools, compilers, financial systems, and web development, and the language ecosystem later consolidated around opam, Dune, odoc, ocamlformat, merlin, and related platform tools.
Developers use OCaml for compilers, formal-methods tooling, static analysis, developer tools, financial infrastructure, web services, and systems where strong static typing and fast native code are useful. The package exposes both bytecode and native compilers, the interactive toplevel, ocamldebug, ocamldep, ocamldoc, ocamllex, ocamlyacc, and object-inspection tools.
OCaml is package-nerd rich because the compiler version is also an ecosystem axis. opam switches, findlib package names, Dune language versions, compiler-libs compatibility, PPX AST versions, and long-lived compiler branches all affect whether an OCaml package can build.
security posture
generalized runtime or code generation signal.
yellow risk · medium confidence · runtime
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
executables
| Command | Kind | Exposure | Note |
|---|---|---|---|
ocaml | cli | global executable | |
ocamlc | cli | global executable | |
ocamlc.byte | cli | global executable | |
ocamlc.opt | cli | global executable | |
ocamlcmt | cli | global executable | |
ocamlcp | cli | global executable | |
ocamldebug | cli | global executable | |
ocamldep | cli | global executable | |
ocamldep.byte | cli | global executable | |
ocamldep.opt | cli | global executable | |
ocamldoc | cli | global executable | |
ocamldoc.opt | cli | global executable | |
ocamllex | cli | global executable | |
ocamllex.byte | cli | global executable | |
ocamllex.opt | cli | global executable | |
ocamlmklib | cli | global executable | |
ocamlmktop | cli | global executable | |
ocamlobjinfo | cli | global executable | |
ocamlobjinfo.byte | cli | global executable | |
ocamlobjinfo.opt | cli | global executable | |
ocamlopt | cli | global executable | |
ocamlopt.byte | cli | global executable | |
ocamlopt.opt | cli | global executable | |
ocamloptp | cli | global executable | |
ocamlprof | cli | global executable | |
ocamlrun | cli | global executable | |
ocamlrund | cli | global executable | |
ocamlruni | cli | global executable | |
ocamlyacc | cli | global executable |
freshness
These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.
install metadata
| Package key | brew:ocaml |
|---|---|
| Version | 5.4.1 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/ocaml |
| Homepage | https://ocaml.org/ |
| Repository | https://github.com/ocaml/ocaml |
| Upstream docs | https://ocaml.org/docs |
| License | LGPL-2.1-only WITH OCaml-LGPL-linking-exception |
| Source archive | https://caml.inria.fr/pub/distrib/ocaml-5.4/ocaml-5.4.1.tar.xz |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | ocaml |
| Aliases |
|
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source database matches
Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.
libcompiler-libs-ocaml-dev 5.3.0-3
OCaml compiler library (development files)
sudo apt install libcompiler-libs-ocaml-devlibstdlib-ocaml 5.3.0-3
OCaml standard library (runtime files)
sudo apt install libstdlib-ocamllibstdlib-ocaml-dev 5.3.0-3
OCaml standard library (development files)
sudo apt install libstdlib-ocaml-devocaml 5.3.0-3
ML language implementation with a class-based object system
sudo apt install ocamlocaml-base 5.3.0-3
Runtime system for OCaml bytecode executables
sudo apt install ocaml-baseocaml-base-nox 5.3.0-3
transitional package for ocaml-base
sudo apt install ocaml-base-noxocaml-compiler-libs 5.3.0-3
transitional package for libcompiler-libs-ocaml-dev
sudo apt install ocaml-compiler-libsocaml-interp 5.3.0-3
OCaml interactive interpreter and standard libraries
sudo apt install ocaml-interpocaml-man 5.3.0-3
OCaml interpreter and standard libraries (lib manpages)
sudo apt install ocaml-manocaml-nox 5.3.0-3
transitional package for ocaml
sudo apt install ocaml-noxocaml-source 5.3.0-3
Sources for Objective Caml
sudo apt install ocaml-sourceocaml
nix profile install nixpkgs#ocamllibcompiler-libs-ocaml-dev 4.14.1-1ubuntu1
OCaml compiler library (development files)
sudo apt install libcompiler-libs-ocaml-devlibstdlib-ocaml 4.14.1-1ubuntu1
OCaml standard library (runtime files)
sudo apt install libstdlib-ocamllibstdlib-ocaml-dev 4.14.1-1ubuntu1
OCaml standard library (development files)
sudo apt install libstdlib-ocaml-devocaml 4.14.1-1ubuntu1
ML language implementation with a class-based object system
sudo apt install ocamlsource trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.