         try $0.val("call")
     }
 
-    t.rule(["dotCall": .simple("call")]) {
-        try $0.val("call")
-    }
-
     t.rule(["trailCalls": .series("calls")]) {
         try reduce(try $0.vals("calls"))
     }
 
-    //    t.rule(["trailCalls": .simple("call")]) {
-    //        try $0.val("call")
-    //    }
-
     t.rule(["dotCall": .series("calls")]) {
         try reduce(try $0.vals("calls"))
     }

        return .callAnonymous(closure: expr, arguments: [head])
    }

    // TODO: args should be simple or series?
    t.rule(["head": .simple("head"), "anonCall": .simple("expr"), "args": .series("args")]) {
        let head = try $0.val("head")
        let expr = try $0.val("expr")

    }

    t.rule(["functionName": .simple("name"), "body": .simple("body"), "guard": .simple("guard"), "params": .series("params")]) {
        .subfunction(try transformFunction(args: $0))
    }

