| author | haftmann |
| Fri, 27 Jun 2008 09:34:08 +0200 | |
| changeset 27375 | 8d2c3d61c502 |
| parent 25182 | 64e3f45dc6f4 |
| permissions | -rw-r--r-- |
module Nat = struct type nat = Suc of nat | Zero_nat;; end;; (*struct Nat*) module Codegen = struct type 'a null = {null : 'a};; let null _A = _A.null;; let rec head _A = function x :: xs -> x | [] -> null _A;; let rec null_option = None;; let null_optiona () = ({null = null_option} : ('a option) null);; let rec dummy = head (null_optiona ()) [Some (Nat.Suc Nat.Zero_nat); None];; end;; (*struct Codegen*)