Leonardo de Moura
d0ade7ff08
feat: extend doBlock expander
...
- Add support for `if h:c then t else e`, `h` may shadow reassignable
variables
- Pattern variables in `match` alternatives may shadow reassignable
variables
- A single declaration/reassignment in a `do` block may
declare/reassign multiple variables. Example: `let (x, y) := t`
2020-10-01 10:40:55 -07:00
Leonardo de Moura
4e72530ce7
chore: let rec in do blocks
2020-10-01 10:40:11 -07:00
Leonardo de Moura
94c7945bd3
feat: do code blocks
...
WIP
2020-09-30 19:20:16 -07:00
Leonardo de Moura
a3218dd063
refactor: export Core.mkFreshUserName to Lean namespace
2020-09-30 11:21:46 -07:00
Leonardo de Moura
75cb42d8be
chore: improve try parser
2020-09-30 07:12:04 -07:00
Leonardo de Moura
0911b9bc80
feat: add missing features to do notation parser
2020-09-30 06:51:25 -07:00
Leonardo de Moura
0fe705f3a1
feat: improve error messages for unassigned metavariables
...
cc @Kha
2020-09-29 17:18:03 -07:00
Sebastian Ullrich
16c71e6a26
fix: IO.Process.output
2020-09-29 08:01:10 -07:00
Sebastian Ullrich
ab6b6ac3ba
feat: add dedicated task priority
2020-09-29 08:01:10 -07:00
Sebastian Ullrich
562c7ed5ce
feat: expose task priorities
2020-09-29 08:01:10 -07:00
Sebastian Ullrich
3b8d473188
fix: alloc: do not forget about orphaned pages
2020-09-29 08:01:10 -07:00
Sebastian Ullrich
9dffc61e27
fix: free lthread resources on Windows
2020-09-29 08:01:10 -07:00
Sebastian Ullrich
19dcbdcec9
fix: do not format Syntax in Messages eagerly
2020-09-29 07:59:22 -07:00
Sebastian Ullrich
d51101b884
feat: sanitize Syntax in messages
...
Fixes #182
2020-09-29 07:59:22 -07:00
Sebastian Ullrich
b4ea61e79d
fix: NameSet.insert return type
2020-09-29 07:59:22 -07:00
Sebastian Ullrich
af8dc5eeab
feat: pretty print Syntax in messages
2020-09-29 07:59:22 -07:00
Sebastian Ullrich
2d8c7e4fd0
fix: MetaM.run'
2020-09-29 07:59:22 -07:00
Sebastian Ullrich
6ad47878ef
chore: improve error message using (<- ...) outside of do
2020-09-29 07:59:22 -07:00
Leonardo de Moura
49c5c5c08a
fix: horrible error message due to constApprox := true
...
The new test `typeMismatch.lean` contains two examples where the error
message was dreadful.
2020-09-29 07:54:48 -07:00
Leonardo de Moura
b989c48b8b
fix: missing catch
2020-09-28 19:55:53 -07:00
Leonardo de Moura
31e1492a34
fix: add temporary hack until we have optional tokens in match_syntax
...
cc @Kha
2020-09-28 17:11:00 -07:00
Leonardo de Moura
ba41dad9a4
feat: add evalFocus
2020-09-28 17:11:00 -07:00
Leonardo de Moura
e1ad5a948b
feat: add focus tactic parser
2020-09-28 17:11:00 -07:00
Leonardo de Moura
e10edde5cd
feat: optional ; in terms
2020-09-28 17:10:59 -07:00
Leonardo de Moura
d4c1432574
fix: tacticSeqBracketed
2020-09-28 17:10:59 -07:00
Leonardo de Moura
2755972447
fix: missing checkColGt and tests
2020-09-28 17:10:59 -07:00
Leonardo de Moura
f45fa34cba
feat: optional ; at tacticSeq1Indented
2020-09-28 17:10:59 -07:00
Leonardo de Moura
7f9013e496
fix: seq1Unbox
2020-09-28 17:10:59 -07:00
Leonardo de Moura
85d8c4fa85
chore: add proper kind for tacticSeq1Indented
2020-09-28 17:10:59 -07:00
Leonardo de Moura
aa410283c6
fix: we don't want antiquotation for seq1
2020-09-28 17:10:59 -07:00
Leonardo de Moura
fba1571fdf
chore: add evalSeq1
2020-09-28 17:10:58 -07:00
Leonardo de Moura
cb55ffae94
chore: add new tactic syntax kind
2020-09-28 17:10:58 -07:00
Leonardo de Moura
b9104d069e
chore: adjust code
2020-09-28 17:10:58 -07:00
Leonardo de Moura
861fd11a57
chore: add tacticSeq node
...
We use `$tac:tacticSeq` in many places, and we want them to match
the bracketed and indented cases.
2020-09-28 17:10:58 -07:00
Leonardo de Moura
a20b1beea4
chore: cleanup
2020-09-28 17:10:58 -07:00
Leonardo de Moura
6f211d3449
chore: adjust tactic parser
2020-09-28 17:10:57 -07:00
Leonardo de Moura
93090baa82
chore: cleanup tactic syntax
2020-09-28 17:10:57 -07:00
Leonardo de Moura
96a0fb41be
feat: optional ; in do notation
2020-09-28 17:10:57 -07:00
Leonardo de Moura
08d54b6043
feat: add checkColGt at app
...
@Kha Only one example broke :)
2020-09-28 17:10:57 -07:00
Leonardo de Moura
1fcdbaf223
feat: add withoutPosition combinator
2020-09-28 17:10:57 -07:00
Leonardo de Moura
783fd1c160
chore: use bracketed do in quotations
2020-09-28 17:10:56 -07:00
Leonardo de Moura
6ddec22763
refactor: simplify withPosition combinator
...
Add `checkColGt`
2020-09-28 17:10:56 -07:00
Leonardo de Moura
9ab65b642f
feat: add auxiliary Code type for expanding the new do notation
...
We also document the basic operations we are going to use.
2020-09-27 18:20:41 -07:00
Leonardo de Moura
39f8fd8eb9
fix: trailing ';' at end of input
2020-09-27 16:58:23 -07:00
Leonardo de Moura
453ce9b3b8
feat: add eoi parser
2020-09-27 16:54:19 -07:00
Leonardo de Moura
7dcd011be0
chore: improve notFollowedBy at doExpr
...
cc @Kha
2020-09-27 06:59:43 -07:00
Leonardo de Moura
8e81db0d2b
chore: add temporary workaround to tests
...
We will remove it after we implement `doMatch`
2020-09-27 06:58:10 -07:00
Leonardo de Moura
2d4b7e7952
feat: add doMatch parser
2020-09-27 06:29:21 -07:00
Leonardo de Moura
a0a724ddbd
fix: tests and elabDo
2020-09-26 19:12:01 -07:00
Leonardo de Moura
8f27848d82
chore: preparing for "reassignment" notation
2020-09-26 18:16:35 -07:00