This is only needed for `@` right? Could these functions just move to `local_heap`?