static A vm_generalMap_getOrCreate(O key, F0 create) {
ret vm_generalMap_getOrCreate(key, f0ToIF0(create));
}
static A vm_generalMap_getOrCreate(O key, IF0 create) {
synchronized(get(javax(), 'generalMap)) { // should switch to locks here
A a = cast vm_generalMap_get(key);
if (a == null)
vm_generalMap_put(key, a = create?!);
ret a;
}
}