package catala

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Typing for the default calculus. Because of the error terms, we perform type inference using the classical W algorithm with union-find unification.

Infers types everywhere on the given expression, and adds (or replaces) type annotations on each node

Gets the outer type of the given expression, using either the existing annotations or inference

val check_type : Ast.decl_ctx -> 'm Ast.marked_expr -> Ast.typ Utils.Marked.pos -> unit
val infer_types_program : Ast.untyped Ast.program -> Ast.typed Ast.program