I have to admit that breaking off "long head" is a really ingenious solution and the packaging looks clean enough that I can't seem to come up with a way to break it...yet There is some added overhead from arrow-function wrapping but fixing
this
and yield
is certainly worth it. The spurious overhead from yield* [element]
instead of yield element
is something else but can probably be also optimized away with extra effort. I'll think more along the lines of what else can be improved by static analysis if and when I get a chance.
Thanx again for pushing this forward!