Leonardo de Moura
|
15a25d5aa9
|
chore(library/init/lean/parser): add a few comments
|
2018-10-11 15:54:57 -07:00 |
|
Leonardo de Moura
|
aff6d58659
|
chore(tests/lean/run/new_compiler): fix test
|
2018-10-10 18:38:18 -07:00 |
|
Leonardo de Moura
|
c74f4c16ca
|
feat(library/kernel,library/compiler/csimp): make sure nat.rec and nat.cases_on reduce when major premise is a nat literal
|
2018-10-10 18:35:15 -07:00 |
|
Leonardo de Moura
|
338038a05e
|
feat(library/init/core): add inline identity function
|
2018-10-10 18:17:29 -07:00 |
|
Leonardo de Moura
|
be0b4c998f
|
fix(library/compiler/lcnf): avoid unnecessary let-decl
|
2018-10-10 17:33:57 -07:00 |
|
Leonardo de Moura
|
bbb45bfc95
|
fix(library/compiler/csimp): another join-point management bug
|
2018-10-10 13:42:32 -07:00 |
|
Leonardo de Moura
|
18093f3f24
|
feat(library/compiler/csimp): eta-expand lambda-expressions during simplification
|
2018-10-09 19:16:41 -07:00 |
|
Leonardo de Moura
|
e958f20874
|
fix(library/compiler/csimp): beta_reduce was not preserving the "join-point" invariant
|
2018-10-09 19:11:16 -07:00 |
|
Leonardo de Moura
|
256112be5b
|
chore(library/compiler/lcnf): disable lambda eta-expansion during LCNF conversion
We should do it at `csimp`
|
2018-10-09 15:25:57 -07:00 |
|
Leonardo de Moura
|
27e6f7f424
|
feat(library/compiler): invoke specialize skeleton
|
2018-10-09 15:23:42 -07:00 |
|
Leonardo de Moura
|
5d726eb210
|
feat(library/compiler/compiler): switch to new compiler frontend
We also rename `vm_compiler` module to `emit_bytecode`.
We will eventually replace this module with the new IR emitter.
|
2018-10-08 17:38:17 -07:00 |
|
Leonardo de Moura
|
662c0ebb31
|
feat(library/compiler/compiler): cache stage1
|
2018-10-08 17:06:45 -07:00 |
|
Leonardo de Moura
|
124b4d37fe
|
feat(library/compiler): port simp_inductive to the new compiler stack
This commit also fixes a bug in the old `simp_inductive` module, and
removes now obsolete files (`compiler_step_visitor` and `old_util`).
|
2018-10-08 16:58:43 -07:00 |
|
Leonardo de Moura
|
d2fcb7af39
|
chore(library/compiler/compiler): add tracing to new compiler frontend
|
2018-10-08 15:22:36 -07:00 |
|
Leonardo de Moura
|
787d1ecb93
|
feat(library/compiler/lambda_lifting): new lambda lifting
|
2018-10-08 15:04:59 -07:00 |
|
Leonardo de Moura
|
e75d8eacb6
|
fix(frontends/lean/elaborator): compilation erros with g++ 4.9
|
2018-10-08 11:54:28 -07:00 |
|
Sebastian Ullrich
|
305984bab5
|
feat(frontends/lean/elaborator): show context of unassigned mvars
|
2018-10-08 09:32:41 -07:00 |
|
Sebastian Ullrich
|
8e0778e54a
|
fix(library/init/lean/parser/token): parse whitespace after raw_ident
|
2018-10-08 09:30:48 -07:00 |
|
Sebastian Ullrich
|
50e6b42f8c
|
fix(frontends/lean/elaborator): ensure_no_unassigned_metavars: only check mvars in parameter
Had forgotten to re-check the standard lib...
|
2018-10-07 21:11:02 -07:00 |
|
Sebastian Ullrich
|
aea86eb828
|
feat(frontends/lean/elaborator): simple, accurate mvar error position tracking
The accuracy of `m_last_pos` still needs to be improved at some point
|
2018-10-05 21:25:39 -07:00 |
|
Leonardo de Moura
|
eb51b9ef26
|
chore(library/init/core): avoid . as end-of-command and empty equations
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
fc62e8f3a4
|
chore(library/compiler): cdecl ==> comp_decl
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
d75b1c57bf
|
chore(library/compiler/preprocess): remove dependency
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
b1f98e8f38
|
feat(library/compiler/lcnf): eta expand lambdas
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
4fd546c132
|
feat(library/compiler): remove old extract_values
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
2eea3d4c4b
|
chore(library/compiler): simplify procedure class
Remark: `procedure` will be deleted soon.
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
dc5dbb3b81
|
chore(library/compiler): remove dead code
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
d93b2a2656
|
chore(library/compiler): remove dead code
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
335b37d480
|
chore(library/compiler): remove old reduce_arity
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
6b8008a222
|
feat(library/compiler): new compiler entry point (skeleton)
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
d29e95af08
|
fix(util/list_ref): typo
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
be6324e183
|
chore(util/list_ref): missing include
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
1d1efdd5f3
|
chore(library/compiler/preprocess): remove dead global
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
a21dac4384
|
chore(library/compiler/vm_compiler): remove option
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
135a8d7508
|
chore(library/compiler): remove old compiler steps that have already been replaced
|
2018-10-05 17:30:27 -07:00 |
|
Leonardo de Moura
|
e18af852c8
|
feat(library/compiler): add code specialization skeleton
|
2018-10-05 17:30:27 -07:00 |
|
Sebastian Ullrich
|
4e3f9b46c2
|
refactor(library/init/lean/parser/token): remove weird with_source higher-order function
|
2018-10-05 08:52:04 -07:00 |
|
Sebastian Ullrich
|
ebeec844af
|
perf(library/init/lean/parser): minor performance tweaks
|
2018-10-05 08:52:04 -07:00 |
|
Sebastian Ullrich
|
d1b6b9721a
|
chore(bin/lean-gdb): exclude scalar fields
|
2018-10-04 18:32:03 -07:00 |
|
Leonardo de Moura
|
66fe6463fe
|
fix(library/compiler/csimp): missing mk_let
|
2018-10-04 15:25:03 -07:00 |
|
Leonardo de Moura
|
78842d4b9b
|
fix(library/compiler/util): macro_inline was ignoring constants
|
2018-10-04 15:25:03 -07:00 |
|
Sebastian Ullrich
|
c50b89a318
|
fix(frontends/lean/elaborator): node!/node_choice!: use constant options for printing-parsing
|
2018-10-04 14:27:24 -07:00 |
|
Sebastian Ullrich
|
22714b9b10
|
perf(library/init/lean/parser/combinators): node: no need to fill up with syntax.missing anymore
Views now do iterated pattern matches instead of a single one
|
2018-10-04 14:27:24 -07:00 |
|
Sebastian Ullrich
|
988d38b892
|
perf(library/init/control): inline monad_map instances even when partially applied
|
2018-10-04 14:23:03 -07:00 |
|
Leonardo de Moura
|
4bcb7051a8
|
chore(library/init/data/nat/basic): missing @[inline]
|
2018-10-03 17:24:53 -07:00 |
|
Leonardo de Moura
|
08425c456a
|
chore(library/compiler/preprocess): remove dead code
|
2018-10-03 16:22:44 -07:00 |
|
Leonardo de Moura
|
adfc0e28ea
|
feat(library/compiler/erase_irrelevant): missing is_irrelevant checks, missing terms being visited, mixing erased with non-erased terms
|
2018-10-03 16:22:44 -07:00 |
|
Sebastian Ullrich
|
959948b901
|
feat(library/init/lean): even more core.lean progress
|
2018-10-03 16:00:08 -07:00 |
|
Sebastian Ullrich
|
ca8e75be9e
|
fix(library/init/lean/elaborator): check for and consume end of input
|
2018-10-03 16:00:08 -07:00 |
|
Sebastian Ullrich
|
5274be8c3e
|
feat(library/init/lean/elaborator): local notation
Implemented by treating the parser cfg as a cache that can be recreated from the
elaborator state after e.g. a scope has ended
|
2018-10-03 16:00:08 -07:00 |
|