sig type a = char val default : unit -> a end