diff options
Diffstat (limited to 'src/interp/spad-parser.boot')
-rw-r--r-- | src/interp/spad-parser.boot | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/src/interp/spad-parser.boot b/src/interp/spad-parser.boot index 99071c56..678c66d2 100644 --- a/src/interp/spad-parser.boot +++ b/src/interp/spad-parser.boot @@ -1131,6 +1131,62 @@ for x in ["-", "=", "*", "rem", "mod", "quo", "div", "/", "^", --% +MAKENEWOP(x,y) == + MAKEOP(x,y,'PARSE_-NewKEY) + +for j in [ + ["*",800,801], + ["rem",800,801], + ["mod",800,801], + ["quo",800,801], + ["div",800,801], + ["/",800,801], + ["**",900,901], + ["^",900,901], + ["exquo",800,801], + ["+",700,701], + ["-",700,701], + ["->",1001,1002], + ["<-",1001,1002], + [":",996,997], + ["::",996,997], + ["@",996,997], + ["pretend",995,996], + ["."], + ["!","!",1002,1001], + [",",110,111], + [";",81,82,function parseSemicolon], + ["<",400,400], + [">",400,400], + ["<<",400,400], + [">>",400,400], + ["<=",400,400], + [">=",400,400], + ["=",400,400], + ["~=",400,400], + ["in",400,400], + ["case",400,400], + ["add",400,120], + ["with",2000,400,function parseInfixWith], + ["has",400,400], + ["where",121,104], + ["when",112,190], + ["is",400,400], + ["isnt",400,400], + ["and",250,251], + ["or",200,201], + ["/\",250,251], + ["\/",200,201], + ["..","SEGMENT",401,699,function parseSegmentTail], + ["=>",123,103], + ["+->",998,121], + ["==","DEF",122,121], + ["==>","MDEF",122,121], + ["|",108,111], + [":-",125,124], + [":=",125,124] + ] repeat MAKENEWOP(j,'Led) + for j in [ ["for",130,350,function parseLoop], ["while",130,190,function parseLoop], |