- basic.DefTerm ("funcall", Funcall.parser);
-
- basic.DefSubr (Fset, "set", true, 1, 1, "=");
- basic.DefSubr (Fnot, "not", false, 1, 1, "!");
- basic.DefSubr (Fadd, "add", true, 1, -1, "+");
- basic.DefSubr (Fmul, "mul", true, 1, -1, "*");
- basic.DefSubr (Fsub, "sub", true, 1, -1, "-");
- basic.DefSubr (Fdiv, "div", true, 1, -1, "/");
- basic.DefSubr (Fmod, "mod", true, 1, 2, "%");
- basic.DefSubr (Flogior, "logior", true, 1, -1, "|");
- basic.DefSubr (Flogand, "logand", true, 1, -1, "&");
- basic.DefSubr (Flsh, "lsh", true, 1, 2, "<<");
- basic.DefSubr (Frsh, "rsh", true, 1, 2, ">>");
- basic.DefSubr (Feq, "eq", false, 2, -1, "==");
- basic.DefSubr (Fnoteq, "noteq", false, 2, 2, "!=");
- basic.DefSubr (Flt, "lt", false, 2, -1, "<");
- basic.DefSubr (Fle, "le", false, 2, -1, "<=");
- basic.DefSubr (Fgt, "gt", false, 2, -1, ">");
- basic.DefSubr (Fge, "ge", false, 2, -1, ">=");
+ basic.DefType (typeof (Varref));
+ basic.DefType (typeof (Funcall));
+ basic.DefType (typeof (ErrorTerm));
+
+ basic.DefSubr (Fset, "set", true, 1, 1);
+ basic.DefAlias ("=", "set");
+ basic.DefSubr (Fnot, "not", false, 1, 1);
+ basic.DefAlias ("!", "not");
+ basic.DefSubr (Fadd, "add", true, 1, -1);
+ basic.DefAlias ("+", "add");
+ basic.DefSubr (Fmul, "mul", true, 1, -1);
+ basic.DefAlias ("*", "mul");
+ basic.DefSubr (Fsub, "sub", true, 1, -1);
+ basic.DefAlias ("-", "sub");
+ basic.DefSubr (Fdiv, "div", true, 1, -1);
+ basic.DefAlias ("/", "div");
+ basic.DefSubr (Fmod, "mod", true, 1, 2);
+ basic.DefAlias ("%", "mod");
+ basic.DefSubr (Flogior, "logior", true, 1, -1);
+ basic.DefAlias ("|", "logior");
+ basic.DefSubr (Flogand, "logand", true, 1, -1);
+ basic.DefAlias ("&", "logand");
+ basic.DefSubr (Flsh, "lsh", true, 1, 2);
+ basic.DefAlias ("<<", "lsh");
+ basic.DefSubr (Frsh, "rsh", true, 1, 2);
+ basic.DefAlias (">>", "rsh");
+ basic.DefSubr (Feq, "eq", false, 2, -1);
+ basic.DefAlias ("==", "eq");
+ basic.DefSubr (Fnoteq, "noteq", false, 2, 2);
+ basic.DefAlias ("!=", "noteq");
+ basic.DefSubr (Flt, "lt", false, 2, -1);
+ basic.DefAlias ("<", "lt");
+ basic.DefSubr (Fle, "le", false, 2, -1);
+ basic.DefAlias ("<=", "le");
+ basic.DefSubr (Fgt, "gt", false, 2, -1);
+ basic.DefAlias (">", "gt");
+ basic.DefSubr (Fge, "ge", false, 2, -1);
+ basic.DefAlias (">=", "ge");
+