Commit graph

14963 commits

Author SHA1 Message Date
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
Leonardo de Moura
cf5141f8ad chore(library/vm/vm): fix style 2018-10-03 13:25:54 -07:00
Leonardo de Moura
826e63873e feat(library/compiler/preprocess): use new compiler stack that has already been implemented 2018-10-03 13:24:01 -07:00
Leonardo de Moura
13f0a7cd81 chore(frontends/lean, library/vm): save some debugging help code 2018-10-03 13:20:24 -07:00
Leonardo de Moura
9f161e6968 fix(library,kernel): the new proj_sname field must be taken into account during comparisons
`proj_sname` is not just for enabling better pretty printing. It is
necessary in the compiler when type information is lost, and we can't
infer the type of a `proj`-term argument (field `proj_expr`).
2018-10-03 13:11:46 -07:00
Leonardo de Moura
1b95cbeca1 fix(library/compiler/simp_inductive): adjust kernel projections 2018-10-02 18:56:13 -07:00
Leonardo de Moura
c9aab6ef50 feat(library/compiler): register noinline attribute 2018-10-02 18:56:13 -07:00
Leonardo de Moura
fa906c6bda fix(library/compiler/lambda_lifting): use user_name 2018-10-02 18:56:13 -07:00
Leonardo de Moura
e89e0075a5 fix(library/compiler/lcnf): do not expand projections of builtin types 2018-10-02 18:56:13 -07:00
Leonardo de Moura
cd8dc8670d fix(library/compiler/erase_irrelevant): visit_constant 2018-10-02 18:56:13 -07:00
Leonardo de Moura
49425aa80c fix(library/compiler/erase_irrelevant): assertion violation 2018-10-02 18:56:13 -07:00
Leonardo de Moura
24bd5782e0 fix(library/compiler/erase_irrelevant): make sure lambda that return irrelevant data is marked as irrelevant 2018-10-02 18:56:13 -07:00
Leonardo de Moura
85c58e8f0e feat(library/compiler): add support for string literals in the old VM 2018-10-02 18:56:13 -07:00
Sebastian Ullrich
0563c60b1a feat(library/init/lean/elaborator): add coroutine, use it to implement section/namespace elaborators (they don't do anything yet except for checking the end name) 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
097b7be14f refactor(library/init/lean/parser/token): change raw view type to option syntax_atom and create raw_str to give some raw parsers view defaults 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
25b9deab15 fix(frontends/lean/elaborator): fix try_monad_coercion 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
918388ac26 refactor(library/init/control/except): reintroduce except_t.mk 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
533ac2d5b2 fix(library/init/lean/parser/declaration): attributes before visibility modifiers 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
71fd8a59b4 feat(library/init/lean/parser/notation): simple term language for precedences 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
b8b39585ec fix(library/init/lean/parser/command): variable may take unbracketed binder 2018-10-02 14:55:28 -07:00
Sebastian Ullrich
fc5120290f feat(library/init/lean/parser/term): inductive levels, let, structure instances 2018-10-02 14:55:28 -07:00