Commit graph

36377 commits

Author SHA1 Message Date
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
Sebastian Ullrich
da04491df1 fix(frontends/lean/builtin_exprs): trim view field names 2018-10-02 14:55:28 -07:00
Leonardo de Moura
dc937281b3 chore(library/init/string): remove string.iterator_imp 2018-10-02 13:46:01 -07:00
Leonardo de Moura
fd46adb7b3 fix(library/compiler/erase_irrelevant): minor issues 2018-10-02 13:36:48 -07:00
Leonardo de Moura
20e7edd4ac feat(library/compiler): erase trivial structures and flat cases on structures 2018-10-02 11:05:15 -07:00
Leonardo de Moura
c3569dc72d feat(kernel): store structure name in proj-expressions 2018-10-02 09:23:11 -07:00
Leonardo de Moura
c05e7a31a3 chore(library/compiler): add is_runtime_scalar_type and is_runtime_builtin_type 2018-10-02 09:03:53 -07:00
Leonardo de Moura
3ac6eab393 chore(library/vm): remove vm_list 2018-10-02 08:44:05 -07:00
Leonardo de Moura
429f844fbe @chore(library/init/lean/parser/parsec): remove @[inline] annotations to reduce compilation time
We will mark them as `@[specialize]` as soon as we implement code specialization
2018-10-01 17:30:13 -07:00
Leonardo de Moura
fbe702510d fix(library/compiler/csimp): missing projection of instance simplification 2018-10-01 17:23:29 -07:00
Leonardo de Moura
25b45d6f9e feat(library/compiler): add erase_irrelevant transformation to new compiler stack 2018-10-01 17:06:56 -07:00
Sebastian Ullrich
ab5460d010 perf(library/init/lean/parser/parsec): more [inline] attributes 2018-10-01 16:32:11 -07:00
Sebastian Ullrich
5596eea27b test(tests/lean/parser1): deactivate core.lean test 2018-10-01 14:38:30 -07:00
Leonardo de Moura
efa77c2a5b fix(library/compiler/inliner): bug in the old compiler
The bug was being masked by the `elim_recursors` transformation.
When this transformation was used, the bug would manifest itself as a
performance bug.
2018-10-01 14:17:11 -07:00
Leonardo de Moura
e466ecd263 chore(library/compiler/lambda_lifting): fix debug mode compilation errors 2018-10-01 14:17:11 -07:00
Leonardo de Moura
04caf5af42 chore(library/derive_attribute): remove unnecessary #includes 2018-10-01 14:17:11 -07:00
Leonardo de Moura
b4c2861939 refactor(library/compiler): rename "erasure normal form" functions 2018-10-01 14:17:11 -07:00
Leonardo de Moura
a5f55300ef feat(library/constants): add uint constants 2018-10-01 14:17:11 -07:00
Leonardo de Moura
5ff63c3c96 feat(library/init/data/uint): add uint8 2018-10-01 14:17:11 -07:00
Leonardo de Moura
3a4acbee9e chore(library/init/data/string): remove string_imp
We will use the (to be implemented) `opaque` keyword
2018-10-01 14:17:11 -07:00
Leonardo de Moura
81e9e95570 chore(library/compiler): erase_irrelevant ==> old_erase_irrelevant 2018-10-01 14:17:11 -07:00
Leonardo de Moura
761db5bc7e chore(library/init/core): remove obsolete lemmas
We don't need them anymore.
2018-10-01 14:17:11 -07:00
Sebastian Ullrich
e261d8f222 perf(library/init): missing [inline] attributes 2018-10-01 11:53:38 -07:00
Leonardo de Moura
0279cb0766 fix(library/compiler/lcnf): must process constants too 2018-10-01 11:41:57 -07:00
Leonardo de Moura
b9cee7b8ae chore(library/init/wf): disable codegen for wf 2018-10-01 11:41:57 -07:00
Leonardo de Moura
70041bf43f feat(library/compiler/vm_compiler): add option codegen 2018-10-01 11:41:57 -07:00
Sebastian Ullrich
7d8c3c5db8 feat(library/init/lean/parser/term): use longest_match for Pratt parsing 2018-10-01 09:02:39 -07:00
Sebastian Ullrich
6a23ecfe9c fix(library/init/lean/parser/parsec): fix lookahead, longest_match 2018-10-01 09:02:39 -07:00
Sebastian Ullrich
b443006e8f fix(library/init/lean/parser/syntax): reprint: do not concatenate choice contents 2018-10-01 09:02:39 -07:00
Leonardo de Moura
990fbe3c30 feat(library/compiler): provide options to vm_compile 2018-09-30 08:50:40 -07:00
Leonardo de Moura
a17b95acc7 feat(library/compiler/erase_irrelevant): add support for lc_unreachable 2018-09-30 08:25:06 -07:00
Leonardo de Moura
2c4139d5e5 feat(library/compiler): eta expand quot primitives, add support for eq.rec_on 2018-09-30 08:24:18 -07:00
Leonardo de Moura
a2ee4552fb chore(library/init/core): add inline annotations 2018-09-30 08:21:11 -07:00
Leonardo de Moura
751cdd7c42 feat(kernel/type_checker): avoid unnecessary lambdas 2018-09-29 17:24:49 -07:00
Leonardo de Moura
cdc0a5ac29 fix(library/compiler/vm_compiler): add support for kernel projections 2018-09-29 17:24:11 -07:00
Leonardo de Moura
86d5ccf8f5 feat(library/compiler/lcnf): nat literals 2018-09-29 16:52:25 -07:00
Leonardo de Moura
54b4908349 chore(library/compiler): remove step from old compiler 2018-09-29 16:48:24 -07:00