package catala

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

Module Lcalc.To_ocamlSource

Formats a lambda calculus program into a valid OCaml program

Sourceval avoid_keywords : string -> string
Sourceval typ_needs_parens : Shared_ast.typ -> bool
Sourceval format_enum_name : Format.formatter -> Shared_ast.EnumName.t -> unit
Sourceval format_enum_cons_name : Format.formatter -> Shared_ast.EnumConstructor.t -> unit
Sourceval format_struct_name : Format.formatter -> Shared_ast.StructName.t -> unit
Sourceval format_struct_field_name : Format.formatter -> (Shared_ast.StructName.t option * Shared_ast.StructField.t) -> unit
Sourceval format_to_module_name : Format.formatter -> [< `Ename of Shared_ast.EnumName.t | `Sname of Shared_ast.StructName.t ] -> unit
Sourceval format_var : Format.formatter -> 'm Shared_ast.Var.t -> unit
Sourceval format_program : Format.formatter -> ?exec_scope:Shared_ast.ScopeName.t -> ?exec_args:bool -> 'm Ast.program -> Scopelang.Dependency.TVertex.t list -> unit

Usage format_program fmt p type_dependencies_ordering. Either one of these may be set:

  • exec_scope will mark the named scope as "main" and execute it at the end of the program. It must have no inputs.
  • exec_args will add support for executing scopes passed on Argv (default true if exec_scope is None
OCaml

Innovation. Community. Security.