Commit graph

273 commits

Author SHA1 Message Date
Leonardo de Moura
798bbc0662 feat(library/init/system/io): new primitives 2019-07-25 18:12:44 -07:00
Sebastian Ullrich
aef4a7159b chore(*): remove obsolete leanpkg.path files 2019-07-25 17:46:53 -07:00
Leonardo de Moura
77a59f4998 feat(library/init/io): add IO.getEnv 2019-07-25 08:31:23 -07:00
Leonardo de Moura
b3e0a1d04e feat(library/init/lean/elaborator/basic): improve error handling, add simple test 2019-07-18 17:52:01 -07:00
Leonardo de Moura
79545f55c0 feat(library/init/io): add IO.readTextFile 2019-07-18 17:31:31 -07:00
Leonardo de Moura
f206b30fd7 feat(library/init/lean/parser): add charLit 2019-07-16 07:22:09 -07:00
Leonardo de Moura
146a796c5c feat(library/init/lean/module): add ModuleParser with error recovery 2019-07-15 09:32:13 -07:00
Leonardo de Moura
b9149dd428 fix(library/init/lean/parser/module): token table initialization 2019-07-14 08:31:12 -07:00
Leonardo de Moura
e3351f0524 test(tests/playground/modtest1): new test 2019-07-12 17:03:22 -07:00
Leonardo de Moura
d59d8e0d56 feat(library/init/lean/parser/command): add notation command 2019-07-12 14:18:08 -07:00
Leonardo de Moura
36da73b6cb feat(library/init/lean/parser/command): add (some) notation commands 2019-07-12 14:01:23 -07:00
Leonardo de Moura
166a6fa75a feat(library/init/lean/parser/command): missing commands 2019-07-12 11:00:14 -07:00
Leonardo de Moura
7046a38e93 feat(library/init/lean/parser/command): add inductive, structure and class parsers 2019-07-12 10:21:59 -07:00
Leonardo de Moura
eed4c72fc5 fix(library/init/lean/parser/command): docComment 2019-07-11 17:28:51 -07:00
Leonardo de Moura
72477f3cc6 feat(library/init/lean/parser/command): improve how optional affects firstTokens field 2019-07-11 17:22:26 -07:00
Leonardo de Moura
d354dc437c feat(library/init/lean/parser/command): add declaration draft 2019-07-11 17:13:22 -07:00
Leonardo de Moura
3370ab7398 feat(library/init/lean/parser/term): allow equations to be used in let-decls 2019-07-11 13:13:08 -07:00
Leonardo de Moura
99393433a4 feat(library/init/lean/parser/term): do notation 2019-07-11 12:38:55 -07:00
Leonardo de Moura
57e2f1be2a feat(library/init/lean/parser/term): builtin operators 2019-07-11 10:13:00 -07:00
Leonardo de Moura
195fb27ce5 feat(library/init/lean/parser/term): add let 2019-07-11 09:51:34 -07:00
Leonardo de Moura
7b91d880d7 feat(library/init/lean/parser/term): add sortApp, inaccessible and explicit 2019-07-11 09:05:21 -07:00
Leonardo de Moura
140cc45491 feat(library/init/lean/parser/term): whitespace sensitive match expression 2019-07-10 15:13:28 -07:00
Leonardo de Moura
3ef8845163 chore(tests/playground): fix tests 2019-07-10 11:36:39 -07:00
Leonardo de Moura
f37cd3cd11 feat(library/init/lean/parser/term): match-expression
TODO: add whitespace sensitivity
2019-07-08 14:14:49 -07:00
Leonardo de Moura
846ec9578d fix(library/init/lean/parser/term): allow namedArgument notation in applications only 2019-07-08 13:43:12 -07:00
Leonardo de Moura
769e5fc8b1 chore(tests/playground/termparsertest1): add support for testing failures 2019-07-08 13:07:15 -07:00
Leonardo de Moura
4a17cf134b feat(library/init/lean/parser/term): add forall parser 2019-07-08 13:03:21 -07:00
Leonardo de Moura
a6f9633e64 feat(library/init/lean/parser/term): dependent arrow notation 2019-07-08 12:57:49 -07:00
Leonardo de Moura
d3ca360e7f feat(library/init/lean/parser): depArrow proof of concept 2019-07-08 10:49:54 -07:00
Leonardo de Moura
9334f54b87 feat(library/init/lean/parser/parser): support for whitespace sensitive left binding power
We use this new feature to implement array access notation `a[i]`.
2019-07-07 07:21:10 -07:00
Leonardo de Moura
2498f197b8 feat(library/init/lean/parser/term): declare some builtin infix operators
In Lean4, several builtin operators will be defined programmatically to
make sure we can bootstrap the system before we have all primitives
necessary for defining parsers.
2019-07-05 18:51:14 -07:00
Leonardo de Moura
483b7ae51a feat(library/init/lean/parser/term): add field notation trailing parser 2019-07-05 16:23:25 -07:00
Leonardo de Moura
f1fe5c8d8b test(tests/playground/termparsertest1): new tests 2019-07-05 12:10:22 -07:00
Leonardo de Moura
e946f79e82 test(tests/playground/termparsertest1): add new tests 2019-07-05 10:46:37 -07:00
Leonardo de Moura
0bee94886e feat(frontends/lean/builtin_exprs): , from ==> from, and cleanup suffices 2019-07-02 17:22:50 -07:00
Leonardo de Moura
9f24e77200 chore(library/init/lean/parser/term): add show and have parsers 2019-07-02 16:59:43 -07:00
Leonardo de Moura
44730314ff feat(library/init/lean/parser/term): add ifTerm 2019-07-02 16:32:09 -07:00
Leonardo de Moura
d4a5306d82 feat(library/init/lean/parser/term): explicit universe notation in the new parser 2019-07-02 09:00:58 -07:00
Leonardo de Moura
9d50b3ca47 feat(library/init/lean/parser/term): paren parser 2019-07-01 19:44:13 -07:00
Leonardo de Moura
13b5747713 fix(library/init/lean/parser/parser): prattParser 2019-07-01 16:00:58 -07:00
Leonardo de Moura
531ef5d700 feat(library/init/lean/parser): universe level parser and bug fixes 2019-06-30 09:02:06 -07:00
Leonardo de Moura
da09ef4f66 feat(frontends/lean/builtin_exprs): minor improvement 2019-06-24 15:48:11 -07:00
Leonardo de Moura
24e3bff429 feat(frontends/lean): add simple parser! macro 2019-06-24 15:48:11 -07:00
Leonardo de Moura
8f1345dc53 chore(library/init/lean/syntax): simplify SyntaxNodeKind 2019-06-21 14:24:44 -07:00
Leonardo de Moura
7f3543096a test(tests/playground/parser2): proof of concept 2019-06-20 16:48:17 -07:00
Leonardo de Moura
93e5746739 chore(library/init/lean/parser/parser): naming consistency 2019-06-20 16:47:55 -07:00
Leonardo de Moura
98879f1580 refactor(library/init/lean/parser/parser): simplify SyntaxNodeKind
The numeric `id` generation is works well for builtin parsers, but it
creates problems when defining dynamic ones.
2019-06-20 14:51:59 -07:00
Leonardo de Moura
8724a8cfd5 feat(library/init/lean/parser/parser): builtin parser attributes must be applied after compilation 2019-06-20 09:22:03 -07:00
Leonardo de Moura
f180b3f32e feat(library/init/lean/parser/parser): improve error messages on prattParser 2019-06-19 16:36:18 -07:00
Leonardo de Moura
cf9a29152d fix(library/init/lean/parser/parser): ParserInfo for ident, strLit, and numLit 2019-06-19 16:19:00 -07:00