macOS
brew install ottlocal Homebrew formula metadata
sudo port install ottMacPorts ports tree · devel/ott/Portfile · Source: api.github.com
brew
Consultez les chemins d'installation, exécutables, métadonnées et notes de sécurité de ott pour les workflows d'agents IA.
installation
brew install ottlocal Homebrew formula metadata
sudo port install ottMacPorts ports tree · devel/ott/Portfile · Source: api.github.com
sudo apt install libcoq-ottDebian stable package indexes · libcoq-ott · Source: deb.debian.org
nix profile install nixpkgs#ottnixpkgs package indexes · pkgs/by-name/ot/ott/package.nix · Source: api.github.com
aperçu
Tool for writing definitions of programming languages and calculi
historique
Ott is a tool and metalanguage for writing definitions of programming languages and calculi. It lets semanticists write syntax, binding structure, and inference rules once, then generate LaTeX, Coq, HOL, Isabelle/HOL, Lem, OCaml, and related artifacts.
Ott was principally developed by Peter Sewell, Francesco Zappa Nardelli, and Scott Owens, with a wider contributor group. Its design was published at ICFP 2007 and then as a Journal of Functional Programming article in January 2010.
The project arose from a specific pain point in programming-language research: full-scale semantic definitions are valuable but hard to keep consistent when they live only in informal mathematics or inside a single proof assistant. Ott's answer was a readable ASCII notation plus sanity checking and code generation into both publication and mechanized-proof formats.
The Ott manual and repository document examples spanning untyped and simply typed lambda calculi, ML polymorphism, POPLmark F<:, TAPL systems, a Leroy-style module system, Lightweight Java, Java module-system work, and a substantial OCaml-light semantics. The JFP paper reports larger case studies including OCaml light with 310 rules and mechanized soundness results.
Ott's adoption is strongest in programming-languages research, where the same source definition can support papers, collaborative editing, and proof assistant artifacts. The 2010 'Ott or Nott' workshop abstract is a useful adoption signal: it presents Ott as part of a working language-design process, not merely as a backend generator.
A typical user writes an .ott source file describing object-language syntax and semantic judgments, then invokes ott with one or more -o outputs such as .tex, .v, .thy, HOL script, Lem, or OCaml files. The tool can also filter embedded terms in LaTeX, Coq, Isabelle/HOL, Lem, or OCaml source.
The generated artifacts reduce drift between the published rules, the parser-level syntax, and the formal definitions used for mechanized reasoning. For package users, the command-line binary is the bridge between a research notation and several proof and documentation ecosystems.
Ott is a rare package that is both a compiler-like CLI and a research infrastructure artifact. Its package value comes from reproducibility: a language-definition source can be checked, regenerated, versioned, and consumed by multiple proof assistants and typesetting workflows.
posture de sécurité
generalized runtime or code generation signal.
risque yellow · confiance moyen · runtime
Avant une utilisation sans surveillance par un agent, vérifiez si l'outil lit des identifiants en clair, écrit un état distant, publie des artefacts ou lance des plugins.
exécutables
| Commande | Type | Exposition | Note |
|---|---|---|---|
ott | cli | exécutable global |
fraîcheur
Ces signaux séparent l'âge de génération de la page, l'activité du gestionnaire de paquets et la comparaison avec les versions amont. Un retard de version n'est signalé que lorsqu'une URL de preuve et des versions comparables sont présentes.
https://github.com/ott-lang/ott
métadonnées d'installation
| Clé du paquet | brew:ott |
|---|---|
| Version | 0.34 |
| Gestionnaire de paquets | Homebrew |
| Page du gestionnaire de paquets | https://formulae.brew.sh/formula/ott |
| Page d'accueil | https://www.cl.cam.ac.uk/~pes20/ott/ |
| Dépôt | https://github.com/ott-lang/ott |
| Docs amont | https://github.com/ott-lang/ott#readme |
| Licence | BSD-3-Clause |
| Archive source | https://github.com/ott-lang/ott/archive/refs/tags/0.34.tar.gz |
| Dernière mise à jour | 2026-06-22T14:05:47-07:00 |
| Pulse | updated |
| Dépendances de compilation | gmp, ocaml, opam, pkgconf |
| Bouteille | disponible (sur arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux) |
| post-install Homebrew | non défini |
| Service | aucun déclaré |
faits du registre
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | ott |
| 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 |
|
correspondances dans les bases sources
Les correspondances proviennent d’index externes de gestionnaires de paquets et restent séparées des liens de paquets Automic Vault locaux.
libcoq-ott 0.34+ds-1+b4
Ott tool (Coq plugin)
https://github.com/ott-lang/ott
sudo apt install libcoq-ottott-tools 0.34+ds-1+b4
Ott tool (executable)
https://github.com/ott-lang/ott
sudo apt install ott-toolsott
nix profile install nixpkgs#ottlibcoq-ott 0.33+ds-2build3
Ott tool (Coq plugin)
https://github.com/ott-lang/ott
sudo apt install libcoq-ottott-tools 0.33+ds-2build3
Ott tool (executable)
https://github.com/ott-lang/ott
sudo apt install ott-toolsott
sudo port install ottpiste source
Cette page est servie par av-web depuis l'artéfact SQLite privé des paquets généré par scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.