projects
/
lambda.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
add update note
[lambda.git]
/
code
/
parse.js
diff --git
a/code/parse.js
b/code/parse.js
index
5cdeb40
..
9712809
100644
(file)
--- a/
code/parse.js
+++ b/
code/parse.js
@@
-212,12
+212,14
@@
var make_parse = function () {
constant("B", make_lam3(u, v, x, make_app(uu, make_app(vv, xx))));
constant("C", make_lam3(u, v, x, make_app3(uu, xx, vv)));
constant("B", make_lam3(u, v, x, make_app(uu, make_app(vv, xx))));
constant("C", make_lam3(u, v, x, make_app3(uu, xx, vv)));
- // trush \uv.vu = CI
+ // trush \uv.vu = CI
= box
constant("T", make_lam2(u, v, make_app(vv, uu)));
constant("T", make_lam2(u, v, make_app(vv, uu)));
- //
mockingbird \u.uu = SII
- constant("
M", make_lam(u, make_app(uu, uu
)));
+ //
vireo \uvw.wuv = pair
+ constant("
V", make_lam3(u, v, x, make_app3(xx, uu, vv
)));
// warbler \uv.uvv = C(BM(BBT) = C(BS(C(BBI)I))I
constant("W", make_lam2(u, v, make_app3(uu, vv, vv)));
// warbler \uv.uvv = C(BM(BBT) = C(BS(C(BBI)I))I
constant("W", make_lam2(u, v, make_app3(uu, vv, vv)));
+ // mockingbird \u.uu = SII = omega
+ constant("M", make_lam(u, make_app(uu, uu)));
// lark \uv.u(vv) = CBM = BWB
constant("L", make_lam2(u, v, make_app(uu, make_app(vv, vv))));
// Y is SLL
// lark \uv.u(vv) = CBM = BWB
constant("L", make_lam2(u, v, make_app(uu, make_app(vv, vv))));
// Y is SLL
@@
-306,7
+308,7
@@
var make_parse = function () {
tokens = source.tokens();
token_nr = 0;
advance();
tokens = source.tokens();
token_nr = 0;
advance();
-
+
// let n = c in b
// (\n. b) c
// let n = c in b
// (\n. b) c
@@
-336,7
+338,7
@@
var make_parse = function () {
target = t;
advance("in");
}
target = t;
advance("in");
}
-
+
target.second = expression(false);
advance("(end)");
target.second = expression(false);
advance("(end)");