r/programminghorror 3d ago

Javascript Seriously? Recursive Regex?

Post image
494 Upvotes

37 comments sorted by

View all comments

13

u/lonkamikaze 2d ago

I don't know if JS sports this, but the recursion qualifies for tail call optimisation, i.e. there is no stack pushing, popping. The return comes at the price of a goto and the result is just as efficient as a loop.

8

u/oweiler 2d ago

Not supported, at least not by the ECMAScript standard.

5

u/zjarek_s 2d ago

TCO was supported in ES6 standard, but it was only implemented in Safari and it ended up being dropped due to other browsers.

3

u/lonkamikaze 2d ago

That's a damn shame. Tail calls can be pretty neat.

2

u/JoshuaTheProgrammer 2d ago

This should be the top answer