Sebastian Ullrich
7964b727e5
chore: improve error message
2020-10-22 21:40:58 +02:00
Sebastian Ullrich
c32f843efc
fix: profiling from the new frontend; use trace out for the time being
2020-10-22 16:00:03 +02:00
Sebastian Ullrich
ecece59cc3
fix: tracing the compiler from the new frontend
2020-10-22 14:50:26 +02:00
Sebastian Ullrich
b562cb8a2a
fix: exception while tracing in the old frontend
2020-10-22 14:50:26 +02:00
Sebastian Ullrich
4e74e36331
feat: run initializers on import
...
Also, refuse to evaluate an `[init]` decl in the same module (since we don't know whether the initialization is
backtrackable) and always use native symbol of a `[builtinInit]` decl
2020-10-22 11:59:55 +02:00
Sebastian Ullrich
86fe95898d
fix: don't try to interpret [builtinInit] constants
2020-10-22 11:59:55 +02:00
Sebastian Ullrich
b06f8311e8
fix: avoid using native code during bootstrap
2020-10-21 11:21:56 +02:00
Sebastian Ullrich
438b3351dd
feat: add interpreter.prefer_native option
2020-10-21 11:21:56 +02:00
Leonardo de Moura
e54a207986
refactor: provide Options to lean_eval_const
...
add `ImportM` monad for `addImportedFn`
cc @Kha
2020-10-19 10:21:38 -07:00
Leonardo de Moura
863cffde34
feat: elaborated borrowed annotations
2020-10-16 15:17:58 -07:00
Leonardo de Moura
f36f7592e6
chore: move to new frontend
2020-10-15 16:18:42 -07:00
Leonardo de Moura
827625a377
perf: add temporary hack for performance issue
...
The compiler frontend implemented in C++ is eagerly inlining local
functions. The new test would take an absurd amount of time without
the new hack.
We remove this hack when we re-implement the compiler frontend in Lean.
2020-10-15 13:37:29 -07:00
Sebastian Ullrich
c3c037b4de
fix: fixup a few automatic fixes
2020-10-11 17:43:28 +02:00
Sebastian Ullrich
7718795178
fix: mark Lean objects in C++ globals reachable from the new frontend as persistent
...
sed -Ei 's/(g_\w+)\s*= new (name|expr|format|level|string_ref)\W.*;/\0\n mark_persistent(\1->raw());/' src/kernel/**/*.cpp src/util/**/*.cpp src/library/**/*.cpp
2020-10-11 17:43:28 +02:00
Leonardo de Moura
8383177c96
fix: nonoptimal specialization
...
@Kha Here is the fix for the problem I told you this morning.
Please, take a look at `specialize.cpp` and see whether it makes sense.
2020-09-24 12:40:28 -07:00
Sebastian Ullrich
e946aa9135
fix: interpreter thread-unsafety
2020-09-14 17:57:33 +02:00
Leonardo de Moura
4e7ca37204
chore: use Lean version
2020-09-05 08:15:53 -07:00
Leonardo de Moura
217b7fc2b8
feat: improve extern arity calculation
2020-08-31 16:29:27 -07:00
Sebastian Ullrich
2d501ea980
chore: temporarily ignore regions leaks until we fix the server design
2020-08-31 06:50:01 -07:00
Sebastian Ullrich
c88784ef9d
refactor: consistent io_result_mk* naming
...
/cc @leodemoura
2020-08-31 11:08:57 +02:00
Sebastian Ullrich
9f40e46043
feat: basic process API
2020-08-30 14:28:56 -07:00
Leonardo de Moura
095d022fe2
chore: increase threshold
2020-08-22 14:44:18 -07:00
Leonardo de Moura
ca1982441f
feat: add support for to be added ST
...
`ST` will be `EIO Empty`
2020-08-20 13:45:58 -07:00
Leonardo de Moura
8349c72686
feat: add support for EIO
2020-08-20 12:48:39 -07:00
Leonardo de Moura
3ad0871dd4
chore: increase class.instance_max_depth
2020-08-13 09:19:26 -07:00
Leonardo de Moura
e301d57b36
chore: fix comment
2020-08-10 08:39:22 -07:00
Leonardo de Moura
9ddac04b40
fix: support for literals when compiling noConfusion
2020-08-05 10:17:51 -07:00
Leonardo de Moura
7f43d01703
fix: assertion violation
2020-07-24 14:54:20 -07:00
Leonardo de Moura
ca2e82f39b
feat: add projections
2020-07-23 16:42:34 -07:00
Leonardo de Moura
ea5eed7964
fix: do not assume the constructor name prefix is the inductive type name
2020-07-23 14:36:54 -07:00
Leonardo de Moura
8fd25ec326
feat: export "constructions"
...
@Kha Maybe one day I will reimplement them in Lean. Note that they do
not depend on the old type_context.
2020-07-15 16:32:23 -07:00
Leonardo de Moura
fbf2d5d300
fix: do not print as arrow if binder_info is not the default one
2020-07-15 16:32:22 -07:00
Sebastian Ullrich
c38f4fe837
feat: unsafe functions for freeing compacted regions
2020-07-10 07:42:26 -07:00
Sebastian Ullrich
ebd72d200f
fix: alloc/free mismatch detected by asan
2020-07-10 07:42:26 -07:00
Leonardo de Moura
a488ec903e
fix: remove old assertions
2020-07-08 12:45:53 -07:00
Leonardo de Moura
707ca63f87
chore: remove leftover MK_THREAD_LOCAL_GET
...
cc @Kha
2020-07-08 11:58:22 -07:00
Leonardo de Moura
cdc2dbe28d
chore: use leadingNode and trailingNode in the old frontend
2020-06-10 15:05:22 -07:00
Leonardo de Moura
7a323a0c7b
feat: allow parser! and tparser! to set the parser precedence
2020-06-03 18:11:13 -07:00
Leonardo de Moura
7c76a19885
chore: fix includes
2020-05-22 14:17:25 -07:00
Leonardo de Moura
8bdca35282
chore: use #include <lean/runtime/...> for runtime .h files
2020-05-18 11:30:07 -07:00
Leonardo de Moura
e596820f2e
chore: remove () modifier
...
cc @Kha
2020-05-12 15:02:02 -07:00
Sebastian Ullrich
ec9f4b579d
chore: improve precision of compilation time profiling
2020-04-24 15:11:36 +02:00
Leonardo de Moura
bc57faff08
fix: ensure compiler representation invariants are preserved
2020-04-23 13:54:14 -07:00
Leonardo de Moura
e22af8d1ef
feat: add FloatArray
...
cc @dselsam
2020-04-07 18:05:54 -07:00
Sebastian Ullrich
e971c8dd7a
feat: support Float in the interpreter
...
/cc @leodemoura @dselsam
2020-04-05 10:50:30 +02:00
Leonardo de Moura
485034bbba
fix: bug at ir.cpp
2020-04-03 17:39:28 -07:00
Leonardo de Moura
0e2ebd36ff
feat: make sure Float is in WHNF
2020-04-03 17:07:29 -07:00
Leonardo de Moura
60d84660e6
feat: add support for Float in the compiler
2020-04-03 16:39:29 -07:00
Leonardo de Moura
5b5a1fceaa
fix: string literal printer
2020-03-17 17:12:27 -07:00
Sebastian Ullrich
d7170df527
feat: interpreter: print stacktrace on stack overflow
2020-03-14 15:08:03 -07:00