static O callAndMake_extended(S code, fO... args) { if (code == null) null; code = trim(code); if (isQuoted(code)) ret unquote(code); if (isInteger(code)) ret parseInt(code); if (isIdentifier(code)) ret eq(code, "x") ? first(args) : callAndMake(code, args); L tok = javaTok(code); if (lCodeTokens(tok) == 4 && eq(second(tok), "f") && isIdentifier(get(tok, 3)) && eq("/", get(tok, 5))) if (eq("1", get(tok, 7))) ret standardFunctionReference_1(get(tok, 3)); else if (eq("2", get(tok, 7))) ret standardFunctionReference_2(get(tok, 3)); Pair> p = tok_parseFunctionCall(tok); if (p == null) fail("Can't parse: " + code); ret callAndMake(p.a, map_toArray(func(S arg) -> O { callAndMake_extended(arg, args) }, p.b)); }