Commit graph

26011 commits

Author SHA1 Message Date
Leonardo de Moura
315dcebca4 chore: update stage0 2020-01-13 13:01:33 -08:00
Leonardo de Moura
2b1869790c feat: add tactic parser attributes 2020-01-13 13:00:19 -08:00
Simon Hudon
dd6e95c718 fix: lowercase error messages 2020-01-12 11:05:48 -08:00
Leonardo de Moura
6c9d408799 chore: update stage0 2020-01-12 10:57:08 -08:00
Sebastian Ullrich
2e5f62d44f test: parser/macro macros 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
586f515470 fix: global name resolution of macro-introduced idents 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
3f63635388 refactor: use adaptExpander in Elab.Quotation 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
05d216beb0 feat: command elaboration step trace 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
8d021e0cec fix: fresh macro scope per command 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
82078fba84 chore: make Syntax.reprint output without source info more readable 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
c08fcdb662 chore: ad-hoc match_syntax support in the new frontend 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
db2218cbfd feat: support antiquotation splices mixed with other items (quotation terms only) 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
753ecab6c1 feat: support macro-generated parser! 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
c6100ed25f feat: antiquoting rawIdent 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
912011f12f fix: variable patterns in match_syntax 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
437e1b7245 fix: elaboration of macro-generated defs 2020-01-12 10:32:27 -08:00
Sebastian Ullrich
b18e0a3373 feat: support expanding into multiple commands 2020-01-12 10:32:27 -08:00
Leonardo de Moura
64ef03d736 chore: lowercase error messages
@cipher1024 We use lowercase error messages in Lean. I know other
systems capitalize, but we need consistency.
2020-01-12 08:21:26 -08:00
Leonardo de Moura
07edbd395e chore: update stage0 2020-01-12 08:14:37 -08:00
Simon Hudon
6d8927da10 fix: little details 2020-01-12 08:02:48 -08:00
Simon Hudon
92c8773137 feat: file IO using handles 2020-01-12 08:02:48 -08:00
Leonardo de Moura
354678a5e4 chore: missing files 2020-01-11 19:17:21 -08:00
Leonardo de Moura
b508f1854d chore: update stage0 2020-01-11 15:35:11 -08:00
Leonardo de Moura
bfe8c6d060 feat: prevent adversarial users from using hugeFuel in actual code 2020-01-11 15:34:39 -08:00
Leonardo de Moura
c358d688c6 chore: fix tests 2020-01-11 15:20:37 -08:00
Leonardo de Moura
6d77aa20aa feat: catch deep recursion at MetaM, TermElabM and CommandElabM
cc @Kha
2020-01-11 15:03:58 -08:00
Leonardo de Moura
f83678f19b chore: fix test 2020-01-11 13:55:31 -08:00
Leonardo de Moura
6762f8ea9a test: old frontend exports at new frontend
We can now "see" exports made in the old frontend in the new one.

cc @dselsam @kha
2020-01-11 13:50:18 -08:00
Leonardo de Moura
3e233b6f3d chore: update stage0 2020-01-11 13:46:10 -08:00
Leonardo de Moura
5eebda7e34 chore: add workaround for allowing new frontend to see old frontend exports 2020-01-11 13:44:22 -08:00
Leonardo de Moura
246e0a5532 fix: propagate type before synthesizeSyntheticMVars 2020-01-11 12:01:12 -08:00
Leonardo de Moura
c729973742 fix: restore state when catching postpone
Reason: avoid error messages to be generated multiple times; avoid
internal postponed mvars to leak; etc
2020-01-11 11:57:39 -08:00
Leonardo de Moura
2735b487f3 chore: update stage0 2020-01-11 09:05:05 -08:00
Leonardo de Moura
82a36fbfe2 feat: declare_syntax_cat without importing Init.Lean
cc @Kha
2020-01-11 09:02:50 -08:00
Leonardo de Moura
95ed5bd468 chore: fix test 2020-01-10 21:26:09 -08:00
Leonardo de Moura
e817257922 feat: elaborate declare_syntax_cat
TODO: `registerParserCategory` uses `registerAttribute` which relies
on the environment having a declaration of type `AttributeImpl`.
This is bad since forces users to import `Init.Lean`.

@Kha The key problem is that we cannot serialize `AttributeImpl`.
I will try to address this issue tomorrow. I am considering different
workarounds.
2020-01-10 21:10:02 -08:00
Leonardo de Moura
142991ed4d chore: update stage0 2020-01-10 20:38:23 -08:00
Leonardo de Moura
80e00a87c6 feat: add declare_syntax_cat command parser 2020-01-10 20:38:08 -08:00
Leonardo de Moura
799914daf2 feat: registerParserCategory 2020-01-10 20:32:16 -08:00
Leonardo de Moura
3c8d8c7434 feat: add attributeExtension 2020-01-10 19:51:53 -08:00
Leonardo de Moura
48600dbbfc refactor: registerAttribute ==> registerBuiltinAttribute 2020-01-10 17:08:12 -08:00
Leonardo de Moura
6fc158f550 chore: update stage0 2020-01-10 15:22:16 -08:00
Leonardo de Moura
f783115d21 refactor: SyntaxNode => Syntax at TermElab and CommandElab
@Kha It is too annoying to write `.val` all over the place. Moreover,
we now have `match_syntax`.
2020-01-10 15:17:58 -08:00
Leonardo de Moura
f73ff914eb feat: extensible elaboration functions
@kha `termParserAttr.lean` has a small example
2020-01-10 15:05:14 -08:00
Leonardo de Moura
f60c8c6249 test: add kabstract tests 2020-01-10 13:30:50 -08:00
Leonardo de Moura
63cd3a8c41 fix: nontermination at isDefEqOffset 2020-01-10 13:25:20 -08:00
Leonardo de Moura
06b6beb9f7 feat: add kabstract 2020-01-10 13:10:03 -08:00
Leonardo de Moura
3077d13b56 feat: add HeadIndex 2020-01-10 11:58:22 -08:00
Leonardo de Moura
947438afbe feat: add Occurrences 2020-01-10 11:06:36 -08:00
Leonardo de Moura
a76b104f61 chore: move Message to Lean 2020-01-10 10:58:50 -08:00