Advertisement
Guest User

Untitled

a guest
Aug 31st, 2014
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 1.11 KB | None | 0 0
  1. # module VALUE ( Nominal : NOMINALS ) ( Term : TERMS ) ( Env : ENVIRONMENTS ) =
  2. struct
  3.   type ident = Nominal.nominal
  4.   type term = Term.term
  5.   type ptrn = Term.pattern
  6.   type value =
  7.       Ground of ground
  8.       | Closure of ptrn * term * env
  9.       | BOTTOM
  10.       | UNIT
  11.   and ground =
  12.       Boolean of bool
  13.       | String of string
  14.       | Integer of int
  15.       | Double of float
  16.       | Reification of Term.term
  17.   and env = ( ident, value ) Env.env
  18. end;;
  19.                                   module VALUE :
  20.   functor (Nominal : NOMINALS) ->
  21.     functor (Term : TERMS) ->
  22.       functor (Env : ENVIRONMENTS) ->
  23.         sig
  24.           type ident = Nominal.nominal
  25.           type term = Term.term
  26.           type ptrn = Term.pattern
  27.           type value =
  28.               Ground of ground
  29.             | Closure of ptrn * term * env
  30.             | BOTTOM
  31.             | UNIT
  32.           and ground =
  33.               Boolean of bool
  34.             | String of string
  35.             | Integer of int
  36.             | Double of float
  37.             | Reification of Term.term
  38.           and env = (ident, value) Env.env
  39.         end
  40. #
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement