Advertisement
Guest User

Untitled

a guest
Mar 19th, 2015
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
OCaml 0.30 KB | None | 0 0
  1. type yes
  2. type no
  3.  
  4. type _ expr =
  5.   | X : no expr
  6.   | Y : yes expr
  7.   | F1 : no expr * no expr -> no expr
  8.   | F2 : _ expr * yes expr -> yes expr
  9.   | F3 : yes expr * _ expr -> yes expr
  10.  
  11. let rec f : 'maybe expr -> no expr = function
  12.   | Y -> X
  13.   | F1 (x, y)
  14.   | F2 (x, y)
  15.   | F3 (x, y) -> F1 (f x, f y)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement