From 58f08f257881dd108fc20a75abc97445b8502ecd Mon Sep 17 00:00:00 2001 From: nisstyre56 Date: Sun, 16 Mar 2014 01:08:01 -0400 Subject: [PATCH] handle empty applications --- parse.js | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/parse.js b/parse.js index 1d7d4ac..301515c 100755 --- a/parse.js +++ b/parse.js @@ -454,8 +454,9 @@ function computeApp(tokens, charnum, linenum) { var lhs = parse(tokens); var next; var result; - if (fst(tokens)) + if (fst(tokens)) { next = fst(tokens); + } else { throw error.JSyntaxError(linenum, charnum, @@ -476,13 +477,18 @@ function computeApp(tokens, charnum, linenum) { } else { /* it's a prefix application */ - - var parameters = parseMany(parse, + var parameters; + if (fst(tokens)[0] !== "right_paren") { + parameters = parseMany(parse, validArgTypes, validArgument, tokens, charnum, linenum); + } + else { + parameters = []; + } if ((!fst(tokens)) || fst(tokens)[0] !== "right_paren") { throw error.JSyntaxError(linenum, charnum,