ref: 6aab6b7b0d8fb0e37f7021f17714efbe02a227bb
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 }