51
Push Ifs Up And Fors Down (matklad.github.io)
you are viewing a single comment's thread
view the rest of the comments
[-] ShaunaTheDead@kbin.social 3 points 10 months ago

I'm curious, is there a difference in doing it like this?:

var condition = var1 && var2

for walrus in walruses {
  if (condition) {
    walrus.frobnicate()
  } else {
    walrus.transmogrify()
  }
}

Doesn't assigning the condition to a variable make it so that it's only really evaluated once?

[-] pipe01@lemmy.pipe01.net 1 points 10 months ago

You still need to read the variable in each iteration, but the cost of that is probably negligible

[-] declination@programming.dev 4 points 10 months ago* (last edited 10 months ago)

Modern optimizing compilers are magical. I would need to check assembly but I would actually expect the if to be hoisted out of the loop entirely to relieve pressure on the branch predictor.

load more comments (9 replies)
this post was submitted on 17 Nov 2023
51 points (91.8% liked)

Programming

17025 readers
117 users here now

Welcome to the main community in programming.dev! Feel free to post anything relating to programming here!

Cross posting is strongly encouraged in the instance. If you feel your post or another person's post makes sense in another community cross post into it.

Hope you enjoy the instance!

Rules

Rules

  • Follow the programming.dev instance rules
  • Keep content related to programming in some way
  • If you're posting long videos try to add in some form of tldr for those who don't want to watch videos

Wormhole

Follow the wormhole through a path of communities !webdev@programming.dev



founded 1 year ago
MODERATORS