static boolean putMatch(Map matches, S key, Lisp val) { if (matches.containsKey(key)) fail("multi-matching not implemented"); matches.put(key, val); ret true; } static boolean putMatch(Map matches, S key, S val) { ret putMatch(matches, key, lisp(quote(val))); }