Skip to content

Latest commit

 

History

History
16 lines (10 loc) · 980 Bytes

TOOLS.md

File metadata and controls

16 lines (10 loc) · 980 Bytes

Tools

Ott

Ott is a tool for writing definitions of programming languages and calculi. It takes as input a definition of a language syntax and semantics, in a concise and readable ASCII notation that is close to what one would write in informal mathematics. It generates LaTeX to build a typeset version of the definition, and Coq, HOL, and Isabelle versions of the definition. Additionally, it can be run as a filter, taking a LaTeX/Coq/Isabelle/HOL source file with embedded (symbolic) terms of the defined language, parsing them and replacing them by target-system terms.

https://www.cl.cam.ac.uk/~pes20/ott/

Lem

Lem is a lightweight tool for writing, managing, and publishing large scale semantic definitions. It is also intended as an intermediate language for generating definitions from domain-specific tools, and for porting definitions between interactive theorem proving systems (such as Coq, HOL4, and Isabelle).

https://www.cl.cam.ac.uk/~pes20/lem/