1type T = {a : A, b : B, c : U8, d : Bool} 2 3type A 4type B 5 6freeA : A -> () 7freeB : B -> () 8 9freeT : T take (..) -> () 10 11freeT' : T take (a, b) -> () 12 13free : T -> () 14free t {a, b} = let _ = freeA a 15 ; freeB b 16 ; freeT t 17 in () 18 19free' : T take (c,d) -> () 20free' t {a, b} = let _ = freeA a 21 ; freeB b 22 ; freeT' t 23 in () 24