ref: ab42f5c4f29b1860d26c40bd05bb123a3ef49a6f
dir: /lib/std/mk.myr/
use "alloc" pkg std = generic mk : (val : @a -> @a#) ;; /* Takes a value, and heapifies it. FIXME: This depends on inlining and copy propagation in order to be efficient. Neither of those are currently implemented. That means that this function is not efficient. It's still damn convenient, though, so it's in. */ generic mk = {val var p p = alloc() p# = val -> p }