Sebastian Ullrich
a1a9daedce
chore(tests/bench/report.py): go back to normalized tables
2019-08-15 14:24:23 +02:00
Leonardo de Moura
52b86c3b4b
chore(library/init/data/persistentarray/basic): missing "reset"
2019-08-14 16:22:35 -07:00
Leonardo de Moura
48fbd9d1ea
chore(stage0): update
2019-08-14 16:14:49 -07:00
Leonardo de Moura
8e37fc512b
fix(library/init/data/persistentarray/basic): bug at pop
...
fixes #28
2019-08-14 16:14:20 -07:00
Leonardo de Moura
92f880b0bf
chore(library/equations_compiler/elim_match): remove dead code
2019-08-14 14:39:34 -07:00
Leonardo de Moura
e9a63bf419
chore(frontends/lean/elaborator): remove recover_expr_from_exception
2019-08-14 14:20:15 -07:00
Leonardo de Moura
46a2e6f311
feat(library/init/lean/elaborator): add skeletons
2019-08-14 14:13:16 -07:00
Leonardo de Moura
e0a781063a
feat(library/init/lean/elaborator/term): expand and invoke old elaborator as fallback
2019-08-14 07:34:44 -07:00
Leonardo de Moura
e1588c3fe7
feat(library/init/lean/elaborator): add expected type
2019-08-14 07:16:24 -07:00
Leonardo de Moura
d002e550bb
chore(library/init/lean): filename ==> fileName
2019-08-13 19:51:04 -07:00
Leonardo de Moura
b77fcc4a0f
feat(library/init/lean/parser/command): add #elab command
2019-08-13 19:48:23 -07:00
Leonardo de Moura
13a67cb9a7
feat(library/init/lean/elaborator/preterm): add glue code for new and old elaborators
2019-08-13 19:42:41 -07:00
Leonardo de Moura
03e455d32d
feat(frontends/lean/elaborator): add oldElaborate
2019-08-13 19:23:29 -07:00
Leonardo de Moura
a7a5718819
chore(frontends/lean): simplify old elaborator
2019-08-13 18:49:38 -07:00
Leonardo de Moura
6a6758edf8
refactor(library/init/lean/elaborator): move elabTerm to term.lean
2019-08-13 18:33:42 -07:00
Leonardo de Moura
207f10b139
feat(library/init/lean/syntax): add Syntax.lift
2019-08-13 16:04:08 -07:00
Leonardo de Moura
4b49aa4b50
chore(tests/compiler): fix test
2019-08-13 15:27:44 -07:00
Leonardo de Moura
674438add7
chore(stage0): update
2019-08-13 15:22:20 -07:00
Leonardo de Moura
f2ca5db169
chore(library/init/lean/parser/term): remove support for Lean3 syntax
2019-08-13 15:20:47 -07:00
Leonardo de Moura
cbcf2a8a49
feat(library/init/lean/elaborator): arrow, hole and sorry
2019-08-13 15:14:51 -07:00
Leonardo de Moura
68a93a358c
fix(kernel/expr): initialization problem
2019-08-13 15:04:02 -07:00
Leonardo de Moura
995f71cf4e
feat(library/init/lean/elaborator/preterm): add setPos
2019-08-13 14:32:14 -07:00
Leonardo de Moura
19960ba781
chore(stage0): update
2019-08-13 13:24:31 -07:00
Leonardo de Moura
e16288136b
fix(library/init/lean/elaborator/basic): logErrorAndThrow should not log error twice
2019-08-13 13:24:00 -07:00
Leonardo de Moura
ad1a2b3251
feat(library/init/lean/elaborator/preterm): add toLevel
...
Convert `Syntax` into "pre" universe level term used in Lean3
2019-08-13 13:06:48 -07:00
Leonardo de Moura
9735b979eb
feat(library/init/lean/elaborator/command): add #preterm command for testing toPreTerm
2019-08-13 09:52:15 -07:00
Leonardo de Moura
94c88e1333
chore(stage0): update
2019-08-13 09:01:23 -07:00
Leonardo de Moura
0ff4334c9f
feat(library/init/lean/elaborator): add preterm.lean
2019-08-13 09:00:05 -07:00
Leonardo de Moura
ae7167d626
fix(library/equations_compiler): equation compiler bug reported by @dselsam on Zulip
...
@kha @dselsam: I added a small repro for the bug reported by Daniel on
Zulip. The current fix is not polished at all since we will replace
the equation compiler with one implemented in Lean. The bug is once
again on the code that handle nested `match`-expressions containing
recursive calls. We had problems in this module before, and the
current compilation strategy using auxiliary `*._match_<id>` functions
is also very inconvenient for users. They are often puzzled when they
see these auxiliary functions appearing in proof goals after unfolding
and/or simplification. They usually don't know what to do with these
auxiliary definitions, and have no idea how they were defined and what
they correspond to if the function has several nested
`match`-expression. Right now, the best option is to use `#print
<fun-name>._match_<id>` which is far from ideal.
@kha: @dselsam and I discussed an alternative approach where we do not
create the auxiliary definitions, annotate the generated `cases_on`
applications with meta-data indicating they correspond to a nested
match, and modify the pretty printer to display these annotated
`cases_on` applications using the `match` syntax. With these
modifications, the behavior will be similar to the one in Coq where
complex `match`-expressions are reduced to atomic ones. The only
difference is that we represent these "atomic" `match`-expressions
using `cases_on` applications.
This commit uses a simpler version of this approach where we do not
create auxiliary `*._match_<id>` functions, and more importantly do
not use the dreadful `pull_nested_rec_fn` code.
2019-08-12 19:20:26 -07:00
Leonardo de Moura
cb5a6a5a2f
feat(library/init/lean/elaborator/resolvename): add preresolveNames for setting Syntax.ident presolved field
2019-08-11 16:08:31 -07:00
Leonardo de Moura
cea1fa3036
feat(library/init/lean/elaborator/command): display position information at #resolve_name
2019-08-11 15:59:10 -07:00
Leonardo de Moura
4fe9c30d6f
fix(library/init/lean/elaborator/resolvename): use eraseDups
2019-08-11 15:50:17 -07:00
Leonardo de Moura
1ae2186484
fix(library/init/lean/elaborator/alias): avoid duplicates
2019-08-11 15:48:27 -07:00
Leonardo de Moura
3dad81daee
feat(library/init/lean/elaborator): add resolvename.lean
2019-08-11 15:37:37 -07:00
Leonardo de Moura
7195244b04
feat(library/init/data/array/qsort): ensure qsort terminates even for bad lt relations
2019-08-10 22:10:14 -07:00
Leonardo de Moura
64adc4c798
feat(library/metavar_context): use MetavarContext implemented in Lean
2019-08-10 08:03:13 -07:00
Sebastian Ullrich
5379636a94
chore(tests/bench): fix benchmarks
2019-08-10 12:52:42 +02:00
Leonardo de Moura
7d4c7ce1d3
chore(library/init/lean/metavarcontext): fix typo
2019-08-09 22:13:12 -07:00
Leonardo de Moura
aeae37eb81
feat(library/init/lean/metavarcontext): missing functions
2019-08-09 21:04:34 -07:00
Leonardo de Moura
99d4b33559
feat(library/metavar_context): metavar_decl as Lean object
2019-08-09 20:38:59 -07:00
Leonardo de Moura
5dd3b67a75
feat(library/metavar_context): delayed_assignment as Lean object
2019-08-09 20:30:52 -07:00
Leonardo de Moura
d924aab766
feat(library/init/lean/metavarcontext): export functions to C++
2019-08-09 20:09:11 -07:00
Leonardo de Moura
d1671ffcea
chore(library): remove dead code
2019-08-09 16:08:51 -07:00
Leonardo de Moura
f8199bb540
fix(library/playground/patch): updateArgs => modifyArgs
2019-08-09 16:05:29 -07:00
Leonardo de Moura
54312cfa51
feat(library/init/lean/metavarcontext): add basic functions
2019-08-09 11:26:51 -07:00
Leonardo de Moura
92da659ec7
feat(library/init/data/persistenthashmap/basic): add PersistentHashMap.contains
2019-08-09 11:25:01 -07:00
Leonardo de Moura
b8cd88a827
chore(library/init): delete dead files
2019-08-09 10:35:38 -07:00
Leonardo de Moura
dfa9ca5dc5
chore(library/init/lean/compiler/ir/basic): style
2019-08-09 10:19:35 -07:00
Leonardo de Moura
d00019f57e
chore(library/init): fix whitspaces before =>
2019-08-09 09:13:49 -07:00
Leonardo de Moura
4d913370a7
chore(library/init): eliminate whitespaces using another patch script
2019-08-09 09:01:39 -07:00