Sebastian Ullrich
|
040ec9767d
|
fix(library/init/lean/parser/combinators): (x) -> e should not be a dependent function
|
2019-03-26 11:26:39 +01:00 |
|
Sebastian Ullrich
|
beec014890
|
feat(library/init/lean/{parser/term,expander}): remove (x : e) → f macro hack and replace with actual parser
|
2019-03-25 16:12:14 +01:00 |
|
Leonardo de Moura
|
930164b597
|
chore(library/init/lean/parser/term): remove hack used during conversion
|
2019-03-21 15:06:45 -07:00 |
|
Leonardo de Moura
|
2be87ecd92
|
chore(library/init): Bool.tt => Bool.true and Bool.ff => Bool.false
|
2019-03-21 15:06:44 -07:00 |
|
Leonardo de Moura
|
04e20623e6
|
chore(*): use lowercase dir names
|
2019-03-21 15:06:44 -07:00 |
|
Leonardo de Moura
|
67fb78bb47
|
chore(*): renaming files
|
2019-03-21 15:06:44 -07:00 |
|
Sebastian Ullrich
|
beda5f5f43
|
chore(library): capitalize types and namespaces
|
2019-03-21 15:06:43 -07:00 |
|
Sebastian Ullrich
|
b939162168
|
chore(library): switch from snake_case to camelCase
|
2019-03-21 15:06:43 -07:00 |
|
Sebastian Ullrich
|
430fb81f69
|
fix(library/init/lean/parser/term,frontends/lean/builtin_exprs): @& should have higher rbp than ->
|
2019-03-07 14:35:25 +01:00 |
|
Sebastian Ullrich
|
dbc470d7e4
|
feat(library/init/lean/{parser/term,elaborator}): support @& borrowed annotations
|
2019-02-14 14:07:05 -08:00 |
|
Sebastian Ullrich
|
69e363446d
|
fix(library/init/lean/{parser/term,elaborator}): local notations override previous notations
|
2019-01-20 16:25:15 +01:00 |
|
Sebastian Ullrich
|
fc3a0403ab
|
feat(library/init/lean/parser/declaration): implement structure field blocks that go beyond regular binder syntax
|
2019-01-15 15:00:34 +01:00 |
|
Sebastian Ullrich
|
fec4502e0f
|
feat(library/init/lean/parser/term): parse and expand sorry
|
2019-01-07 22:19:47 +01:00 |
|
Sebastian Ullrich
|
38df819817
|
fix(library/init/lean/expander): all identifiers in terms should be ident_univs
|
2019-01-01 23:59:23 +01:00 |
|
Sebastian Ullrich
|
0cf88598d2
|
feat(library/init/lean/parser/declaration): stricter grammar for universe parameters and non-optional declaration types
|
2018-12-19 14:41:17 +01:00 |
|
Sebastian Ullrich
|
0a63d39247
|
refactor(library/init/lean): syntax.mk_app'/mk_app ~> syntax.mk_app/mk_capp
|
2018-12-14 17:37:37 +01:00 |
|
Sebastian Ullrich
|
9c9e642210
|
feat(library/init/lean/elaborator): universe operators, subtype
|
2018-12-06 13:23:12 +01:00 |
|
Sebastian Ullrich
|
4b3995fac3
|
refactor(library/init/lean/parser/term): factor out opt_type parser
|
2018-12-06 13:23:12 +01:00 |
|
Sebastian Ullrich
|
143ac0e58a
|
feat(library/init/lean/expander): also normalize bracketed binders in e.g. declarations
|
2018-12-06 13:23:12 +01:00 |
|
Sebastian Ullrich
|
ee9c26947c
|
feat(library/init/lean/elaborator): structure instances
|
2018-11-22 17:28:19 +01:00 |
|
Sebastian Ullrich
|
32e3e8a336
|
feat(library/init/lean/elaborator): sort_app, explicit
|
2018-11-21 18:13:38 +01:00 |
|
Sebastian Ullrich
|
cc93a2eb89
|
feat(library/init/lean/expander): extend "simple binders" to pi, expand pi
|
2018-11-21 18:13:38 +01:00 |
|
Sebastian Ullrich
|
a4b9cc83b8
|
feat(library/init/lean/{expander,elaborator}): progress
|
2018-11-21 18:13:38 +01:00 |
|
Sebastian Ullrich
|
222fff8862
|
refactor(library/init/lean/elaborator): introduce simple lambda binder
|
2018-11-21 18:13:38 +01:00 |
|
Sebastian Ullrich
|
c8eaee74b4
|
feat(frontends/lean,library/init/lean/parser/combinators): add node_longest_choice! macro
|
2018-11-19 18:02:28 +01:00 |
|
Sebastian Ullrich
|
d10ff29bea
|
fix(library/init/lean/parser/term): placeholder binder after bracketed binder
|
2018-11-19 13:38:45 +01:00 |
|
Sebastian Ullrich
|
cd287629cb
|
feat(library/init/lean/elaborator): initial version of translating syntax trees to preterms
|
2018-11-19 13:38:45 +01:00 |
|
Sebastian Ullrich
|
9e8dfbad79
|
perf(library/init/lean/parser): reintroduce separate syntax.ident constructor with much simpler and more efficient encoding
|
2018-11-18 16:55:04 +01:00 |
|
Leonardo de Moura
|
6eca6bdb0e
|
perf(library/init/lean/parser/term): avoid eta-expansion issues
cc @kha
|
2018-11-08 16:21:37 -08:00 |
|
Sebastian Ullrich
|
0d7ea62f9a
|
perf(frontends/lean/elaborator,library/init/lean): put out_params first to benefit from instance pre-filtering
|
2018-10-30 17:43:05 +01:00 |
|
Sebastian Ullrich
|
1d0456adf5
|
fix(library/init/lean/parser/term): revert refactoring that broke sort_apps of Type
|
2018-10-17 09:13:52 +02:00 |
|
Sebastian Ullrich
|
a820b9955f
|
perf(library/init/lean/parser/term): index term parsers by leading token
66% speedup on core.lean
|
2018-10-15 10:21:08 +02:00 |
|
Sebastian Ullrich
|
8a88d4d5e2
|
feat(library/init/lean/parser/token): string literals
hard-coded for now because we do not have general support for variable-length
tokens yet
|
2018-10-13 08:11:36 -07:00 |
|
Sebastian Ullrich
|
758d258210
|
fix(library/init/lean/parser/term): rename term.ident to ident_univs to remove confusion with ident
`protected` didn't do anything here
|
2018-10-13 08:11:36 -07:00 |
|
Sebastian Ullrich
|
959948b901
|
feat(library/init/lean): even more core.lean progress
|
2018-10-03 16:00:08 -07:00 |
|
Sebastian Ullrich
|
ca8e75be9e
|
fix(library/init/lean/elaborator): check for and consume end of input
|
2018-10-03 16:00:08 -07:00 |
|
Sebastian Ullrich
|
0563c60b1a
|
feat(library/init/lean/elaborator): add coroutine, use it to implement section/namespace elaborators (they don't do anything yet except for checking the end name)
|
2018-10-02 14:55:28 -07:00 |
|
Sebastian Ullrich
|
b8b39585ec
|
fix(library/init/lean/parser/command): variable may take unbracketed binder
|
2018-10-02 14:55:28 -07:00 |
|
Sebastian Ullrich
|
fc5120290f
|
feat(library/init/lean/parser/term): inductive levels, let, structure instances
|
2018-10-02 14:55:28 -07:00 |
|
Sebastian Ullrich
|
7d8c3c5db8
|
feat(library/init/lean/parser/term): use longest_match for Pratt parsing
|
2018-10-01 09:02:39 -07:00 |
|
Sebastian Ullrich
|
945bf39e05
|
feat(library/init/lean): progress
|
2018-09-28 20:50:18 -07:00 |
|
Sebastian Ullrich
|
e661aaeacf
|
refactor(library/init/lean/parser): store registered parsers in configs, use config hierarchy to avoid mutually recursive types
And other refactorings along the way
|
2018-09-27 10:05:10 -07:00 |
|
Sebastian Ullrich
|
bba8beca63
|
feat(library/init/lean/parser/token): give number a view
|
2018-09-25 14:18:52 -07:00 |
|
Sebastian Ullrich
|
4afcc0aab0
|
fix(library/init/lean/parser/term): do not allow mixing bracketed and unbracketed binders
|
2018-09-25 09:16:02 -07:00 |
|
Sebastian Ullrich
|
15927f21c9
|
refactor(library/init/lean/parser/token): unicode_symbol parser
|
2018-09-25 09:16:02 -07:00 |
|
Sebastian Ullrich
|
32f4d52e1c
|
refactor(library/init/lean): revert introduction of tysyntax; push syntax.missing through views
|
2018-09-24 18:24:27 -07:00 |
|
Sebastian Ullrich
|
ed0a8a8827
|
feat(library/init/lean/parser/combinators): make optional's view default to none
|
2018-09-24 09:53:28 -07:00 |
|
Sebastian Ullrich
|
76ea8169bc
|
feat(library/init/lean/expander): prefix ~> notation macro: construct RHS, move to new module
|
2018-09-24 09:53:28 -07:00 |
|
Sebastian Ullrich
|
41c0bc87fd
|
refactor(library/init/lean/parser): make views shallow via tysyntax
|
2018-09-22 21:24:38 -07:00 |
|
Sebastian Ullrich
|
b859560a83
|
feat(library/init/lean/parser/term): @/@@ notation
|
2018-09-20 09:40:21 -07:00 |
|