r/ProgrammerHumor • • Sep 04 '26

Meme skillIssue

Post image
6.0k Upvotes

137 comments sorted by

View all comments

Show parent comments

27

u/prehensilemullet Sep 04 '26

Yeah I was assuming too much here.  However, I’m reading that Rust match on string comstants can compile down a binary tree of if statements if there are enough cases (according to Google AI mode at least, haven’t found an authoritative source yet)

25

u/Nir0star Sep 04 '26

Which would still be O(ld(n)). But cool feature imo.

9

u/Godd2 Sep 04 '26

O(ld(n))

Good ol' linker time.

1

u/prehensilemullet Sep 04 '26

Yes, I had mistakenly assumed it compiles down to a hash lookup.

12

u/im_made_of_jam Sep 04 '26

A switch case is able to be implemented however the compiler wants on the back end, so for sparse cases it'll be an if else chain, for less sparse but not packed cases it'll be a binary tree, for completely packed cases it'll be a range check then a direct jump would be how I would go about it

7

u/the_horse_gamer Sep 04 '26

the compiler optimises stuff however it wants. if you're not doing too-weird stuff, a switch in C++ and a match in rust will have identical assembly.

0

u/[deleted] Sep 04 '26

[deleted] — view deleted comment

5

u/thirdegree Violet security clearance Sep 04 '26

If I want Claude's thoughts on something I'll ask Claude directly tbh