Leonardo de Moura
a1413b8fa1
feat: cache failures at isDefEq
...
We can compile Lean with these changes, but 3 tests are still broken.
This cache is used to address a performance issue reported at
https://leanprover.zulipchat.com/#narrow/stream/270676-lean4/topic/deterministic.20timeout.20with.20structures/near/288180087
2022-07-03 21:52:01 -07:00
Leonardo de Moura
2ebcf29cde
chore: use a[i]! for array accesses that may panic
2022-07-02 15:12:05 -07:00
Leonardo de Moura
e8935d996b
chore: String.get?, String.getOp?, and remove String.getOp
2022-07-02 09:59:04 -07:00
Leonardo de Moura
598898a087
fix: fixes #1265
2022-06-29 12:41:14 -07:00
Sebastian Ullrich
3ed910a043
refactor: rename AsyncList.asyncTail to delayed
...
I often found the terminology confusing as it is inconsistent with
`List.tail`
2022-06-29 17:08:15 +02:00
Sebastian Ullrich
ae683af9c2
refactor: merge AsyncList.updateFinishedPrefix/finishedPrefix
...
We only ever use both of them together, and forgetting to call the first
one first could lead to subtle bugs.
2022-06-29 17:08:15 +02:00
Leonardo de Moura
98b8e300e1
feat: add evalTerm and Meta.evalExpr
...
These functions were in Mathlib 4.
2022-06-28 19:14:40 -07:00
Sebastian Ullrich
80217cfa90
fix: asynchronous head snapshot fallout
2022-06-28 16:54:29 -07:00
Sebastian Ullrich
22475b8669
refactor: introduce common TSyntax abbreviations
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
6af00ff23e
chore: changes to placate coercions
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
c2166fc602
chore: work around parameterized parser syntax kinds
...
We should find a better solution for calling parameterized parsers such
as `matchAlt` than these helper definitions that confuse the antiquotations.
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
d499e67c87
fix: incorrect antiquotation kind annotations
...
Apparently, none of them led to incorrect syntax trees, but `TSyntax`
still disapproves.
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
5e334b3e90
chore: postpone TSyntax adoption for some parts
...
The namespace `TSyntax.Compat` can be opened for a coercion
`Syntax -> TSyntax k` for any `k`, as otherwise this PR would never be done.
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
86cd656fc6
refactor: adapt raw syntax manipulations to TSyntax
...
Sometimes there's just no structure to work on
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
498c7a6a97
refactor: remove some unnecessary antiquotation kind annotations
...
These are just the ones I stumbled upon, there should be a lot more now
rendered obsolete by the coercions.
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
a78302243c
refactor: strengthen Syntax signatures
...
Most notable change: `Quote` is now parameterized by the target kind.
Which means that `Name` etc. could actually have different
implementations for quoting into `term` and `level`, if that need ever
arises.
2022-06-27 22:37:02 +02:00
Sebastian Ullrich
0bd864deca
fix: nesting of pattern info nodes
2022-06-27 22:37:02 +02:00
Leonardo de Moura
6ebae968a7
feat: use IO.getRandomBytes to initialize random seed
...
See https://github.com/leanprover/lean4-samples/pull/2
2022-06-27 13:01:20 -07:00
Sebastian Ullrich
8979ed42a4
refactor: file worker: wait on header task before dispatching requests
2022-06-24 19:02:00 +02:00
Sebastian Ullrich
e14b4ab0e4
feat: file worker: make header snapshot asynchronous
2022-06-24 19:02:00 +02:00
Sebastian Ullrich
17c2e6d529
feat: publish fatal progress after worker crash
2022-06-23 09:24:27 -07:00
Sebastian Ullrich
1f13729756
feat: show term goal at end of term as well
2022-06-23 14:44:19 +02:00
Sebastian Ullrich
ce054fb2e7
fix: introduce semicolonOrLinebreak, replace many(1) with sepBy(1) where appropriate
2022-06-16 23:33:57 +02:00
Mariana Alanis
198179d0cc
fix: add a better handling in case only worker crashes (apply CR comments)
2022-06-15 18:40:44 -07:00
Mariana Alanis
e61799a77f
fix: add a better handling in case only worker crashes (CR comments)
2022-06-15 18:40:44 -07:00
Mariana Alanis
30f3d6f82d
fix: add a better handling in case only worker crashes (CR comments)
2022-06-15 18:40:44 -07:00
Mariana Alanis
4d7d82af86
fix: add a better handling in case only worker crashes (CR comments)
2022-06-15 18:40:44 -07:00
Mariana Alanis
b0f9754e0f
fix: add a better handling in case only worker crashes
2022-06-15 18:40:44 -07:00
Mariana Alanis
6b75ca9734
fix: add a better handlng in case only worker crashes (and server stays available)
2022-06-15 18:40:44 -07:00
Leonardo de Moura
22c8f10b12
chore: remove constant command
2022-06-14 17:14:28 -07:00
Leonardo de Moura
77ae79be46
chore: use let/if in do blocks
2022-06-13 17:10:14 -07:00
E.W.Ayers
2edf02544e
chore: rm ExprWithCtx
...
We will make this a separate PR
2022-06-13 16:32:01 -07:00
E.W.Ayers
367bde3601
chore: revert "refactor: replace InfoWithCtx with ExprWithCtx"
...
This reverts commit db342793d53c986b8794084196552c33711f9091.
2022-06-13 16:32:01 -07:00
E.W.Ayers
f64cb95eca
refactor: replace InfoWithCtx with ExprWithCtx
...
This is potentially controversial. There are still some [todo]s that need sorting.
2022-06-13 16:32:01 -07:00
E.W.Ayers
3d561a3ab0
doc: add docstrings for interactive
2022-06-13 16:32:01 -07:00
E.W.Ayers
e3d2080232
refactor: PPExprTaggedRequest -> PPExprTaggedParams
2022-06-13 16:32:01 -07:00
E.W.Ayers
fd66e70d1e
fix: explicit structure for PPExprTaggedRequest
2022-06-13 16:32:01 -07:00
Wojciech Nawrocki
351be06a21
feat: ppExprTagged RPC call
2022-06-13 16:32:01 -07:00
Wojciech Nawrocki
4972f214be
fix: sorried errors in rpcServerMethod
2022-06-13 16:32:01 -07:00
Sebastian Ullrich
8c377436f4
fix: do not report unused variables in unfinished declarations
2022-06-10 11:27:11 +02:00
Leonardo de Moura
041827bed5
chore: unused variables
2022-06-07 17:54:10 -07:00
Sebastian Ullrich
fb2a2b3de2
fix: fixup previous commit
2022-06-07 16:37:45 -07:00
Sebastian Ullrich
ae7b895f7a
refactor: unname some unused variables
2022-06-07 16:37:45 -07:00
Sebastian Ullrich
05c5dd4441
fix: unused variables linter: search fvar aliases in tactics
2022-06-03 22:37:38 +02:00
larsk21
b556e73657
refactor: extend Lsp.ModuleRefs in Server.References
2022-06-03 13:03:52 +02:00
larsk21
37d5f8e74a
feat: add unused variables linter
2022-06-03 13:03:52 +02:00
larsk21
8824a479a5
fix: add additional information to Lean.Server.Reference
2022-06-03 13:03:52 +02:00
Leonardo de Moura
484e510221
feat: do not use pp.inaccessibleNames = true at getInteractiveTermGoal
...
See discussion at https://github.com/leanprover/vscode-lean4/issues/76
We also use `pp.inaccessibleNames = false` in error messages. In this
setting, an inaccessible name is displayed in the context only if the
target type depends on it.
2022-06-02 16:22:43 -07:00
Sebastian Ullrich
1fff412b1f
fix: regressions from previous commit
2022-06-02 19:04:47 +02:00
Sebastian Ullrich
ddfbf6bf9b
fix: show namespace when hovering over declaration name
2022-06-02 18:17:21 +02:00