this post was submitted on 08 Nov 2024
746 points (98.2% liked)

Programmer Humor

19623 readers
1 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 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] BatmanAoD@programming.dev 148 points 2 weeks ago (5 children)

Reminds me of quantum-bogosort: randomize the list; check if it is sorted. If it is, you're done; otherwise, destroy this universe.

[–] xmunk@sh.itjust.works 95 points 2 weeks ago (3 children)

Guaranteed to sort the list in nearly instantaneous time and with absolutely no downsides that are capable of objecting.

[–] frezik@midwest.social 46 points 2 weeks ago (2 children)

You still have to check that it's sorted, which is O(n).

We'll also assume that destroying the universe takes constant time.

[–] BatmanAoD@programming.dev 42 points 2 weeks ago (2 children)

In the universe where the list is sorted, it doesn't actually matter how long the destruction takes!

[–] groet@feddit.org 13 points 2 weeks ago (1 children)

It actually takes a few trillion years but its fine because we just stop considering the "failed" universes because they will be gone soon™ anyway.

[–] MBM@lemmings.world 8 points 2 weeks ago

Eh, trillion is a constant

[–] FiskFisk33@startrek.website 8 points 2 weeks ago

amortized O(0)

[–] Benjaben@lemmy.world 9 points 2 weeks ago (1 children)

We'll also assume that destroying the universe takes constant time.

Well yeah just delete the pointer to it!

[–] PoolloverNathan@programming.dev 2 points 2 weeks ago

universe.take()

[–] vithigar@lemmy.ca 16 points 2 weeks ago (1 children)

Except you missed a bug in the "check if it's sorted" code and it ends up destroying every universe.

[–] db2@lemmy.world 7 points 2 weeks ago

There's a bug in it now, that's why we're still here.

[–] Zaphod@discuss.tchncs.de 25 points 2 weeks ago (1 children)

The creation and destruction of universes is left as an exercise to the reader

[–] BatmanAoD@programming.dev 4 points 2 weeks ago

Creation is easy, assuming the many-worlds interpretation of quantum mechanics!

[–] random72guy@lemmy.world 17 points 2 weeks ago (1 children)

Instead of destroying the universe, can we destroy prior, failed shuffle/check iterations to retain o(1)? Then we wouldn't have to reload all of creation into RAM.

[–] BatmanAoD@programming.dev 6 points 2 weeks ago

Delete prior iterations of the loop in the same timeline? I'm not sure there's anything in quantum mechanics to permit that...

[–] SubArcticTundra@lemmy.ml 13 points 2 weeks ago (2 children)

What library are you using for that?

[–] jcg@halubilo.social 29 points 2 weeks ago* (last edited 2 weeks ago) (1 children)

is-sorted and a handful of about 300 other npm packages. Cloning the repo and installing takes about 16 hours but after that you're pretty much good for the rest of eternity

[–] Swedneck@discuss.tchncs.de 8 points 2 weeks ago (1 children)

that explains why it took god 7 days to make the universe

[–] onlinepersona@programming.dev 1 points 2 weeks ago* (last edited 2 weeks ago)

We still suffer from the runtime errors that could've been caught at compilation time.

Anti Commercial-AI license

[–] SkaveRat@discuss.tchncs.de 11 points 2 weeks ago

In Python you just use

import destroy_universe
[–] frezik@midwest.social 2 points 2 weeks ago

Since randomizing the list increases entropy, it could theoretically make your cpu cooler just before it destroys the universe.