todo: We can support modifiable memory access functions