Leonardo de Moura
|
f9624b4c49
|
fix(library/compiler/vm_compiler): ignore applications of the form (neutral ...) during code generation
|
2016-05-25 17:52:42 -07:00 |
|
Leonardo de Moura
|
856f6bcbdf
|
fix(library/compiler/erase_irrelevant): missing case
|
2016-05-25 17:49:02 -07:00 |
|
Leonardo de Moura
|
9530f716f9
|
refactor(library): move list.is_inhabited instance to init folder
|
2016-05-25 17:26:42 -07:00 |
|
Leonardo de Moura
|
bf9300686c
|
feat(library/compiler/vm_compiler): ignore macro annotations
|
2016-05-25 17:26:15 -07:00 |
|
Leonardo de Moura
|
abd2bbab78
|
feat(library/compiler/preprocess): expand auxiliary declarations automatically created by Lean (e.g., transitivite instances)
These declarations do not have VM bytecode associated with them.
Signed-off-by: Leonardo de Moura <leonardo@microsoft.com>
|
2016-05-25 17:09:16 -07:00 |
|
Leonardo de Moura
|
d763ea1abf
|
chore(tests/lean/run/IO3): remove unnecessary 'open'
|
2016-05-25 16:05:39 -07:00 |
|
Leonardo de Moura
|
4b002e5bf0
|
test(tests/lean/run): add IO test
|
2016-05-25 16:04:54 -07:00 |
|
Leonardo de Moura
|
d4a8d14a9c
|
feat(library/init/nat): put nat instances in the top-level
|
2016-05-25 16:03:21 -07:00 |
|
Leonardo de Moura
|
0239860ad6
|
test(tests/lean/run): add another IO test
|
2016-05-25 15:47:02 -07:00 |
|
Leonardo de Moura
|
c5616969e0
|
fix(library/compiler/simp_inductive): distribute extra cases_on arguments over minor premises in the simp_inductive step
|
2016-05-25 15:46:01 -07:00 |
|
Leonardo de Moura
|
1b8d9deb37
|
chore(library/compiler/erase_irrelevant): style
|
2016-05-25 15:45:43 -07:00 |
|
Leonardo de Moura
|
be7a736a42
|
feat(library/compiler/vm_compiler): trace bytecode after/before optimization
|
2016-05-25 15:45:16 -07:00 |
|
Leonardo de Moura
|
e2d3abd995
|
feat(emacs/lean-syntax): highlight 'return'
|
2016-05-25 15:17:02 -07:00 |
|
Leonardo de Moura
|
1bce20c322
|
feat(library/init): make sure list, char and string decidable_eq instances are defined in the init folder
|
2016-05-25 15:16:12 -07:00 |
|
Leonardo de Moura
|
7c97d88be5
|
feat(frontends/lean/builtin_exprs): add optional curly braces for do-notation
|
2016-05-25 15:15:39 -07:00 |
|
Leonardo de Moura
|
2a16b58324
|
test(tests/lean/run): add another IO test
|
2016-05-25 14:23:57 -07:00 |
|
Leonardo de Moura
|
b8ea69b3cd
|
fix(library/compiler/reduce_arity): incorrect assertion
|
2016-05-25 14:20:16 -07:00 |
|
Leonardo de Moura
|
76e2f92d9c
|
feat(frontends/lean/pp): pretty print let-expressions
|
2016-05-25 14:04:28 -07:00 |
|
Leonardo de Moura
|
e82cb6393f
|
test(tests/lean/run): add IO test
|
2016-05-25 13:46:05 -07:00 |
|
Leonardo de Moura
|
bf2d2b9feb
|
fix(library/vm,library/compiler,frontends/lean): IO monad support
|
2016-05-25 13:30:43 -07:00 |
|
Leonardo de Moura
|
6d37c26b5d
|
feat(library/compiler/erase_irrelevant): add support for IO monad.return
|
2016-05-24 18:28:06 -07:00 |
|
Leonardo de Moura
|
63ed0c0056
|
feat(library/compiler/erase_irrelevant): add support for IO monad.bind
|
2016-05-24 18:14:39 -07:00 |
|
Leonardo de Moura
|
e40c54013a
|
feat(library/vm): add basic support for IO monad
|
2016-05-24 17:52:22 -07:00 |
|
Leonardo de Moura
|
174fba9dbd
|
feat(frontends/lean): add support for monadic 'do'-notation
|
2016-05-24 17:18:15 -07:00 |
|
Leonardo de Moura
|
570ae36148
|
test(tests/lean): add test for new string support
|
2016-05-24 16:27:12 -07:00 |
|
Leonardo de Moura
|
6a9e5079c9
|
feat(library,frontends/lean/pp): add support for new string encoding
|
2016-05-24 16:20:43 -07:00 |
|
Leonardo de Moura
|
cf5e7e4185
|
chore(library/type_context): improve aux_type_context interface
|
2016-05-24 14:38:21 -07:00 |
|
Leonardo de Moura
|
408d1fae70
|
refactor(library/norm_num): use new type_context
|
2016-05-24 14:11:43 -07:00 |
|
Leonardo de Moura
|
d22d850b28
|
refactor(library): redefine string and char
|
2016-05-24 14:11:24 -07:00 |
|
Leonardo de Moura
|
cf7fcb3f51
|
feat(library/init): add functor/monad to init folder
|
2016-05-24 13:06:01 -07:00 |
|
Leonardo de Moura
|
f66494108c
|
chore(library/init/logic): reduce sorry's
|
2016-05-24 12:45:11 -07:00 |
|
Leonardo de Moura
|
4c8360efd8
|
test(tests/lean/run/vm_eval1): test for efficient interpreter
|
2016-05-24 12:26:25 -07:00 |
|
Leonardo de Moura
|
5bc4250c42
|
chore(library/init/classical): code generation warning
|
2016-05-23 17:50:01 -07:00 |
|
Leonardo de Moura
|
9dfc5ed787
|
chore(library/data): make sure we can generate code for the modified functions
|
2016-05-23 17:50:01 -07:00 |
|
Leonardo de Moura
|
413a0faf99
|
chore(library/data/nat/bquant): make sure we can generate code for bsub_succ
|
2016-05-23 17:50:01 -07:00 |
|
Leonardo de Moura
|
d7e863c3f4
|
feat(library/compiler/erase_irrelevant): add support for quotient types
and expand macros
|
2016-05-23 17:49:42 -07:00 |
|
Leonardo de Moura
|
e06713b3cd
|
chore(library/init/wf): make sure we can generate code for acc.drec
|
2016-05-23 17:02:51 -07:00 |
|
Leonardo de Moura
|
18b2b51c8b
|
test(tests/lean/run): make sure well_founded.fix works before optimizing its compilation
|
2016-05-23 16:50:44 -07:00 |
|
Leonardo de Moura
|
fd1141d999
|
fix(library/vm/vm,library/compiler/vm_compiler): invoke n ==> apply
This change fixes a bug in the VM and simplifies the VM instruction semantics.
|
2016-05-23 16:45:42 -07:00 |
|
Leonardo de Moura
|
e42972b501
|
feat(library/compiler/erase_irrelevant): add support for acc.rec
|
2016-05-23 16:31:29 -07:00 |
|
Leonardo de Moura
|
5333e07eb9
|
fix(library/compiler/vm_compiler): incorrect assertion
|
2016-05-23 15:10:50 -07:00 |
|
Leonardo de Moura
|
c3805a9a81
|
fix(library/vm/optimize): bytecode optimization
|
2016-05-23 14:35:10 -07:00 |
|
Leonardo de Moura
|
17e3223467
|
chore(library/vm/vm): add debugging helper procedure
|
2016-05-23 14:14:43 -07:00 |
|
Leonardo de Moura
|
9545620a54
|
fix(library/compiler/simp_inductive): generate error message for inductive predicates
indutive predicates that support elimination on Type (e.g., eq and acc) must be
eliminated before this step.
|
2016-05-23 13:27:05 -07:00 |
|
Leonardo de Moura
|
76942ae150
|
fix(kernel,library): OSX warnings
|
2016-05-13 21:33:40 -07:00 |
|
Leonardo de Moura
|
af1908be94
|
feat(frontends/lean/decl_cmds): do not generate warning for definitions that are implemented in the VM
|
2016-05-13 18:17:20 -07:00 |
|
Leonardo de Moura
|
65b9cab9b4
|
feat(frontends/lean/decl_cmds): generate bytecode when adding definitions
Remark: when the code generator fails we just generate a warning.
Reason: code generator does not support wellfounded recursion yet.
|
2016-05-13 18:05:47 -07:00 |
|
Leonardo de Moura
|
423d129105
|
feat(library/vm/vm): bytecode serialization
|
2016-05-13 17:51:01 -07:00 |
|
Leonardo de Moura
|
c2959dc77b
|
feat(frontends/lean/builtin_cmds): improve error message
|
2016-05-13 16:27:44 -07:00 |
|
Leonardo de Moura
|
7242de7238
|
feat(library/vm/vm): improve vm_obj pretty printer
|
2016-05-13 16:16:31 -07:00 |
|