abstract writable abstract frozen a fact duplicable (frozen a) val new: () -> writable val set: [a] (consumes r: writable, x: a | duplicable a) -> (| r @ frozen a) val get: [a] frozen a -> a (* Local Variables: compile-command: "mezzo woref.mz" End: *)