My first try to write down the rule: MAKE_MAP(pmap[] |- Pdefs -> Map) --- Env |- local_def(Pdefs) -> penv[Map.Env]; was: MAKE_MAP(pmap[] |- Pdefs -> Map) --- penv[Rest] |- local_def(Pdefs) -> penv[Map.Rest]; This causes the Woups! (The alternative that works is better anyway, but i was asked to report it) Thomas