this post was submitted on 11 Nov 2025
556 points (97.4% liked)

Programmer Humor

27322 readers
2231 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] AllHailTheSheep@sh.itjust.works 3 points 3 days ago* (last edited 3 days ago) (2 children)

I think modern compilers do actually compile recursion to be equivalent with an iterative model.

edit: yes when possible they will compile to be iterative, but if it can't be written iteratively it will be a series of calls and returns. depends on the specific type of recursion it looks like.

[–] Buddahriffic@lemmy.world 3 points 3 days ago

At one point I developed a habit of converting any recursive algorithm I was writing into a loop instead, since I knew function calls have overhead and all recursion really does is lets you use the calling stack and flow control as an invisible data structure.

Then I got a question about parsing brackets properly during an interview and wrote a loop-based parser to solve it and the guy had to fish for a bit before I remembered recursion and realized that's the answer he was looking for. My mind just wouldn't consider using a whole calling stack when an integer would do the trick faster.

[–] ryannathans@aussie.zone 2 points 3 days ago* (last edited 3 days ago)

I think you're talking about tail recursion

https://en.wikipedia.org/wiki/Tail_call (see section on equivalence to while statement)

Not the standard case where the stack grows