Yeah but did you know he worked for Blizzard tho
Oh shit, gotta check the negative numbers as well!
Oh. I thought that was Elixir until I zoomed in.
I am more amazed that he didn’t stop at 10 and think “damn this is tiresome isn’t there a one liner i could do?”. I want to know how far he went. His stubbornness is amazing but also scary. I haven’t seen this kind of code since back in school lol lol lol
This is why this code is good. Opens MS paint. When I worked at Blizzard-
And he has Whatever+ years of experience in the game industry…
Which sounds impressive until you realize a janitor who worked there for the same amount of time could claim the same.
Would this be a case of modulo saving the day?
Like: If Number modulo 2 = 0, true
This has to be taken out of context
well that’s the joke, isn’t it
I mean, is it a joke? Because i have no context other than, after making a bad opinion known, there is a lot of talk about his code being terrible. So i guess this is fabricated then yea?
oh. is it assumed we know who the person is? i have no idea who that is.
He’s Thor, worked for blizzard entertainment, indie dev, has a Ferret sanctuary, knows cyber security. Seems like a cool enough guy i guess, has incorrect opinion on video game preservation.
Good if you are rated by an AI that pays for LOCs.
no unit tests huh.
/s
This code would run a lot faster as a hash table look up.
I agree. Just need a table of even numbers. Oh and a table of odd numbers, of course, else you cant return the false… duh.
In a Juliana tree, or a dictionary tree if you want. For speed.
Y’all laugh but this man has amazing code coverage numbers.
Thanks to goodness, finally. A (giggle & snort) solid algorithm. There ya’s go set yer clocks & go get a haircut.
This is YandereDev levels of bad.
this is yanderedev.
no the code is
ftfy
bool IsEven(int number) { return !IsOdd(number); } bool IsOdd(int number) { return !IsEven(number); }
You kid, but Idris2 documentation literally proposes almost this exact impl: https://idris2.readthedocs.io/en/latest/tutorial/typesfuns.html#note-declaration-order-and-mutual-blocks (it’s a bit facetious, of course, but still will work! the actual impl in the language is a lot more boring: https://github.com/idris-lang/Idris2/blob/main/libs/base/Data/Integral.idr)
I hadn’t seen Idris2. Thank you for providing me with a new rabbit hole!
I’m glad to tell more people about it. It’s really quite amazing (I could write a somewhat complex algorithm and prove some properties about it in a couple afternoons, despite limited formal verification experience) and I’m sure that in 20 odd years the ideas behind it will make it into mainstream languages, just as with ML/Haskell.
Plot twist: they used a script to generate that code.
def even(n: int) -> bool: code = "" for i in range(0, n+1, 2): code += f"if {n} == {i}:\n out = True\n" j = i+1 code += f"if {n} == {j}:\n out = False\n" local_vars = {} exec(code, {}, local_vars) return local_vars["out"]
scalable version
Not even else if? Damn, I guess we’re checking all the numbers every time then. This is what peak performance looks like
O(1) means worst and best case performance are the same.