4 ms·
This is fantastic news. Speedups across the board and lots of small goodies everywhere! Previously I had been using macros to bolt-on support for definitions i
by bjoli 7y ago
This is fantastic news. Speedups across the board and lots of small goodies everywhere!
Previously I had been using macros to bolt-on support for definitions in expression context, but that was buggy at best. If you have time you should look at the algorithm behind this letrectification. The paper is called "Fixing letrec (Reloaded)" and can be found here: https://legacy.cs.indiana.edu/~dyb/pubs/letrec-reloaded.pdf https://legacy.cs.indiana.edu/~dyb/pubs/letrec-reloaded.pdf
This means letrec is now just as fast as let, which means (define ...) at the top of functions now is as fast as (let ...). For small functions called often, that could add quite a bit of overhead.