Leonardo de Moura
|
b6079e12b8
|
feat: expand macros infix, infixl, infixr, prefix, and postfix
|
2020-09-07 16:35:25 -07:00 |
|
Leonardo de Moura
|
98a1ac04cf
|
chore: update stage0
|
2020-09-07 15:56:58 -07:00 |
|
Leonardo de Moura
|
804ebcec16
|
feat: adjust mixfix syntax
|
2020-09-07 15:55:02 -07:00 |
|
Leonardo de Moura
|
aed9b16dc8
|
feat: add MatcherInfo extension
|
2020-09-07 15:08:21 -07:00 |
|
Leonardo de Moura
|
fded18d114
|
chore: mkElim ==> mkMatcher
|
2020-09-07 14:33:39 -07:00 |
|
Leonardo de Moura
|
43b593a888
|
feat: check for nonsensical declaration modifiers combinations
|
2020-09-07 12:36:58 -07:00 |
|
Leonardo de Moura
|
91363bae19
|
feat: improve resolveLVal
|
2020-09-07 12:25:43 -07:00 |
|
Leonardo de Moura
|
7809fe0b01
|
fix: def+match macro
|
2020-09-07 11:34:53 -07:00 |
|
Leonardo de Moura
|
a12bc273bb
|
refactor: src/Lean/Meta/EqnCompiler ==> src/Lean/Meta/Match
|
2020-09-07 11:09:48 -07:00 |
|
Leonardo de Moura
|
d959f15cbd
|
chore: update stage0
|
2020-09-07 08:44:16 -07:00 |
|
Leonardo de Moura
|
87db970cfa
|
chore: control code size explosion
|
2020-09-07 08:42:39 -07:00 |
|
Leonardo de Moura
|
67d31f60c6
|
chore: update stage0
|
2020-09-07 08:31:28 -07:00 |
|
Leonardo de Moura
|
936b8d34dd
|
chore: add auxiliary declaration to stop specialization
|
2020-09-07 08:30:08 -07:00 |
|
Leonardo de Moura
|
02967117ae
|
chore: update stage0
|
2020-09-07 08:09:55 -07:00 |
|
Leonardo de Moura
|
ddf12c91c2
|
fix: do not consider auxiliary declarations as local instances
|
2020-09-07 08:08:35 -07:00 |
|
Leonardo de Moura
|
36bc65385d
|
chore: naming convention
|
2020-09-07 08:03:41 -07:00 |
|
Leonardo de Moura
|
79130bc3f9
|
feat: add addAndCompilePartial
|
2020-09-07 07:56:11 -07:00 |
|
Leonardo de Moura
|
f30b5bdcba
|
chore: control code size explosion
|
2020-09-07 07:23:44 -07:00 |
|
Leonardo de Moura
|
81582e4482
|
feat: break PreDefinitions into strongly connected components
|
2020-09-06 14:22:06 -07:00 |
|
Leonardo de Moura
|
56e6b9b398
|
feat: add Tarjan's SCC
|
2020-09-06 14:19:59 -07:00 |
|
Leonardo de Moura
|
565d617bab
|
chore: fix test
|
2020-09-06 08:57:33 -07:00 |
|
Leonardo de Moura
|
35a81e80d6
|
refactor: move PreDeclaration (now PreDefinition) to its own module
|
2020-09-06 08:54:38 -07:00 |
|
Leonardo de Moura
|
d0993d07a1
|
chore: rename Definition.lean => DefView.lean
|
2020-09-06 08:40:48 -07:00 |
|
Leonardo de Moura
|
6704468f07
|
feat: add coeId instance
Add an example showing why it is useful.
TODO: reconsider whether we should use the approximation described in
the new test or not.
|
2020-09-06 08:27:26 -07:00 |
|
Leonardo de Moura
|
d8855c2673
|
feat: elaborate all definitions using elabMutualDef
|
2020-09-06 07:23:47 -07:00 |
|
Leonardo de Moura
|
102d2ae57d
|
fix: avoid unnecessary reduction
```lean
forallBoundedTelescope `(Nat -> IO Nat) 1 fun xs type => ...
```
should assign `IO Nat` to `type` instead of `IO.RealWorld -> ...`
|
2020-09-06 06:57:52 -07:00 |
|
Leonardo de Moura
|
dc60739bd6
|
feat: partition non recursive
|
2020-09-05 09:22:18 -07:00 |
|
Leonardo de Moura
|
3ae3c51a8c
|
feat: add Array.partition
|
2020-09-05 08:48:15 -07:00 |
|
Leonardo de Moura
|
52aef7611a
|
chore: fix val vs value naming convention
|
2020-09-05 08:38:37 -07:00 |
|
Leonardo de Moura
|
fbe18ee84c
|
feat: addAndCompileNonRec
|
2020-09-05 08:32:56 -07:00 |
|
Leonardo de Moura
|
4e7ca37204
|
chore: use Lean version
|
2020-09-05 08:15:53 -07:00 |
|
Leonardo de Moura
|
61670a773a
|
chore: update stage0
|
2020-09-05 08:04:32 -07:00 |
|
Leonardo de Moura
|
20c041b421
|
feat: mkUnsafeRecName and isUnsafeRecName? in Lean
|
2020-09-05 08:03:52 -07:00 |
|
Leonardo de Moura
|
91cedab090
|
feat: add addAndCompileAsUnsafe
|
2020-09-05 07:56:02 -07:00 |
|
Leonardo de Moura
|
9b788db91f
|
feat: compute level parameters for mutually recursive definitions
|
2020-09-05 07:34:26 -07:00 |
|
Leonardo de Moura
|
0d39c00782
|
feat: modifiers for 'let rec's
|
2020-09-05 06:48:38 -07:00 |
|
Leonardo de Moura
|
19be535fb3
|
chore: add TODO
|
2020-09-04 19:29:54 -07:00 |
|
Leonardo de Moura
|
7e0395a3b0
|
fix: code is reachable
|
2020-09-04 19:14:51 -07:00 |
|
Leonardo de Moura
|
d089a25f0e
|
chore: update stage0
|
2020-09-04 19:00:51 -07:00 |
|
Leonardo de Moura
|
250dc3e3a9
|
fix: adjust expanders and elaborators to new matchAlts node
|
2020-09-04 18:59:28 -07:00 |
|
Leonardo de Moura
|
8d72e4c1e8
|
chore: update stage0
|
2020-09-04 18:42:55 -07:00 |
|
Leonardo de Moura
|
7dc1b461fa
|
chore: give a proper node to matchAlts
|
2020-09-04 18:42:09 -07:00 |
|
Leonardo de Moura
|
70c42456b9
|
feat: expand intro+matchAlts macro
|
2020-09-04 18:22:56 -07:00 |
|
Leonardo de Moura
|
68d7b9d40b
|
chore: update stage0
|
2020-09-04 16:36:31 -07:00 |
|
Leonardo de Moura
|
a88b2be72a
|
feat: add intro + funMatchAlts syntax
|
2020-09-04 16:32:53 -07:00 |
|
Leonardo de Moura
|
ef64e1c25a
|
feat: fun+match macro
Example:
```
fun
| 0 => true
| _ => false
```
|
2020-09-04 16:23:01 -07:00 |
|
Leonardo de Moura
|
b2f932c4dc
|
feat: lift let rec expressions nested in a mutual block
|
2020-09-04 15:40:58 -07:00 |
|
Leonardo de Moura
|
12f69a78b7
|
chore: change meaning of lambdaTelescope
`lambdaTelescope` now only consumes `lambda`s.
`lambdaLetTelescope` implements the old behavior.
|
2020-09-04 13:35:17 -07:00 |
|
Leonardo de Moura
|
0199e93079
|
chore: add Array.erase
|
2020-09-04 13:35:01 -07:00 |
|
Leonardo de Moura
|
3dbd2b728b
|
feat: add Array.getMax?
|
2020-09-04 10:40:34 -07:00 |
|