projects
/
lambda.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
tweak lambda evaluator
[lambda.git]
/
code
/
parse.js
diff --git
a/code/parse.js
b/code/parse.js
index
7749c69
..
fc3b83d
100644
(file)
--- a/
code/parse.js
+++ b/
code/parse.js
@@
-213,7
+213,11
@@
var make_parse = function () {
n = token;
advance();
}
n = token;
advance();
}
- if (token.id === ".") {
+ if (token.arity === "literal" && t.first.length === 0) {
+ t.first.push(n);
+ t.second = token;
+ advance();
+ } else if (token.id === ".") {
t.first.push(n);
advance();
t.second = expression(in_let);
t.first.push(n);
advance();
t.second = expression(in_let);
@@
-249,8
+253,8
@@
var make_parse = function () {
n = token;
advance(")");
} else {
n = token;
advance(")");
} else {
- if (token.arity !== "name") {
- token.error("Expected a variable name.");
+ if (token.arity !== "name"
&& token.arity !== "literal"
) {
+ token.error("Expected a variable name
or literal
.");
}
token.first = n;
n = token;
}
token.first = n;
n = token;