I don't know if it's applicable here, but Wasm programs can access multiple memories.

Sadly these memories are accessed thru a constant in the load/store instructions, and Goose would need this to be dynamic (since you can have code that processes pointers coming from multiple different stacks).