2026/01/03

2026-01-03 00:03:55 +0100jmcantrell_(~weechat@user/jmcantrell) (Ping timeout: 240 seconds)
2026-01-03 00:04:30 +0100wennefer0(~wennefer0@user/wennefer0) (Quit: My Mac has gone to sleep. ZZZzzz…)
2026-01-03 00:07:00 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 00:11:23 +0100Milan_Vanca(~milan@user/Milan-Vanca:32634) (Quit: WeeChat 4.5.2)
2026-01-03 00:16:20 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 00:21:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-01-03 00:28:06 +0100emmanuelux(~emmanuelu@user/emmanuelux) emmanuelux
2026-01-03 00:32:08 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 00:37:10 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds)
2026-01-03 00:38:48 +0100Inline(~User@cgn-195-14-221-74.nc.de) Inline
2026-01-03 00:39:50 +0100 <yin> huge tangent but I just reminded myself of someone using sleep to efficiently sort a list of ints
2026-01-03 00:40:13 +0100 <geekosaur> snerk
2026-01-03 00:42:55 +0100 <yin> apparently they call it sleep sort now
2026-01-03 00:43:11 +0100califax(~califax@user/califx) (Remote host closed the connection)
2026-01-03 00:44:09 +0100califax(~califax@user/califx) califx
2026-01-03 00:44:54 +0100peterbecich(~Thunderbi@71.84.33.135) (Ping timeout: 244 seconds)
2026-01-03 00:47:53 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 00:48:15 +0100litharge(litharge@libera/bot/litharge) (Remote host closed the connection)
2026-01-03 00:48:24 +0100litharge(litharge@libera/bot/litharge) litharge
2026-01-03 00:52:46 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-01-03 00:56:35 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 252 seconds)
2026-01-03 00:57:12 +0100chexum(~quassel@gateway/tor-sasl/chexum) chexum
2026-01-03 01:03:28 +0100vulpine(xfnw@user/meow/xfnw) (Quit: Connection reset by purr)
2026-01-03 01:03:52 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 01:04:40 +0100vulpine(xfnw@user/meow/xfnw) xfnw
2026-01-03 01:10:37 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-01-03 01:16:58 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2026-01-03 01:17:19 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 01:21:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2026-01-03 01:32:34 +0100wennefer0(~wennefer0@user/wennefer0) (Quit: My Mac has gone to sleep. ZZZzzz…)
2026-01-03 01:32:56 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 01:32:58 +0100 <monochrom> Does it mean that if the list to be sorted is [n] then it will sleep for n units of time? So Ω(n) time for sorting a singleton list? That's efficient?
2026-01-03 01:35:05 +0100marinelli(~weechat@gateway/tor-sasl/marinelli) (Ping timeout: 252 seconds)
2026-01-03 01:36:01 +0100marinelli(~weechat@gateway/tor-sasl/marinelli) marinelli
2026-01-03 01:36:35 +0100Inline(~User@cgn-195-14-221-74.nc.de) (Remote host closed the connection)
2026-01-03 01:37:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2026-01-03 01:37:43 +0100 <geekosaur> for a specific definitoon of "efficient" 🙂
2026-01-03 01:48:41 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 01:51:02 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 01:51:43 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 01:53:48 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-01-03 02:04:29 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 02:04:58 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 02:05:39 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 02:07:35 +0100Inline(~User@cgn-195-14-221-74.nc.de) Inline
2026-01-03 02:08:36 +0100omidmash3(~omidmash@user/omidmash) omidmash
2026-01-03 02:09:36 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 02:09:37 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-01-03 02:10:34 +0100omidmash(~omidmash@user/omidmash) (Ping timeout: 244 seconds)
2026-01-03 02:10:34 +0100omidmash3omidmash
2026-01-03 02:11:30 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 02:12:37 +0100Inline(~User@cgn-195-14-221-74.nc.de) (Ping timeout: 264 seconds)
2026-01-03 02:14:36 +0100Inline(~User@cgn-195-14-221-74.nc.de) Inline
2026-01-03 02:20:14 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 02:21:48 +0100Tuplanolla(~Tuplanoll@88-114-88-95.elisa-laajakaista.fi) (Quit: Leaving.)
2026-01-03 02:24:39 +0100divlamir(~divlamir@user/divlamir) (Read error: Connection reset by peer)
2026-01-03 02:25:00 +0100divlamir(~divlamir@user/divlamir) divlamir
2026-01-03 02:27:44 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 02:27:55 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-01-03 02:29:09 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 02:29:21 +0100Inline(~User@cgn-195-14-221-74.nc.de) (Remote host closed the connection)
2026-01-03 02:36:34 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 02:38:23 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 02:39:08 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 02:42:31 +0100Inline(~User@cgn-195-14-221-74.nc.de) Inline
2026-01-03 02:43:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2026-01-03 02:44:46 +0100acidjnk(~acidjnk@p200300d6e7171974ecdc66dbb7a91ed3.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2026-01-03 02:51:47 +0100 <epitron> You can speed it up by a factor of 1000 by only sleeping for 1ms
2026-01-03 02:52:02 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 02:52:38 +0100 <epitron> Also its runtime is the largest value in the list, not the list size
2026-01-03 02:52:58 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 02:53:10 +0100epitronsleep sort expert
2026-01-03 02:54:56 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 02:56:09 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) humasect
2026-01-03 02:59:20 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 02:59:35 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2026-01-03 03:02:08 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 03:04:44 +0100 <monochrom> > 2^64 / 1000 / 86400
2026-01-03 03:04:51 +0100 <monochrom> % 2^64 / 1000 / 86400
2026-01-03 03:04:51 +0100 <yahb2> 2.135039823346013e11
2026-01-03 03:04:55 +0100 <monochrom> That's 2 days.
2026-01-03 03:05:35 +0100 <monochrom> It means that if I sort a list of just a few 64-bit numbers I'm already waiting 2 days.
2026-01-03 03:08:00 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 03:08:16 +0100 <monochrom> OTOH if the list has 1,000,000 numbers, we are spawning 1,000,000 threads. At that point the OS overhead of spawning so many threads becomes unbearable; and even if you find a way to tolerate it, the huge uncertainty that some threads start counting early, some others start count late, means that your sleep time cannot be as short as 1ms.
2026-01-03 03:09:01 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 03:10:43 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 03:14:11 +0100 <monochrom> Once again the fallacy of seeing O/Θ/Ω("n") and thinking "I only see 'n', so linear time, and if I can easily make a 1000x speedup then it's fast", forgetting that really n = 2^k where k is the number of input bits, so you're looking at exponential time, at which point a 1000x speedup fails to catch up.
2026-01-03 03:14:21 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 03:15:15 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds)
2026-01-03 03:15:36 +0100humasect(~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection)
2026-01-03 03:15:43 +0100wennefer0(~wennefer0@user/wennefer0) (Client Quit)
2026-01-03 03:18:16 +0100wennefer0(~wennefer0@user/wennefer0) wennefer0
2026-01-03 03:18:49 +0100Lycurgus(~juan@user/Lycurgus) Lycurgus
2026-01-03 03:19:29 +0100Inline(~User@cgn-195-14-221-74.nc.de) (Quit: KVIrc 5.2.6 Quasar http://www.kvirc.net/)
2026-01-03 03:21:28 +0100jmcantrell_(~weechat@user/jmcantrell) jmcantrell
2026-01-03 03:26:30 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 03:26:35 +0100Square3(~Square@user/square) (Ping timeout: 240 seconds)
2026-01-03 03:27:35 +0100jmcantrell_jmcantrell
2026-01-03 03:28:52 +0100Lycurgus(~juan@user/Lycurgus) (Quit: alsoknownas.renjuan.org ( juan@acm.org ))
2026-01-03 03:31:13 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds)
2026-01-03 03:42:05 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn
2026-01-03 03:47:06 +0100merijn(~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2026-01-03 03:55:15 +0100wennefer0(~wennefer0@user/wennefer0) (Quit: My Mac has gone to sleep. ZZZzzz…)