lean4-htt/library/init
Leonardo de Moura 42fbe3c18c chore(library/init,runtime,library/compiler): add fix primitive back
The new `partial def`s allow us to define `fix` in Lean, but the Lean
implementation is not as efficient as the native one. The native one
in C++ use weak pointers to prevent a closure allocation at every
recursive invocation.

This commit also fixes the `fixCore` helper functions that were broken
after we switched to camelCase.

We have updated the test `fix1.lean` to demonstrate the native
implementation is faster. Here are the numbers on my desktop.

```
./run.sh fix1.lean 24
721420279
Time for 'native fix': 816ms
721420279
Time for 'fix in lean': 1.34s
```
2019-03-27 17:13:53 -07:00
..
control chore(library/init): avoid wf_term_hack 2019-03-27 12:12:21 -07:00
data refactor(library/init/data/string/basic): avoid artificial "fuel" using partial 2019-03-27 13:51:52 -07:00
lean chore(library/init,runtime,library/compiler): add fix primitive back 2019-03-27 17:13:53 -07:00
coe.lean chore(library/init): Bool.tt => Bool.true and Bool.ff => Bool.false 2019-03-21 15:06:44 -07:00
core.lean feat(library/equations_compiler): add support for partial definitions 2019-03-27 11:09:32 -07:00
default.lean chore(library/init,runtime,library/compiler): add fix primitive back 2019-03-27 17:13:53 -07:00
env_ext.lean chore(library): capitalize types and namespaces 2019-03-21 15:06:43 -07:00
fix.lean chore(library/init,runtime,library/compiler): add fix primitive back 2019-03-27 17:13:53 -07:00
init.md chore(*.md): fix/remove broken links 2016-02-23 10:11:24 -08:00
io.lean chore(library/init): remove fix.lean 2019-03-27 13:11:00 -07:00
platform.lean chore(library): capitalize types and namespaces 2019-03-21 15:06:43 -07:00
util.lean chore(*): Uint => UInt, Usize => USize 2019-03-21 15:06:44 -07:00
wf.lean feat(library/init/wf): remove wf_term_hack 2019-03-27 12:41:16 -07:00