Leonardo de Moura
4b37c5ad04
test: add new_frontend command test
2020-01-06 21:02:25 -08:00
Leonardo de Moura
24f1479758
chore: remove workaround
2020-01-06 16:44:08 -08:00
Leonardo de Moura
20c0a63908
feat: add support for optParam
2020-01-06 16:41:48 -08:00
Leonardo de Moura
bccaaa7af0
fix: bug at lit_type binding
...
cc @kha
2020-01-06 15:44:38 -08:00
Leonardo de Moura
865ef32e91
feat: add parser! and tparser! elaborators
...
@Kha It is not convenient to use because
1- Coercions have not been implemented
2- Autoparams have not been implemented
3- There is bug the `Expr.lit` type checker
4- The new frontend uses a different mechanism for `export`. So,
`export`s in imported files compiled with the old frontend do not work.
I am working on these issues.
2020-01-06 15:10:35 -08:00
Leonardo de Moura
6c474a1eb6
test: add tests/lean/newfrontend
...
cc @Kha
2020-01-06 14:07:22 -08:00
Leonardo de Moura
911e9535b9
feat: elabDefLike
2020-01-06 12:10:08 -08:00
Sebastian Ullrich
bece6f7a32
feat: command quotations
2020-01-06 10:09:26 -08:00
Leonardo de Moura
5be180910f
test: add applyAttributes test
2020-01-05 16:27:22 -08:00
Leonardo de Moura
0231841984
feat: applyAttributes
2020-01-05 16:22:46 -08:00
Leonardo de Moura
c233225153
feat: add mkForallUsedOnly
...
This commit also fixes a bug at `mkBinding` for unused let-decls
2020-01-05 11:53:39 -08:00
Leonardo de Moura
bc7455e04e
refactor: CommandElabM and FrontendM in IO
2020-01-03 18:15:45 -08:00
Leonardo de Moura
e949a052ba
feat: elaborate where
2020-01-02 15:01:26 -08:00
Leonardo de Moura
16aff9a182
feat: elaborate have
2020-01-02 14:16:20 -08:00
Leonardo de Moura
9f69991d80
feat: elaborate show notation
2020-01-02 13:30:11 -08:00
Leonardo de Moura
a3675b99e6
feat: add parameter postponeOnError : Bool to synthesizeSyntheticMVarsStep
...
@Kha: I implemented the option 2 I described on Zulip.
2020-01-02 13:13:58 -08:00
Leonardo de Moura
db96b08257
feat: elaborate anonymous constructor
2020-01-02 10:41:04 -08:00
Leonardo de Moura
0ffd1526bd
feat: elaborate subtype
2020-01-02 10:12:19 -08:00
Leonardo de Moura
8f805f5d2f
feat: elaborate if-then-else
2020-01-01 16:12:26 -08:00
Leonardo de Moura
cbe65a068e
fix: addLValArg
2020-01-01 16:02:55 -08:00
Leonardo de Moura
2ca96cb2b0
feat: include macroStack in error messages
2020-01-01 15:19:04 -08:00
Leonardo de Moura
9d25a45074
feat: elaborate character literals
2020-01-01 14:37:40 -08:00
Leonardo de Moura
434c148800
test: add termElab attribute test
2020-01-01 14:16:49 -08:00
Leonardo de Moura
d22abd85dd
test: minimal repro for evalConst crash
2020-01-01 11:02:38 -08:00
Leonardo de Moura
28a4859832
feat: expose evalConst
...
@Kha Could you please check `lean_eval_const`?
2019-12-30 11:41:36 -08:00
Leonardo de Moura
b1570ba865
feat: elaborate sortApp
2019-12-30 11:00:13 -08:00
Leonardo de Moura
74741bf613
feat: elaborate explicit universe levels
2019-12-30 10:52:22 -08:00
Sebastian Ullrich
6fc47e4baf
fix: match_syntax should not check kind of anonymous antiquotations
2019-12-30 08:24:29 -08:00
Sebastian Ullrich
881e3bf490
fix: raise precedence inside antiquotation parser
2019-12-30 08:24:29 -08:00
Sebastian Ullrich
81381d5c77
feat: make all antiquotation kinds optional
2019-12-30 08:24:29 -08:00
Sebastian Ullrich
22e6b6c34a
test: quotation kinds
2019-12-30 08:24:29 -08:00
Sebastian Ullrich
ebde775671
fix: invoke new parser from old one with maximum precedence
2019-12-30 08:24:29 -08:00
Sebastian Ullrich
1a7cd0e54d
feat: support ident antiquotations (inside term parsers, for now)
2019-12-30 08:24:29 -08:00
Sebastian Ullrich
9bf8c96502
feat: save original node kind in antiquot node kind for checking in match_syntax
2019-12-30 08:24:29 -08:00
Leonardo de Moura
f5741af39d
test: minimal repro for Borrow.lean bug
2019-12-22 19:16:23 -08:00
Leonardo de Moura
bceb02951c
feat: better postpone messages
2019-12-22 10:24:22 -08:00
Leonardo de Moura
d53c5a31cb
refactor: use PersistentArray to implement MessageLog
...
Motivation: consistency. Now, Traces and MessageLog use the same datastructure.
2019-12-22 08:11:20 -08:00
Leonardo de Moura
7490c34b54
chore: fix tests
...
- Delayed assignments do not become regular assignments anymore.
- We can instantiate mvas more aggressively in the new design.
2019-12-21 16:03:44 -08:00
Leonardo de Moura
a32fd2e693
feat: implement design documented at 868a217202
2019-12-21 15:53:36 -08:00
Leonardo de Moura
fdfff29bb1
feat: expose liftLooseBVars and lowerLooseBVars
2019-12-21 08:57:11 -08:00
Leonardo de Moura
5adadc3158
test: document let issue
...
TODO: fix issue at `Meta.mkLambda` when some of the free variables are let-declarations.
2019-12-19 17:29:26 -08:00
Leonardo de Moura
d2d6e85719
feat: add forRevM
2019-12-19 17:24:29 -08:00
Leonardo de Moura
93f4184125
feat: elaborate let
2019-12-19 17:00:19 -08:00
Leonardo de Moura
8431303999
test: new test
2019-12-19 14:45:17 -08:00
Leonardo de Moura
bfca7e32e0
fix: try to postpone if function type is not known
2019-12-19 14:20:56 -08:00
Leonardo de Moura
8d81e89e53
feat: elaborate $.
2019-12-19 14:16:28 -08:00
Leonardo de Moura
57f6881c6c
feat: restore state when catching Exception.postpone
...
cc @Kha
2019-12-19 13:21:11 -08:00
Leonardo de Moura
3e5527219f
test: add foldl test
2019-12-19 12:06:47 -08:00
Leonardo de Moura
eb24ec56dc
feat: add array literal notation
2019-12-19 11:42:39 -08:00
Leonardo de Moura
fc5fb07fc3
fix: mkFreshExprMVar
2019-12-19 11:13:22 -08:00