package links

  1. Overview
  2. Docs
module VEnv = Env.Int

IR variable environment

type venv = string VEnv.t

Type of environments mapping IR variables to object variables

type code =
  1. | Var of string
  2. | Lit of string
  3. | Fn of string list * code
  4. | LetFun of (string * string list * code * Ir.location) * code
  5. | LetRec of (string * string list * code * Ir.location) list * code
  6. | Call of code * code list
  7. | Unop of string * code
  8. | Binop of code * string * code
  9. | If of code * code * code
  10. | Case of string * (string * code) Utility.stringmap * (string * code) option
  11. | Dict of (string * code) list
  12. | Arr of code list
  13. | Bind of string * code * code
  14. | Return of code
  15. | Die of string
  16. | Nothing

Intermediate language

module type JS_PAGE_COMPILER = sig ... end
module type JS_CODEGEN = sig ... end