Leonardo de Moura
9a071c18e7
feat(library/equations_compiler): add support for partial definitions
2019-03-27 11:09:32 -07:00
Leonardo de Moura
3b70e8785b
chore(tests/compiler/str): fix test
2019-03-22 17:26:43 -07:00
Leonardo de Moura
3befc219c9
chore(library/init): Empty => empty when it is a function
2019-03-21 17:03:15 -07:00
Sebastian Ullrich
f34d37c371
chore(tests): port tests, fix at least compiler tests
2019-03-21 15:11:05 -07:00
Sebastian Ullrich
f160fd8de0
chore(tests): compile tests using -O3 again
2019-03-18 17:55:28 +01:00
Sebastian Ullrich
f6d3062524
feat(bin/leanc): add simple C++ compiler wrapper script
2019-03-18 16:11:30 +01:00
Leonardo de Moura
b1c187f717
feat(library/compiler): allow io unit as main function result type
...
When `io unit` is used, we use `return 0` for `result.ok`, and `return
1` for `result.except`.
2019-03-16 16:05:45 -07:00
Leonardo de Moura
6d0ec3a8c9
refactor(library/init/io): implement io monad using estate monad
2019-03-16 15:34:58 -07:00
Leonardo de Moura
cf3bbd7e25
feat(runtime): add utf8_prev and utf8_set
...
Next goal: implement string.iterator in Lean
2019-03-11 18:05:40 -07:00
Leonardo de Moura
01b4983fa2
fix(runtime/object): string_utf8_extract
2019-03-09 12:57:51 -08:00
Leonardo de Moura
67944a6c81
test(tests/compiler/str): new test for utf8 primitives
2019-03-09 12:41:33 -08:00
Leonardo de Moura
7b1d15ec43
fix(library/compiler/specialize): avoid work duplication in the specializer
2019-03-08 11:21:49 -08:00
Leonardo de Moura
dfce086c9e
test(tests/compiler/array_test): basic array test
2019-02-16 16:08:49 -08:00
Leonardo de Moura
542bd432f8
test(tests/compiler): uint constant folding tests
2019-02-15 14:53:29 -08:00
Sebastian Ullrich
03456ab752
chore(tests/compiler/t2): fix test
2019-02-15 12:13:45 -08:00
Sebastian Ullrich
b8900fad80
chore(tests/compiler/test.sh): rename to conventional test_single.sh so that (lean4-diff-test-file) works
2019-02-15 12:13:45 -08:00
Leonardo de Moura
b6d1506434
fix(tests/compiler/t2): pause at the end
...
@kha I figured out why we had a long pause in the end of this benchmark
when using `11` instead of `9`. The function `deriv` was computing
`d := d "x" f` (the expensive computation), printing the size of `f` and
returning `d`. So, in the last step we were quickly printing the size
of the input 40230090 (when using `nest deriv 11 f`), and then computing
`d := d "x" f` which returns an object of size 374429936 which is never
used for anything.
That is, the pause had nothing to do with memory deallocation. I found
this issue after I implemented the deferred free feature which did not
fix the pause :)
2019-02-14 10:44:59 -08:00
Leonardo de Moura
19e111c2ff
feat(library/compiler): allow main function to also have type io uint32
2019-02-13 16:29:10 -08:00
Leonardo de Moura
06bb9b7ea8
test(tests/compiler): add simple test for expr
2019-02-13 16:22:01 -08:00
Sebastian Ullrich
67f8f7a2da
chore(tests/compiler/append): add expected output
2019-02-09 20:02:26 +01:00
Leonardo de Moura
6cb96331b1
chore(tests/compiler): add .gitignore
2019-02-08 16:59:17 -08:00
Leonardo de Moura
5dcbb9c50d
test(tests/compiler/append): append test
2019-02-08 16:52:41 -08:00
Leonardo de Moura
01119b529f
test(tests/compiler): add thunk test
...
This test will take a long time if `thunk` result is not cached.
2019-02-08 11:01:33 -08:00
Leonardo de Moura
e2ee2d4bd9
chore(tests/compiler): add deriv test
2019-02-07 16:56:40 -08:00
Leonardo de Moura
259941c184
chore(tests/compiler/test_flags): include release flags
...
@kha The `-O3` option is not at CMAKE_CXX_FLAGS, but in build mode
specific configuration. I added this hack because I want to include
performance tests too. Perhaps, I should move performance tests to a
different directory.
2019-02-07 16:30:30 -08:00
Leonardo de Moura
109d569310
feat(tests/compiler): add first test
2019-02-07 12:14:25 -08:00
Leonardo de Moura
dc8edd3894
feat(tests/compiler): script skeleton
...
cc @kha
2019-02-07 11:54:46 -08:00