package catala

  1. Overview
  2. Docs
Compiler and library for the literate programming language for tax code specification

Install

Dune Dependency

Authors

Maintainers

Sources

0.7.0.tar.gz
md5=6dbbc2f50c23693f26ab6f048e78172f
sha512=a5701e14932d8a866e2aa3731f76df85ff2a68b4fa943fd510c535913573274d66eaec1ae6fcae17f20b475876048a9ab196ef6d8c23d4ea6b90b986aa0a6daa

doc/lcalc.html

Lambda calculus

This representation is the fifth in the compilation chain (see Architecture). Its main difference with the previous default calculus is the absence of the default term, which has been eliminated through diverse compilation schemes.

The module describing the abstract syntax tree is:

This intermediate representation corresponds to the lambda calculus presented in the Catala formalization.

Compilation from default calculus

Lcalc.Compile_with_exceptions compiles the default term of the default calculus using catchable exceptions. This compilation scheme has been certified.

Related modules:

  • Lcalc.Compile_with_exceptions Translation from the default calculus to the lambda calculus. This translation uses exceptions to handle empty default terms.

Backends

The OCaml backend of the lambda calculus is merely a syntactic formatting, since the core of the OCaml value language is effectively a lambda calculus.

Related modules:

  • Lcalc.To_ocaml Formats a lambda calculus program into a valid OCaml program
  • Scalc.To_python Formats a lambda calculus program into a valid Python program
  • Lcalc.Backends
OCaml

Innovation. Community. Security.