You can't directly get a pointer to a stack variable in WASM either, and you also can't directly read/write to code memory. A more important question with regards to the design of UVM is whether it should or shouldn't have a concept of pages and a primitive like mmap, instead of a flat linear address space for code. If you can't directly map a chunk in your memory space to be shared memory, then how do you share memory at all?