Leonardo de Moura
99e3cdc01b
chore(frontends/lean): delete lean_environment
2019-05-13 13:05:04 -07:00
Leonardo de Moura
8aeff535fc
chore(tests): remove old tests
2019-05-13 12:43:11 -07:00
Leonardo de Moura
edb4d76ecd
feat(kernel/environment): environment as a Lean object
2019-05-13 12:41:33 -07:00
Leonardo de Moura
deb2310b6d
feat(util/map_foreach): add helper functions for traversing Lean maps
2019-05-13 12:27:59 -07:00
Sebastian Ullrich
de5b68f126
fix(CMakeLists,bin/leanc.in): fix installed leanc
2019-05-12 13:43:36 +02:00
Leonardo de Moura
4392ed2466
fix(library/init/lean/default): make sure environment.lean is initialized
2019-05-11 18:05:11 -07:00
Leonardo de Moura
f1d16c261d
fix(library/compiler/csimp): do not inline constants with [init] attribute
2019-05-11 17:51:46 -07:00
Leonardo de Moura
2cd2bec831
fix(init/init.cpp): initialization bug
2019-05-11 17:51:23 -07:00
Leonardo de Moura
06390337c6
chore(library/module): fix linker error
2019-05-11 17:08:58 -07:00
Leonardo de Moura
750384142e
perf(library/init/control/estate): missing [inline]
2019-05-11 16:38:25 -07:00
Leonardo de Moura
c46608ced5
feat(library/init/io): implement unsafeIO in Lean
...
Motivation: avoid closure allocation.
2019-05-11 16:28:11 -07:00
Leonardo de Moura
5f563973f3
feat(library/init/lean/environment): lower level interface for C++
2019-05-11 15:50:02 -07:00
Leonardo de Moura
1270353313
feat(library/init/lean/environment): add auxiliary functions
2019-05-11 14:30:06 -07:00
Leonardo de Moura
8ca1b7b2cb
chore(kernel/environment): dead code
2019-05-11 14:13:40 -07:00
Leonardo de Moura
b2f1bad2c7
chore(stage0): update
2019-05-10 17:03:49 -07:00
Leonardo de Moura
06727e9ca4
chore(kernel/environment): remove dead code
2019-05-10 16:37:13 -07:00
Leonardo de Moura
fd2a5dd45e
feat(library/init/io): add IO.initializing
2019-05-10 11:26:49 -07:00
Leonardo de Moura
f6b3bc868a
fix(library/init/lean/environment, library/compiler): compilation error and add [implementedBy] attribute
2019-05-10 07:22:56 -07:00
Leonardo de Moura
18aa7de408
feat(library/init/data): add ByteArray
2019-05-08 16:43:00 -07:00
Leonardo de Moura
fd487d8db7
chore(*): remove old VM
2019-05-08 15:15:44 -07:00
Leonardo de Moura
74fb8e627a
feat(library/init/lean/compiler/ir/checker): improve IR checker
2019-05-08 05:47:25 -07:00
Leonardo de Moura
305f376a76
fix(stage0): missing files
2019-05-07 16:22:45 -07:00
Leonardo de Moura
b41d7ec98b
chore(library/compiler/ir): style
2019-05-07 15:20:56 -07:00
Leonardo de Moura
2363fdf544
refactor(library/init/lean/compiler/ir): remove redundant field from FnBody.jdecl
...
The result type of a join point is always equal to the function return
type. Moreover, the extra bookkeeping introduces extra work, and doesn't
really help.
2019-05-07 12:26:11 -07:00
Leonardo de Moura
0d1a0c8b6e
chore(library): toBool ==> decide
...
We want to define a type class similar to Haskell's `ToBool`.
2019-05-06 14:02:15 -07:00
Sebastian Ullrich
a3935aedcd
chore(CMakeLists): fix install
2019-05-05 23:24:24 +02:00
Leonardo de Moura
439ce06a19
refactor(library/init/lean/compiler/ir): move "free variable" code to separate file
2019-05-05 08:04:33 -07:00
Leonardo de Moura
7a5e64e52e
chore(library/init/lean/compiler): move IR related files to subdirectory
2019-05-05 07:55:36 -07:00
Leonardo de Moura
04670c4127
fix(library/compiler/struct_cases_on): bug and missing case
2019-05-03 20:03:03 -07:00
Leonardo de Moura
6f971382be
chore(stage0): update
2019-05-03 19:01:17 -07:00
Sebastian Ullrich
1aef9ac576
feat(frontends/lean/match_expr): terminate match on dedent between equations
2019-05-03 13:46:10 +02:00
Leonardo de Moura
9b50e9d003
feat(library/compiler/find_jp): locate (and preserve) join points created by user
2019-05-02 17:20:19 -07:00
Leonardo de Moura
8bd0431c19
chore(stage0): update
2019-05-02 16:25:24 -07:00
Leonardo de Moura
2c4811a808
chore(library/init/lean/compiler): remove unnecessary [@export]s
2019-05-02 15:04:28 -07:00
Leonardo de Moura
76a49ec256
chore(library/compiler): add ir::test
2019-05-02 14:40:04 -07:00
Leonardo de Moura
3628b39cb6
feat(library/init/lean/compiler): add simpcase transformation
2019-05-02 12:40:37 -07:00
Leonardo de Moura
81d11db5d2
chore(runtime/object): rename runtime primitives
2019-05-02 10:55:29 -07:00
Leonardo de Moura
3a612bfd8b
feat(library/init/lean/compiler): add elimDead transformation
2019-05-02 08:06:45 -07:00
Leonardo de Moura
e52e787ad5
fix(library/init/lean/compiler/pushproj): bug and cleanup
2019-05-01 21:01:03 -07:00
Leonardo de Moura
2991b966e5
featg(library/init/lean/compiler): add pushproj
2019-05-01 17:38:44 -07:00
Leonardo de Moura
af1d521706
feat(library/init/data/array/basic): add Array.swap
2019-05-01 17:38:44 -07:00
Leonardo de Moura
cfec797e69
feat(library/init/lean/compiler/ir): helper functions
2019-05-01 17:38:44 -07:00
Leonardo de Moura
45d09d3044
fix(library/compiler/ir): bug at LLNF -> IR
2019-05-01 17:38:44 -07:00
Leonardo de Moura
ed5e461130
feat(library/init/lean/compiler/ir): add maxVar
2019-05-01 17:38:44 -07:00
Leonardo de Moura
2614b95a8b
refactor(library/init/lean/compiler/ir): use Nat instead of Name for local vars
2019-05-01 17:38:44 -07:00
Leonardo de Moura
0c9fa13763
feat(library/init/lean/compiler): convert LLNF into Lean IR
2019-04-30 17:55:43 -07:00
Leonardo de Moura
952eb0f515
feat(library/compiler): C++ API for Lean IR
2019-04-29 18:23:19 -07:00
Leonardo de Moura
8befa9bea5
chore(stage0): update
...
Make sure Lean IR primitives are available at Stage0.
2019-04-29 17:16:27 -07:00
Leonardo de Moura
a32fcf33c7
feat(util/array_ref): simple wrapper for creating Lean array objects in C++
2019-04-29 17:10:35 -07:00
Leonardo de Moura
dd5fa4626f
chore(runtime/object): style
2019-04-28 09:18:54 -07:00