Hacker News new | ask | show | jobs
by emmelaich 588 days ago
BUT WAIT!

    $ raku -e 'say (1, 1, *+* ... *)[0..10]'
    (1 1 2 3 5 8 13 21 34 55 89)
1 comments

I… love it? It's so elegant it's infuriating.
It also seems slowish, but seems the problem is the startup cost. So probably pretty smart?

The following shows fairly stable times.

> for i in $(seq 20); do time raku -e "say (1, 1, + ... *)[0..$i]"; done

raku kinda puts a bunch of parts of itself together during startup, not entirely unlike Julia.

The sheer dynamism of the thing makes pre-baking that non-trivial, also not entirely unlike Julia.

I seem to recall chatting with the devs on IRC a few years and there seeming to be more than one viable way to potentially fix it, but they all seemed to me to share the property of needing a lot of effort during which nothing would work at all before you got something to show for it - and a decent chance of what you got to show after all that time was "welp, here's why which one can't work" - which is a really heavy lift in terms of somebody finding motivation to try it in the first place.

So tl;dr "yes, I dislike the startup cost, no, I don't expect it to change soon and I don't think it's a black mark against the team that it probably won't."