2025/03/20

2025-03-20 00:00:00 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-03-20 00:00:16 +0100vanishingideal(~vanishing@user/vanishingideal) (Quit: leaving)
2025-03-20 00:00:22 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Remote host closed the connection)
2025-03-20 00:01:34 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-03-20 00:02:54 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 244 seconds)
2025-03-20 00:08:29 +0100kh0d(~kh0d@212.200.247.168) (Remote host closed the connection)
2025-03-20 00:11:02 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 00:12:04 +0100ash3en(~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Quit: ash3en)
2025-03-20 00:15:49 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-03-20 00:17:28 +0100takuan(~takuan@d8D86B601.access.telenet.be) (Remote host closed the connection)
2025-03-20 00:17:42 +0100ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 272 seconds)
2025-03-20 00:23:49 +0100tv(~tv@user/tv) (Read error: Connection reset by peer)
2025-03-20 00:26:28 +0100malte(~malte@mal.tc) (Remote host closed the connection)
2025-03-20 00:29:38 +0100 <yin> TIL i can specify package names in import statements
2025-03-20 00:29:40 +0100malte(~malte@mal.tc) malte
2025-03-20 00:30:01 +0100 <yin> and that "this" is a reserved name
2025-03-20 00:32:29 +0100 <tomsmeding> yin: is "this" a reserved name? Are you sure you did not end up in C++ accidentally?
2025-03-20 00:34:19 +0100 <int-e> "The special package name this can be used to refer to the current package being built."
2025-03-20 00:34:32 +0100 <int-e> https://downloads.haskell.org/ghc/latest/docs/users_guide/exts/package_qualified_imports.html#pack…
2025-03-20 00:34:53 +0100 <tomsmeding> ah, for packages -- TIL
2025-03-20 00:34:57 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 00:36:52 +0100 <yin> i'm not sure of anything these days
2025-03-20 00:38:30 +0100 <int-e> . o O ( I doubt, therefore I might be. )
2025-03-20 00:39:58 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-03-20 00:43:38 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 00:45:05 +0100 <yin> as the area of your knowledge grows, so does the perimeter with ignorance
2025-03-20 00:46:35 +0100 <EvanR> with great power comes great I²R
2025-03-20 00:47:30 +0100 <int-e> hmm drop the linearity and you might have a light bulb moment
2025-03-20 00:48:06 +0100int-eohms and coughs ;-)
2025-03-20 00:48:06 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 272 seconds)
2025-03-20 00:50:45 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 00:52:45 +0100 <yin> resistence is futile
2025-03-20 00:55:33 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-03-20 00:56:26 +0100 <yin> we should stay grounded and avoid heated arguments
2025-03-20 00:56:28 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2025-03-20 00:57:28 +0100euleritian(~euleritia@dynamic-176-006-135-145.176.6.pool.telefonica.de)
2025-03-20 01:00:28 +0100zenstoic(uid461840@id-461840.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2025-03-20 01:01:51 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 01:06:43 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-03-20 01:07:20 +0100euleritian(~euleritia@dynamic-176-006-135-145.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2025-03-20 01:07:43 +0100euleritian(~euleritia@95.90.214.149)
2025-03-20 01:09:25 +0100acidjnk(~acidjnk@p200300d6e71c4f869945a39c2a143247.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2025-03-20 01:16:15 +0100euleritian(~euleritia@95.90.214.149) (Read error: Connection reset by peer)
2025-03-20 01:17:12 +0100euleritian(~euleritia@95.90.214.149)
2025-03-20 01:17:39 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 01:17:49 +0100dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 244 seconds)
2025-03-20 01:17:56 +0100euleritian(~euleritia@95.90.214.149) (Read error: Connection reset by peer)
2025-03-20 01:18:42 +0100euleritian(~euleritia@95.90.214.149)
2025-03-20 01:18:57 +0100dibblego(~dibblego@haskell/developer/dibblego) dibblego
2025-03-20 01:22:28 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-03-20 01:28:42 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 01:29:42 +0100dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 244 seconds)
2025-03-20 01:31:02 +0100dibblego(~dibblego@116-255-1-119.ip4.superloop.au)
2025-03-20 01:31:02 +0100dibblego(~dibblego@116-255-1-119.ip4.superloop.au) (Changing host)
2025-03-20 01:31:02 +0100dibblego(~dibblego@haskell/developer/dibblego) dibblego
2025-03-20 01:32:37 +0100weary-traveler(~user@user/user363627) user363627
2025-03-20 01:33:08 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-03-20 01:36:25 +0100user363627(~user@user/user363627) (Ping timeout: 244 seconds)
2025-03-20 01:49:13 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 01:50:54 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-03-20 01:52:48 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2025-03-20 01:54:36 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-03-20 01:55:20 +0100Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2025-03-20 01:56:09 +0100dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 268 seconds)
2025-03-20 02:03:28 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 272 seconds)
2025-03-20 02:04:50 +0100euleritian(~euleritia@95.90.214.149) (Ping timeout: 244 seconds)
2025-03-20 02:05:01 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 02:06:14 +0100 <monochrom> impedance > resistance >:)
2025-03-20 02:06:30 +0100euleritian(~euleritia@dynamic-176-006-135-145.176.6.pool.telefonica.de)
2025-03-20 02:07:53 +0100euleritian(~euleritia@dynamic-176-006-135-145.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2025-03-20 02:08:10 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de)
2025-03-20 02:09:39 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-03-20 02:15:26 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 02:17:17 +0100sprotte24(~sprotte24@p200300d16f414f00d95fa8d2f58ba4f5.dip0.t-ipconnect.de) (Quit: Leaving)
2025-03-20 02:17:42 +0100dibblego(~dibblego@116-255-1-119.ip4.superloop.au)
2025-03-20 02:17:42 +0100dibblego(~dibblego@116-255-1-119.ip4.superloop.au) (Changing host)
2025-03-20 02:17:42 +0100dibblego(~dibblego@haskell/developer/dibblego) dibblego
2025-03-20 02:19:56 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 265 seconds)
2025-03-20 02:20:48 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 02:26:00 +0100ryanbooker(uid4340@id-4340.hampstead.irccloud.com) ryanbooker
2025-03-20 02:27:29 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-03-20 02:29:59 +0100alp(~alp@2001:861:8ca0:4940:77c4:3560:6515:b78c) (Ping timeout: 260 seconds)
2025-03-20 02:38:51 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 02:44:00 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-03-20 02:50:07 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de) (Remote host closed the connection)
2025-03-20 02:50:52 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de)
2025-03-20 02:54:38 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 02:59:33 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-03-20 03:00:30 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 03:03:14 +0100tabaqui(~tabaqui@167.71.80.236) (Ping timeout: 260 seconds)
2025-03-20 03:04:48 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-03-20 03:07:21 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 244 seconds)
2025-03-20 03:10:27 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 03:15:06 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-03-20 03:17:08 +0100notdabs(~Owner@2600:1700:69cf:9000:28cb:4a01:fb92:fda0) (Read error: Connection reset by peer)
2025-03-20 03:25:57 +0100euphores(~SASL_euph@user/euphores) (Ping timeout: 248 seconds)
2025-03-20 03:26:13 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 03:30:51 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-03-20 03:33:50 +0100euphores(~SASL_euph@user/euphores) euphores
2025-03-20 03:41:59 +0100tavare(~tavare@150.129.88.189)
2025-03-20 03:42:00 +0100tavare(~tavare@150.129.88.189) (Changing host)
2025-03-20 03:42:00 +0100tavare(~tavare@user/tavare) tavare
2025-03-20 03:42:00 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 03:44:39 +0100hgolden(~hgolden@2603:8000:9d00:3ed1:6ff3:8389:b901:6363) (Remote host closed the connection)
2025-03-20 03:45:54 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 03:47:09 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds)
2025-03-20 03:50:14 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 244 seconds)
2025-03-20 03:50:57 +0100zlqrvx(~zlqrvx@101.175.150.247) (Ping timeout: 276 seconds)
2025-03-20 03:51:41 +0100zlqrvx(~zlqrvx@101.175.150.247)
2025-03-20 03:57:46 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 04:02:45 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-03-20 04:03:42 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2025-03-20 04:04:21 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de)
2025-03-20 04:08:53 +0100jmcantrell(~weechat@user/jmcantrell) (Quit: WeeChat 4.5.2)
2025-03-20 04:11:07 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 04:15:56 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-03-20 04:25:25 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) k_hachig
2025-03-20 04:26:57 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 04:32:05 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-03-20 04:32:59 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 04:36:36 +0100tremon(~tremon@83.80.159.219) (Quit: getting boxed in)
2025-03-20 04:37:22 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 248 seconds)
2025-03-20 04:42:41 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 04:42:58 +0100synchromesh(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) synchromesh
2025-03-20 04:43:16 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) (Ping timeout: 268 seconds)
2025-03-20 04:44:45 +0100synchrom1(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) synchromesh
2025-03-20 04:45:54 +0100synchrom2(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) synchromesh
2025-03-20 04:47:25 +0100synchrom3(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) synchromesh
2025-03-20 04:48:04 +0100synchromesh(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) (Ping timeout: 260 seconds)
2025-03-20 04:48:04 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-03-20 04:49:21 +0100synchrom1(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) (Ping timeout: 244 seconds)
2025-03-20 04:50:46 +0100synchromesh(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) synchromesh
2025-03-20 04:50:59 +0100synchrom2(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) (Ping timeout: 260 seconds)
2025-03-20 04:52:27 +0100synchrom3(~john@2406:5a00:24cf:bb00:3dc7:89db:26de:ecc8) (Ping timeout: 244 seconds)
2025-03-20 04:57:22 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) k_hachig
2025-03-20 04:58:30 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 05:03:37 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) (Ping timeout: 268 seconds)
2025-03-20 05:04:08 +0100tavare(~tavare@user/tavare) (Ping timeout: 245 seconds)
2025-03-20 05:05:46 +0100ryanbooker(uid4340@id-4340.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2025-03-20 05:05:52 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-03-20 05:16:33 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 05:18:22 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 05:18:22 +0100j1n37(~j1n37@user/j1n37) (Read error: Connection reset by peer)
2025-03-20 05:18:52 +0100tavare(~tavare@user/tavare) tavare
2025-03-20 05:21:01 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2025-03-20 05:21:41 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds)
2025-03-20 05:21:57 +0100j1n37(~j1n37@user/j1n37) j1n37
2025-03-20 05:22:40 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-03-20 05:32:19 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 05:37:14 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-03-20 05:37:29 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) k_hachig
2025-03-20 05:41:47 +0100aforemny_(~aforemny@i577B13B9.versanet.de) aforemny
2025-03-20 05:42:10 +0100Sgeo_(~Sgeo@user/sgeo) Sgeo
2025-03-20 05:42:45 +0100aforemny(~aforemny@2001:9e8:6ce6:a700:9c3f:a849:8d9b:359a) (Ping timeout: 252 seconds)
2025-03-20 05:43:09 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-03-20 05:44:19 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) (Ping timeout: 268 seconds)
2025-03-20 05:45:27 +0100dsrt^(dsrt@c-71-199-187-173.hsd1.ga.comcast.net) (Ping timeout: 244 seconds)
2025-03-20 05:46:00 +0100Sgeo(~Sgeo@user/sgeo) (Ping timeout: 276 seconds)
2025-03-20 05:46:08 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Client Quit)
2025-03-20 05:46:39 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2025-03-20 05:48:08 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 05:53:05 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-03-20 05:54:58 +0100Square(~Square4@user/square) (Ping timeout: 244 seconds)
2025-03-20 05:59:04 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 272 seconds)
2025-03-20 05:59:38 +0100simplystuart(~simplystu@c-75-75-152-164.hsd1.pa.comcast.net)
2025-03-20 06:00:00 +0100hgolden(~hgolden@2603:8000:9d00:3ed1:6ff3:8389:b901:6363) hgolden
2025-03-20 06:00:13 +0100 <haskellbridge> <dmjio> "rapid" is underrated
2025-03-20 06:00:31 +0100michalz(~michalz@185.246.207.205)
2025-03-20 06:01:31 +0100peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2025-03-20 06:03:53 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 06:04:26 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 06:07:01 +0100yago(~yago@2a0c:5a82:1708:200:6253:81d4:6f3:487e)
2025-03-20 06:08:21 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 246 seconds)
2025-03-20 06:08:43 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-03-20 06:19:46 +0100yago(~yago@2a0c:5a82:1708:200:6253:81d4:6f3:487e) (Ping timeout: 244 seconds)
2025-03-20 06:25:01 +0100prasad(~Thunderbi@c-73-246-138-70.hsd1.in.comcast.net)
2025-03-20 06:27:54 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 06:34:32 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-03-20 06:42:07 +0100takuan(~takuan@d8D86B601.access.telenet.be)
2025-03-20 06:45:57 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 06:50:46 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds)
2025-03-20 06:50:50 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 06:54:21 +0100dsrt^(~dsrt@c-71-199-187-173.hsd1.ga.comcast.net)
2025-03-20 06:54:54 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 244 seconds)
2025-03-20 06:58:58 +0100wildsalander(~wildsalan@81-175-155-97.bb.dnainternet.fi)
2025-03-20 07:01:44 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 07:07:02 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds)
2025-03-20 07:12:53 +0100lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2025-03-20 07:13:08 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 07:17:54 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds)
2025-03-20 07:28:55 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 07:32:49 +0100jrm2(~jrm@user/jrm) jrm
2025-03-20 07:33:12 +0100jrm(~jrm@user/jrm) (Ping timeout: 252 seconds)
2025-03-20 07:34:04 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-03-20 07:34:40 +0100jrm2jrm
2025-03-20 07:35:09 +0100fun-safe-math(~fun-safe-@2601:1c2:1b7f:801f:52d3:ce67:1ea3:7bc7) ()
2025-03-20 07:36:15 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 07:40:24 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 246 seconds)
2025-03-20 07:43:50 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2025-03-20 07:44:12 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de)
2025-03-20 07:44:42 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 07:48:35 +0100euleritian(~euleritia@ip5f5ad695.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2025-03-20 07:48:42 +0100euleritian(~euleritia@dynamic-176-006-133-116.176.6.pool.telefonica.de)
2025-03-20 07:49:39 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-03-20 07:51:54 +0100rvalue(~rvalue@user/rvalue) (Ping timeout: 252 seconds)
2025-03-20 08:00:02 +0100caconym(~caconym@user/caconym) (Quit: bye)
2025-03-20 08:00:31 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 08:01:04 +0100caconym(~caconym@user/caconym) caconym
2025-03-20 08:03:09 +0100tromp(~textual@2a02:a210:cba:8500:f085:be23:3f4e:4a7a)
2025-03-20 08:03:53 +0100 <[exa]> hm, is there some simple/recommended way to read a bunch of Storables from a file?
2025-03-20 08:04:58 +0100 <[exa]> e.g. something like `hReadStorable :: Storable a => Handle -> IO a` or so
2025-03-20 08:05:31 +0100rvalue(~rvalue@user/rvalue) rvalue
2025-03-20 08:05:49 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds)
2025-03-20 08:07:20 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2025-03-20 08:07:34 +0100 <[exa]> ok, `storablevector` pretty much does it, great :)
2025-03-20 08:10:41 +0100gmg(~user@user/gehmehgeh) gehmehgeh
2025-03-20 08:10:58 +0100Sgeo_(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2025-03-20 08:11:46 +0100vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2025-03-20 08:13:44 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 244 seconds)
2025-03-20 08:14:10 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 08:15:10 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) Lord_of_Life
2025-03-20 08:18:43 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds)
2025-03-20 08:21:19 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 08:25:23 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-03-20 08:28:00 +0100jle`(~jle`@2603:8001:3b00:11:ad81:3a03:5eb:774) (Ping timeout: 246 seconds)
2025-03-20 08:28:02 +0100ash3en(~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) ash3en
2025-03-20 08:28:58 +0100jle`(~jle`@2603:8001:3b00:11::1156) jle`
2025-03-20 08:29:54 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 08:35:00 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds)
2025-03-20 08:36:52 +0100sabathan(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Read error: Connection reset by peer)
2025-03-20 08:37:37 +0100tavare(~tavare@user/tavare) (Remote host closed the connection)
2025-03-20 08:40:27 +0100sabathan(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-03-20 08:45:40 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn
2025-03-20 08:47:57 +0100ft(~ft@p508db463.dip0.t-ipconnect.de) (Quit: leaving)
2025-03-20 08:50:42 +0100merijn(~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds)
2025-03-20 08:53:57 +0100gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2025-03-20 08:54:55 +0100acidjnk(~acidjnk@p200300d6e71c4f93c844fc72ca8884d1.dip0.t-ipconnect.de) acidjnk
2025-03-20 08:58:22 +0100machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2025-03-20 09:01:44 +0100kh0d(~kh0d@89.216.103.150)
2025-03-20 09:05:56 +0100gmg(~user@user/gehmehgeh) gehmehgeh
2025-03-20 09:07:07 +0100kh0d(~kh0d@89.216.103.150) (Read error: Connection reset by peer)
2025-03-20 09:07:24 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 09:07:36 +0100kh0d(~kh0d@89.216.103.150)
2025-03-20 09:11:08 +0100vpan(~vpan@212.117.1.172)
2025-03-20 09:11:49 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-03-20 09:15:58 +0100JamesMowery17(~JamesMowe@ip68-228-212-232.ph.ph.cox.net) (Quit: Ping timeout (120 seconds))
2025-03-20 09:16:05 +0100Digitteknohippie(~user@user/digit) Digit
2025-03-20 09:16:58 +0100Digit(~user@user/digit) (Ping timeout: 252 seconds)
2025-03-20 09:19:09 +0100JamesMowery17(~JamesMowe@ip68-228-212-232.ph.ph.cox.net) JamesMowery
2025-03-20 09:21:16 +0100tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2025-03-20 09:23:09 +0100ash3en(~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Quit: ash3en)
2025-03-20 09:23:25 +0100euleritian(~euleritia@dynamic-176-006-133-116.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2025-03-20 09:24:39 +0100euleritian(~euleritia@ip2504f9dc.dynamic.kabel-deutschland.de)
2025-03-20 09:31:57 +0100 <[exa]> tomsmeding: btw any hot protip on how to do a bucketing aggregation in any of the array packages, preferably without going to mutable arrays? (I've got one array with N items, one array with N indexes 0..K-1 (which places the item into i-th bucket), and want to have an array with K sums of items that belong to i-th bucket)
2025-03-20 09:32:05 +0100 <[exa]> tomsmeding: (basically k-means ^ )
2025-03-20 09:32:35 +0100 <tomsmeding> I know off the top of my head how the primitive is called in Accelerate and Futhark. :p
2025-03-20 09:32:40 +0100tomsmedingopens repa docs
2025-03-20 09:33:39 +0100tomsmedingis confused
2025-03-20 09:34:53 +0100 <tomsmeding> oh repa doesn't have push arrays?
2025-03-20 09:35:38 +0100 <[exa]> so in accelerate and futhark this is "push arrays", right?
2025-03-20 09:35:50 +0100 <tomsmeding> in accelerate it's 'permute', in futhark it's 'reduce_by_index'
2025-03-20 09:36:59 +0100 <tomsmeding> in the general lingo of array languages, there's "pull arrays" (arrays defined by a function from index to value) and "push arrays" (arrays defined by a function I -> I' and an array on index space I; the function denotes where the element should go)
2025-03-20 09:37:22 +0100alp(~alp@2001:861:8ca0:4940:17be:23b1:68c0:522c)
2025-03-20 09:38:00 +0100 <tomsmeding> [exa]: in massiv, I guess makeLoadArray(S)?
2025-03-20 09:38:11 +0100 <tomsmeding> why is this so non-obvious
2025-03-20 09:38:15 +0100 <[exa]> lemme check, I'm at backpermute now :D
2025-03-20 09:38:21 +0100 <tomsmeding> backpermute is the other way round
2025-03-20 09:38:39 +0100 <tomsmeding> backpermute is the pull array version
2025-03-20 09:39:06 +0100 <[exa]> yap, was looking for any permute
2025-03-20 09:39:27 +0100tomsmedingsearches for "repa push array" on duck
2025-03-20 09:39:32 +0100 <tomsmeding> "Including results for javascript array push method"
2025-03-20 09:39:36 +0100 <tomsmeding> no wtf
2025-03-20 09:40:59 +0100 <[exa]> like, I can see why people dodge this given the insane ambiguity in optimization of the usual push arrays
2025-03-20 09:41:15 +0100 <tomsmeding> it's one of the fundamental things you need to do histogram-like things
2025-03-20 09:41:26 +0100 <[exa]> yeah
2025-03-20 09:41:26 +0100 <tomsmeding> also it's one of the standard building blocks for the implementation of a parallel 'filter'
2025-03-20 09:41:51 +0100 <tomsmeding> (map the predicate over the input array, scan (+) over that to determine destination indices, then forward permutation)
2025-03-20 09:42:00 +0100 <Athas> Aren't push/pull arrays representations? Does Accelerate's permute actually construct a push array?
2025-03-20 09:42:01 +0100chele(~chele@user/chele) chele
2025-03-20 09:42:42 +0100 <[exa]> as in, histograms ain't that big of an issue because the histogram array is relatively tiny, you can fold your way around that and it's gonna be fast. But I've got like 1MB target array, this won't fold.
2025-03-20 09:42:43 +0100 <tomsmeding> Athas: None of Accelerate's source-level primitives construct a delayed array, it's all manifest, so indeed, technically there are neither push arrays _nor_ pull arrays
2025-03-20 09:43:01 +0100 <Athas> Yeah, that's what I thought.
2025-03-20 09:43:04 +0100 <tomsmeding> but it's still useful to think of the two directions when evaluating primitives / their performance
2025-03-20 09:43:22 +0100 <[exa]> ah, here we go: DL: Delayed load representation. Also known as Push array.
2025-03-20 09:43:33 +0100 <tomsmeding> [exa]: yes, that's how I ended up with makeLoadArray*
2025-03-20 09:43:33 +0100 <[exa]> tomsmeding: thanks a lot
2025-03-20 09:44:22 +0100ash3en(~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) ash3en
2025-03-20 09:44:22 +0100 <tomsmeding> you know what? Neither repa nor massiv have a parallel filtering function
2025-03-20 09:44:53 +0100 <[exa]> filtering as in "shrink vector" or "mask operations" ?
2025-03-20 09:44:55 +0100 <tomsmeding> Or at least it doesn't have "filter" in the name
2025-03-20 09:44:57 +0100 <tomsmeding> :t filter
2025-03-20 09:44:58 +0100 <lambdabot> (a -> Bool) -> [a] -> [a]
2025-03-20 09:45:00 +0100 <tomsmeding> as in that one
2025-03-20 09:45:06 +0100 <[exa]> so a shrinky one
2025-03-20 09:45:08 +0100 <tomsmeding> yes
2025-03-20 09:45:35 +0100 <[exa]> yeah well you know how lovely the parallelization of that is
2025-03-20 09:45:49 +0100 <tomsmeding> as I said, you can parallelise that with map + scan + permute
2025-03-20 09:45:56 +0100 <tomsmeding> but it's not very fast, indeed
2025-03-20 09:46:21 +0100 <tomsmeding> scan and permute happen to roughly be the array combinators with the worst constant factors
2025-03-20 09:46:22 +0100 <[exa]> like,
2025-03-20 09:46:32 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
2025-03-20 09:46:38 +0100 <[exa]> this sounds like you'd get an array of data-determined size
2025-03-20 09:46:42 +0100 <tomsmeding> yes
2025-03-20 09:46:43 +0100 <[exa]> sounds like nope.
2025-03-20 09:46:47 +0100 <tomsmeding> it's fine
2025-03-20 09:47:02 +0100[exa]has his opinion on data-determined sizes
2025-03-20 09:47:05 +0100 <tomsmeding> it means not all shapes are known statically, but that's already the case if you can create arrays with runtime shapes
2025-03-20 09:47:33 +0100 <tomsmeding> let n = sum _ in generate [n] (\i -> _)
2025-03-20 09:47:44 +0100 <tomsmeding> voilà, a data-determined array size
2025-03-20 09:48:08 +0100 <tomsmeding> this is supported first-class in the vast majority of array languages
2025-03-20 09:48:47 +0100 <tomsmeding> (I know of one where it isn't, which I recently learned of -- Dr.Jit -- and that's a rather strange one, as array languages go)
2025-03-20 09:49:28 +0100 <[exa]> like, it's okay but if your arrays are a few tens of gigabytes you can't just allow the program to yolo allocate a new one
2025-03-20 09:49:37 +0100 <[exa]> (usually it can't)
2025-03-20 09:50:21 +0100 <tomsmeding> [exa]: that sounds like it's more about allocation than about dynamic sizing?
2025-03-20 09:50:58 +0100 <[exa]> yeah, mostly. but you always need to allocate somehow, right?
2025-03-20 09:51:28 +0100 <tomsmeding> functional array languages are not very good at controlling allocation, yes
2025-03-20 09:51:33 +0100 <tomsmeding> the explicit representation markers in repa and massiv help a bit
2025-03-20 09:51:41 +0100 <tomsmeding> I still don't see what the connection with dynamic sizing is :p
2025-03-20 09:52:48 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 09:54:46 +0100 <[exa]> in most cases that I've seen in practice there's usually a switch that triggers if the array reduced too much or too little (usually corner cases), which is preferably triggered before the costly aggregation takes place
2025-03-20 09:55:02 +0100 <[exa]> which implies you need some custom code between the scan and permute
2025-03-20 09:55:15 +0100 <[exa]> so I'm not a big fan of having these glued into single functions
2025-03-20 09:55:28 +0100 <tomsmeding> [exa]: what do you mean with "reduced too much / too little"?
2025-03-20 09:56:19 +0100 <[exa]> say you're clustering stuff and you get a pathological case where everything gets into a single cluster (most algorithms have to interrupt and do stuff differently)
2025-03-20 09:57:17 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 244 seconds)
2025-03-20 09:57:32 +0100 <tomsmeding> I see
2025-03-20 09:57:38 +0100 <[exa]> btw the makeLoadArray is probably not it (or I don't see how to use it to tell it the index)
2025-03-20 09:58:31 +0100 <tomsmeding> [exa]: makeLoadArray is the monadic thing, essentially
2025-03-20 09:58:47 +0100 <tomsmeding> the function you pass should use the element writing function _it_ gets passed to fill the destination array
2025-03-20 09:59:00 +0100 <tomsmeding> I have no clue what that Bool is
2025-03-20 09:59:21 +0100 <tomsmeding> ah you get False if it was out of range?
2025-03-20 09:59:23 +0100 <tomsmeding> odd
2025-03-20 09:59:32 +0100 <[exa]> yes the bool confuses me
2025-03-20 09:59:44 +0100 <[exa]> ah wait there's one extra parentheses there
2025-03-20 09:59:49 +0100 <[exa]> gooooood okay, saved
2025-03-20 09:59:52 +0100 <tomsmeding> ah :)
2025-03-20 10:00:50 +0100 <[exa]> now the other question is how to actually do the aggregation/sum there, for the histogram
2025-03-20 10:00:59 +0100 <tomsmeding> oh wait
2025-03-20 10:01:00 +0100merijn(~merijn@77.242.116.146) merijn
2025-03-20 10:01:05 +0100 <tomsmeding> lol oops
2025-03-20 10:01:13 +0100tomsmedingwas just blindly looking for push arrays
2025-03-20 10:01:23 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) k_hachig
2025-03-20 10:03:06 +0100tv(~tv@user/tv) tv
2025-03-20 10:03:14 +0100 <tomsmeding> I have no clue
2025-03-20 10:03:29 +0100 <tomsmeding> I'm very confused why neither repa nor massiv seem to have a histogram operation of any kind
2025-03-20 10:03:41 +0100 <tomsmeding> Athas: you don't happen to know this, do you?
2025-03-20 10:04:04 +0100 <Athas> It's not so easy to do efficiently, but it's not so hard to do OK.
2025-03-20 10:04:13 +0100 <Athas> But my experience is that they don't crop up so often.
2025-03-20 10:04:22 +0100 <tomsmeding> it's extremely hard to do so OK if you get zero primitives for them. :P
2025-03-20 10:04:29 +0100ljdarj(~Thunderbi@user/ljdarj) ljdarj
2025-03-20 10:04:30 +0100 <[exa]> :D
2025-03-20 10:04:53 +0100 <Athas> If you have few bins, just do an outer loop over all bins.
2025-03-20 10:05:04 +0100 <tomsmeding> with a fold per bin, right
2025-03-20 10:05:16 +0100 <[exa]> Athas: I've got a bit too many bins which are huge
2025-03-20 10:05:26 +0100 <[exa]> need the sparsity here, unfortunately
2025-03-20 10:07:18 +0100k_hachig(~k_hachig@2607:fea8:351d:ef0:7025:bda8:57fd:1c3b) (Ping timeout: 252 seconds)
2025-03-20 10:08:08 +0100alecs(~alecs@nat16.software.imdea.org) alecs
2025-03-20 10:08:57 +0100econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2025-03-20 10:09:05 +0100 <Athas> Here's a solution you won't like: sorting followed by a segmented reduction is asymptotically optimal.
2025-03-20 10:09:28 +0100 <tomsmeding> and then write your own segmented reduction because none are provided
2025-03-20 10:09:37 +0100 <tomsmeding> but at least you can do so!
2025-03-20 10:09:59 +0100 <[exa]> Athas: my data is too fat to get sorted efficiently (you'd die on memory throughput of the sort)
2025-03-20 10:09:59 +0100 <Athas> Yeah, but it's slow as hell unless you have a really snappy sort.
2025-03-20 10:10:17 +0100 <tomsmeding> also, repa has no sort, only massiv seems to, and that sequential
2025-03-20 10:10:49 +0100 <tomsmeding> correction, it's parallel
2025-03-20 10:11:01 +0100j1n37(~j1n37@user/j1n37) (Ping timeout: 244 seconds)
2025-03-20 10:11:11 +0100 <tomsmeding> [exa]: does massiv's `tally` do what you want?
2025-03-20 10:11:13 +0100j1n37-(~j1n37@user/j1n37) j1n37
2025-03-20 10:11:44 +0100 <[exa]> tomsmeding: it's very similar, and I actually need counting
2025-03-20 10:11:57 +0100 <[exa]> yeah good catch, let's take that apart
2025-03-20 10:13:11 +0100ash3en(~Thunderbi@ip1f10cbd6.dynamic.kabel-deutschland.de) (Ping timeout: 268 seconds)
2025-03-20 10:18:09 +0100 <Athas> [exa]: 'tally' sorts the array.
2025-03-20 10:18:18 +0100 <Athas> And looks completely sequential.
2025-03-20 10:18:21 +0100mange(~user@user/mange) (Quit: Zzz...)
2025-03-20 10:18:49 +0100 <tomsmeding> sigh
2025-03-20 10:20:02 +0100 <Athas> Clearly the best solution must be https://hackage.haskell.org/package/futhark-server
2025-03-20 10:20:19 +0100 <tomsmeding> hah
2025-03-20 10:23:48 +0100dhil(~dhil@2a0c:b381:52e:3600:f2d3:292b:64f1:45c9) dhil
2025-03-20 10:38:13 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 10:39:49 +0100 <[exa]> well sounds to me like I'm FFIing to C :D
2025-03-20 10:41:09 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 265 seconds)
2025-03-20 10:41:44 +0100merijn(~merijn@77.242.116.146) merijn
2025-03-20 10:42:28 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-03-20 10:43:00 +0100krei-se(~krei-se@p3ee0faf4.dip0.t-ipconnect.de) (Quit: ZNC 1.9.1 - https://znc.in)
2025-03-20 10:46:38 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 245 seconds)
2025-03-20 10:51:21 +0100merijn(~merijn@77.242.116.146) merijn
2025-03-20 10:54:45 +0100krei-se(~krei-se@p3ee0faf4.dip0.t-ipconnect.de) krei-se
2025-03-20 10:58:15 +0100kuribas(~user@ip-188-118-57-242.reverse.destiny.be) kuribas
2025-03-20 10:59:43 +0100ubert(~Thunderbi@2a02:8109:ab8a:5a00:8edc:7567:8376:630e) ubert
2025-03-20 11:00:32 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 272 seconds)
2025-03-20 11:09:31 +0100merijn(~merijn@77.242.116.146) merijn
2025-03-20 11:14:36 +0100sprotte24(~sprotte24@p200300d16f3eed002d97e289dca6fdd9.dip0.t-ipconnect.de)
2025-03-20 11:15:27 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.5.2)
2025-03-20 11:18:42 +0100yin(~z@user/zero) (Ping timeout: 244 seconds)
2025-03-20 11:23:57 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 11:28:14 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 252 seconds)
2025-03-20 11:29:43 +0100DigitteknohippieDigit
2025-03-20 11:32:39 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 244 seconds)
2025-03-20 11:33:43 +0100infinity0(~infinity0@pwned.gg) (Ping timeout: 245 seconds)
2025-03-20 11:38:16 +0100merijn(~merijn@77.242.116.146) merijn
2025-03-20 11:46:01 +0100ash3en(~Thunderbi@2a01:780:8000:115:27a0:cdec:aee3:14b8) ash3en
2025-03-20 11:53:43 +0100euleritian(~euleritia@ip2504f9dc.dynamic.kabel-deutschland.de) (Ping timeout: 245 seconds)
2025-03-20 11:54:23 +0100euleritian(~euleritia@dynamic-176-006-146-033.176.6.pool.telefonica.de)
2025-03-20 11:54:34 +0100infinity0(~infinity0@pwned.gg) infinity0
2025-03-20 11:58:29 +0100tabaqui(~tabaqui@167.71.80.236) tabaqui
2025-03-20 12:00:04 +0100caconym(~caconym@user/caconym) (Quit: bye)
2025-03-20 12:02:16 +0100caconym(~caconym@user/caconym) caconym
2025-03-20 12:07:45 +0100ash3en(~Thunderbi@2a01:780:8000:115:27a0:cdec:aee3:14b8) (Ping timeout: 252 seconds)
2025-03-20 12:08:34 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 248 seconds)
2025-03-20 12:12:01 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 12:16:13 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 245 seconds)
2025-03-20 12:16:37 +0100merijn(~merijn@77.242.116.146) (Ping timeout: 248 seconds)
2025-03-20 12:22:53 +0100vpan(~vpan@212.117.1.172) (Quit: Leaving.)
2025-03-20 12:26:41 +0100alp(~alp@2001:861:8ca0:4940:17be:23b1:68c0:522c) (Ping timeout: 248 seconds)
2025-03-20 12:27:37 +0100ubert(~Thunderbi@2a02:8109:ab8a:5a00:8edc:7567:8376:630e) (Remote host closed the connection)
2025-03-20 12:27:50 +0100ubert(~Thunderbi@2a02:8109:ab8a:5a00:9747:dd6c:23c:6105) ubert
2025-03-20 12:29:22 +0100merijn(~merijn@77.242.116.146) merijn
2025-03-20 12:41:32 +0100__monty__(~toonn@user/toonn) toonn
2025-03-20 12:45:50 +0100ash3en(~Thunderbi@149.222.145.35) ash3en
2025-03-20 12:47:50 +0100jespada(~jespada@2800:a4:22b6:4600:c042:9a9f:aa72:a246) jespada
2025-03-20 12:51:03 +0100CiaoSen(~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen
2025-03-20 12:53:16 +0100haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection)
2025-03-20 12:54:18 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4)
2025-03-20 12:54:48 +0100haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) hackager
2025-03-20 12:54:49 +0100ChanServ+v haskellbridge
2025-03-20 12:58:06 +0100alfiee(~alfiee@user/alfiee) alfiee
2025-03-20 13:02:31 +0100_d0t(~{-d0t-}@user/-d0t-/x-7915216) (Remote host closed the connection)
2025-03-20 13:02:46 +0100alfiee(~alfiee@user/alfiee) (Ping timeout: 268 seconds)
2025-03-20 13:02:56 +0100sabathan(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr) (Read error: Connection reset by peer)
2025-03-20 13:03:22 +0100_d0t(~{-d0t-}@user/-d0t-/x-7915216) {-d0t-}
2025-03-20 13:06:35 +0100sabathan(~sabathan@amarseille-159-1-12-107.w86-203.abo.wanadoo.fr)
2025-03-20 13:10:14 +0100 <ski> @let tabulate :: Ix i => (i,i) -> (i -> e) -> Array i e; tabulate ix f = listArray ix [f i | i <- range ix]
2025-03-20 13:10:15 +0100 <lambdabot> Defined.
2025-03-20 13:10:21 +0100 <ski> @let ximap :: (Ix i,Ix j,Monoid e) => (j,j) -> (i -> j) -> (Array i e -> Array j e); ximap ix f ar = accumArray mappend mempty ix [(f i,ar ! i) | i <- indices ar]
2025-03-20 13:10:22 +0100 <lambdabot> Defined.