3 ms·
"For that reason alone I think tail call elimination is a must, especially in today's transpiling world." This is an important insight. I feel the JavaScript
by soegaard 8y ago
"For that reason alone I think tail call elimination is a must, especially in today's transpiling world."
This is an important insight.
I feel the JavaScript implementors are dragging their on getting tail call elimination widely supported.
- bjoli 8y agoI have re-implemented rackets for loops using named let in a way that allows me to almost reach feature parity in a weekend [0]. I could implement python's list comprehensions the same way without much fuss. I can't imagine having to do the same using an already existing looping construct with it's own edge cases and subtle semantics. [0]: I didn't think about post-guards when I started, and adding them now would mean having to do some restructuring of the quite hairy emitting macro, which I won't do since I don't see the use case for post guards for anything else than making in-value a bit more elegant