2023/03/31

2023-03-31 00:01:09 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 00:02:15 +0200Midjak(~Midjak@82.66.147.146) (Read error: Connection reset by peer)
2023-03-31 00:03:24 +0200zzzyin
2023-03-31 00:03:57 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 00:05:34 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be) (Ping timeout: 276 seconds)
2023-03-31 00:07:07 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be)
2023-03-31 00:09:06 +0200smwishes Santa's elves would hurry up and implement accurate presence for the matrix libera bridge
2023-03-31 00:23:20 +0200zeenk(~zeenk@2a02:2f04:a307:2300::7fe) (Quit: Konversation terminated!)
2023-03-31 00:31:19 +0200Guest96(~Guest96@91.193.172.145)
2023-03-31 00:32:34 +0200Guest96(~Guest96@91.193.172.145) (Client Quit)
2023-03-31 00:37:11 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-31 00:38:01 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-03-31 00:48:38 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:acdb:d04:6c2:8591)
2023-03-31 00:50:19 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal)
2023-03-31 00:51:11 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2023-03-31 00:55:46 +0200vlad(~vlad@2a00:23c6:9822:4c01:6474:de59:1ca6:6b44) (Quit: Leaving)
2023-03-31 01:00:12 +0200mncheck(~mncheck@193.224.205.254) (Ping timeout: 255 seconds)
2023-03-31 01:02:18 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2023-03-31 01:03:25 +0200Midjak(~Midjak@82.66.147.146)
2023-03-31 01:07:36 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-03-31 01:07:37 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-03-31 01:07:37 +0200wroathe(~wroathe@user/wroathe)
2023-03-31 01:07:59 +0200Midjak(~Midjak@82.66.147.146) (Client Quit)
2023-03-31 01:11:13 +0200acidjnk(~acidjnk@p200300d6e715c42455b6277e522904ed.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
2023-03-31 01:12:11 +0200jmorris(uid537181@2a03:5180:f:5::8:325d)
2023-03-31 01:14:48 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2023-03-31 01:15:10 +0200mauke_(~mauke@user/mauke)
2023-03-31 01:17:01 +0200mauke(~mauke@user/mauke) (Ping timeout: 252 seconds)
2023-03-31 01:17:01 +0200mauke_mauke
2023-03-31 01:26:32 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com)
2023-03-31 01:29:33 +0200yinwishes the matrix bridge would close already
2023-03-31 01:35:20 +0200 <sm> IRC relevant will be smaller without it
2023-03-31 01:35:43 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-31 01:35:50 +0200 <sm> I can't english. nm
2023-03-31 01:44:30 +0200 <yushyin> i think it's fine as long as matrix clients don't use matrix-specific functionality in irc channels. frequent use of replies, quotes and multiline messages are somewhat annoying for IRC users. also it is weird when matrix users use the display name among each other and you have no idea which nick is actually addressed there
2023-03-31 01:47:36 +0200slack1256(~slack1256@186.11.118.107) (Remote host closed the connection)
2023-03-31 01:51:29 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 01:52:12 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Read error: Connection reset by peer)
2023-03-31 01:52:52 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 01:54:22 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-03-31 01:57:12 +0200stackdroid18(14094@de1.hashbang.sh) (Quit: hasta la vista... tchau!)
2023-03-31 01:57:46 +0200 <sm> of course
2023-03-31 01:58:29 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com) (Quit: ZZZzzz…)
2023-03-31 01:58:39 +0200captnemo(~captnemo@193.32.127.232)
2023-03-31 01:58:51 +0200 <sm> enhancing the bridge can help with most things
2023-03-31 01:59:21 +0200Albina_Pavlovna(~Albina_Pa@2603-7000-76f0-76e0-11ec-aaf6-1b88-ff32.res6.spectrum.com)
2023-03-31 02:06:13 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 250 seconds)
2023-03-31 02:24:46 +0200chanceyan(~chanceyan@user/chanceyan)
2023-03-31 02:27:14 +0200fmlatghor(~lcoogan@user/fmlatghor)
2023-03-31 02:31:57 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.)
2023-03-31 02:32:27 +0200Albina_Pavlovna(~Albina_Pa@2603-7000-76f0-76e0-11ec-aaf6-1b88-ff32.res6.spectrum.com) (Quit: ZZZzzz…)
2023-03-31 02:33:15 +0200Albina_Pavlovna(~Albina_Pa@2603-7000-76f0-76e0-11ec-aaf6-1b88-ff32.res6.spectrum.com)
2023-03-31 02:50:51 +0200gambpang(~ishipman@172-6-174-68.lightspeed.cicril.sbcglobal.net) (Ping timeout: 248 seconds)
2023-03-31 02:57:20 +0200Albina_Pavlovna(~Albina_Pa@2603-7000-76f0-76e0-11ec-aaf6-1b88-ff32.res6.spectrum.com) (Quit: ZZZzzz…)
2023-03-31 02:59:04 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-03-31 02:59:15 +0200Guest616(~talismani@76.133.152.122)
2023-03-31 02:59:38 +0200 <tusko> I mean, honestly, how many people are going through life thinking git == GitHub
2023-03-31 03:02:11 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 03:03:23 +0200 <yin> tusko: probably the same ammount that thought irc == mIRC in the 90s
2023-03-31 03:04:11 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 03:04:41 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
2023-03-31 03:05:00 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2023-03-31 03:05:04 +0200 <monochrom> Are we done complaining about all perceived injustice in the world?
2023-03-31 03:06:14 +0200 <yin> oh i think it's totally fair
2023-03-31 03:06:35 +0200xff0x(~xff0x@2405:6580:b080:900:4737:f344:4be5:fdc7) (Ping timeout: 260 seconds)
2023-03-31 03:07:10 +0200 <davean> Was there a conversation about injustice I missed?
2023-03-31 03:07:27 +0200 <tusko> wtf is the 90s?
2023-03-31 03:07:38 +0200 <yin> tusko: 10 years ago
2023-03-31 03:08:02 +0200xff0x(~xff0x@2405:6580:b080:900:4737:f344:4be5:fdc7)
2023-03-31 03:08:58 +0200 <tusko> back in the day when a unit of currency bought more than a litre of petro
2023-03-31 03:09:18 +0200 <tusko> ancient times
2023-03-31 03:10:15 +0200 <davean> tusko: in the 90s I recall seeing it petro for 0.89 USD/Gallon
2023-03-31 03:10:23 +0200 <monochrom> There always exist a scaling factor such that a unit of currency buys a unit of petro, tautologically.
2023-03-31 03:10:37 +0200 <davean> monochrom: not if petro is unbuyable
2023-03-31 03:11:00 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-03-31 03:11:18 +0200 <yin> what is petro? is it how the cool kids are saying petrol these days?
2023-03-31 03:12:42 +0200 <geekosaur> something oil-based, as opposed to petrol/gasoline specifically?
2023-03-31 03:13:09 +0200 <yin> oh like petrochemicals?
2023-03-31 03:13:43 +0200 <geekosaur> yeh
2023-03-31 03:17:07 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-03-31 03:20:34 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 276 seconds)
2023-03-31 03:22:56 +0200nate4(~nate@98.45.169.16)
2023-03-31 03:25:48 +0200gehmehgeh(~user@user/gehmehgeh)
2023-03-31 03:26:24 +0200dipper(~dipper@117.61.117.21)
2023-03-31 03:26:53 +0200gmg(~user@user/gehmehgeh) (Ping timeout: 255 seconds)
2023-03-31 03:27:41 +0200nate4(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-03-31 03:27:46 +0200 <Guest616> How do I pick a random element from a list?
2023-03-31 03:27:58 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-31 03:28:23 +0200 <Guest616> (not (!!) random access, I mean picking a random number from 1-10 and picking that index from the list, in 1 step)
2023-03-31 03:28:57 +0200 <mauke> that's two steps
2023-03-31 03:29:18 +0200 <mauke> :t randomRIO
2023-03-31 03:29:18 +0200 <lambdabot> (Random a, MonadIO m) => (a, a) -> m a
2023-03-31 03:29:24 +0200 <mauke> :t randomRIO (1, 10)
2023-03-31 03:29:25 +0200 <lambdabot> (Random a, MonadIO m, Num a) => m a
2023-03-31 03:30:09 +0200 <mauke> :t \xs -> (xs !!) <$> randomRIO (1, 10)
2023-03-31 03:30:10 +0200 <lambdabot> MonadIO f => [b] -> f b
2023-03-31 03:31:08 +0200 <mauke> % (\xs -> (xs !!) <$> randomRIO (1, 10)) "hello"
2023-03-31 03:31:08 +0200 <yahb2> <interactive>:22:21: error: ; Variable not in scope: randomRIO :: (a0, b0) -> f Int
2023-03-31 03:36:49 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-31 03:39:03 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-03-31 03:41:32 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Ping timeout: 265 seconds)
2023-03-31 03:45:06 +0200haritz(~hrtz@user/haritz) (Ping timeout: 268 seconds)
2023-03-31 03:49:42 +0200haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
2023-03-31 03:49:42 +0200haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
2023-03-31 03:49:42 +0200haritz(~hrtz@user/haritz)
2023-03-31 03:57:09 +0200xff0x(~xff0x@2405:6580:b080:900:4737:f344:4be5:fdc7) (Ping timeout: 250 seconds)
2023-03-31 04:01:53 +0200shriekingnoise_(~shrieking@186.137.175.87)
2023-03-31 04:04:55 +0200shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 260 seconds)
2023-03-31 04:09:16 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-03-31 04:09:16 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-03-31 04:09:16 +0200finn_elijaFinnElija
2023-03-31 04:10:43 +0200thegeekinside(~thegeekin@189.141.115.134) (Remote host closed the connection)
2023-03-31 04:11:02 +0200merijn(~merijn@86.86.29.250)
2023-03-31 04:15:47 +0200merijn(~merijn@86.86.29.250) (Ping timeout: 250 seconds)
2023-03-31 04:16:29 +0200nate4(~nate@98.45.169.16)
2023-03-31 04:27:27 +0200td_(~td@i53870922.versanet.de) (Ping timeout: 265 seconds)
2023-03-31 04:29:07 +0200td_(~td@i5387092B.versanet.de)
2023-03-31 04:38:52 +0200 <Guest616> mauke: ah, thanks
2023-03-31 04:38:53 +0200heartburn(~gass@2a00:d880:3:1::b1e4:b241) (Read error: Connection reset by peer)
2023-03-31 04:39:04 +0200 <Guest616> I was under the impression that randomRIO was from RIO lol
2023-03-31 04:39:05 +0200heartbur1(~gass@2a00:d880:3:1::b1e4:b241)
2023-03-31 04:44:30 +0200 <sm> understandable
2023-03-31 04:46:01 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2023-03-31 04:46:33 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-03-31 04:50:08 +0200heartbur1heartburn
2023-03-31 04:50:29 +0200dtman34(~dtman34@76.156.89.180) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
2023-03-31 04:51:28 +0200dtman34(~dtman34@2601:447:d000:93c9:905d:88d7:219e:88fc)
2023-03-31 04:52:00 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-03-31 04:52:00 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-03-31 04:52:00 +0200wroathe(~wroathe@user/wroathe)
2023-03-31 04:53:32 +0200Guest616(~talismani@76.133.152.122) (Using Circe, the loveliest of all IRC clients)
2023-03-31 04:54:12 +0200captnemo(~captnemo@193.32.127.232) (Quit: WeeChat 3.8)
2023-03-31 04:54:33 +0200heartburn(~gass@2a00:d880:3:1::b1e4:b241) (Quit: Reconnecting)
2023-03-31 04:57:06 +0200heartburn(~gass@2a00:d880:3:1::b1e4:b241)
2023-03-31 04:58:12 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Remote host closed the connection)
2023-03-31 05:04:40 +0200srk(~sorki@user/srk) (Ping timeout: 252 seconds)
2023-03-31 05:06:21 +0200nate1(~nate@98.45.169.16)
2023-03-31 05:06:31 +0200nate4(~nate@98.45.169.16) (Read error: Connection reset by peer)
2023-03-31 05:07:27 +0200mikoto-chan(~mikoto-ch@d1t55jpjnm8t59ntyy4-4.rev.dnainternet.fi)
2023-03-31 05:11:45 +0200srk(~sorki@user/srk)
2023-03-31 05:16:14 +0200notzmv(~zmv@user/notzmv)
2023-03-31 05:16:16 +0200codaraxis(~codaraxis@user/codaraxis) (Ping timeout: 265 seconds)
2023-03-31 05:19:19 +0200wagle(~wagle@quassel.wagle.io)
2023-03-31 05:19:51 +0200nate1(~nate@98.45.169.16) (Ping timeout: 255 seconds)
2023-03-31 05:25:25 +0200raoul(~raoul@95.179.203.88) (Ping timeout: 256 seconds)
2023-03-31 05:26:06 +0200raoul(~raoul@95.179.203.88)
2023-03-31 05:30:52 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-31 05:35:46 +0200krei-se(~krei-se@p50874388.dip0.t-ipconnect.de) (Ping timeout: 276 seconds)
2023-03-31 05:36:59 +0200mbuf(~Shakthi@49.207.178.186)
2023-03-31 05:40:01 +0200krei-se(~krei-se@31.6.9.19)
2023-03-31 05:43:19 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Remote host closed the connection)
2023-03-31 05:47:55 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl)
2023-03-31 05:49:24 +0200codaraxis(~codaraxis@user/codaraxis)
2023-03-31 05:49:42 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 05:51:02 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 05:51:41 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-03-31 05:52:34 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2023-03-31 05:54:00 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-31 05:56:19 +0200jakesyl____(sid56879@id-56879.hampstead.irccloud.com) (Ping timeout: 250 seconds)
2023-03-31 06:00:16 +0200jakesyl____(sid56879@id-56879.hampstead.irccloud.com)
2023-03-31 06:08:22 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 06:09:38 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 06:13:40 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Client Quit)
2023-03-31 06:13:47 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 06:21:55 +0200hueso(~root@user/hueso) (Ping timeout: 276 seconds)
2023-03-31 06:23:50 +0200hueso(~root@user/hueso)
2023-03-31 06:38:49 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com) (Ping timeout: 276 seconds)
2023-03-31 06:40:01 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com)
2023-03-31 06:42:04 +0200raym(~ray@user/raym) (Ping timeout: 268 seconds)
2023-03-31 06:42:31 +0200raym(~ray@user/raym)
2023-03-31 06:44:52 +0200thegeekinside(~thegeekin@189.141.115.134)
2023-03-31 06:57:34 +0200jakalx(~jakalx@base.jakalx.net)
2023-03-31 06:59:19 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2023-03-31 07:00:29 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-31 07:04:32 +0200euandreh(~Thunderbi@189.6.18.7) (Ping timeout: 265 seconds)
2023-03-31 07:07:38 +0200wroathe(~wroathe@user/wroathe) (Quit: leaving)
2023-03-31 07:13:12 +0200codaraxis(~codaraxis@user/codaraxis) (Read error: Connection reset by peer)
2023-03-31 07:15:48 +0200nate1(~nate@98.45.169.16)
2023-03-31 07:17:12 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 07:17:19 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 07:19:38 +0200mixfix41(~sdenynine@user/mixfix41)
2023-03-31 07:20:32 +0200nate1(~nate@98.45.169.16) (Ping timeout: 248 seconds)
2023-03-31 07:20:55 +0200wagle(~wagle@quassel.wagle.io)
2023-03-31 07:23:36 +0200chanceyan(~chanceyan@user/chanceyan) (Quit: Client closed)
2023-03-31 07:24:00 +0200hueso(~root@user/hueso) (Ping timeout: 268 seconds)
2023-03-31 07:32:55 +0200dipper_(~dipper@117.61.113.15)
2023-03-31 07:32:57 +0200dipper(~dipper@117.61.117.21) (Ping timeout: 250 seconds)
2023-03-31 07:41:31 +0200hueso(~root@user/hueso)
2023-03-31 07:45:24 +0200Midjak(~Midjak@82.66.147.146)
2023-03-31 07:51:28 +0200mixfix41(~sdenynine@user/mixfix41) (Ping timeout: 248 seconds)
2023-03-31 08:12:05 +0200chomwitt(~chomwitt@2a02:587:7a16:e500:1ac0:4dff:fedb:a3f1)
2023-03-31 08:14:15 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-03-31 08:14:22 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 276 seconds)
2023-03-31 08:14:41 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-31 08:15:01 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 276 seconds)
2023-03-31 08:17:26 +0200wagle(~wagle@quassel.wagle.io)
2023-03-31 08:25:00 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-31 08:28:17 +0200trev(~trev@user/trev)
2023-03-31 08:31:27 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-03-31 08:34:26 +0200tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Quit: Leaving)
2023-03-31 08:35:20 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-31 08:36:58 +0200tcard(~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303)
2023-03-31 08:38:03 +0200msavoritias(cb716af6b3@irc.cheogram.com) (Ping timeout: 248 seconds)
2023-03-31 08:39:22 +0200NiceBird(~NiceBird@185.133.111.196)
2023-03-31 08:40:56 +0200msavoritias(cb716af6b3@irc.cheogram.com)
2023-03-31 08:41:47 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:f7c9:1b5e:6404:a5d6)
2023-03-31 08:44:20 +0200michalz(~michalz@185.246.207.203)
2023-03-31 08:44:54 +0200mncheck(~mncheck@193.224.205.254)
2023-03-31 08:48:27 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-03-31 08:54:03 +0200raym(~ray@user/raym) (Ping timeout: 255 seconds)
2023-03-31 08:58:32 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds)
2023-03-31 08:58:36 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-31 08:59:37 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2023-03-31 09:01:47 +0200euandreh(~Thunderbi@189.6.18.7)
2023-03-31 09:02:13 +0200mncheck(~mncheck@193.224.205.254) (Read error: Connection reset by peer)
2023-03-31 09:02:47 +0200Bocaneri(~sauvin@user/Sauvin)
2023-03-31 09:03:12 +0200BocaneriGuest5635
2023-03-31 09:05:01 +0200Sauvin(~sauvin@user/Sauvin) (Ping timeout: 240 seconds)
2023-03-31 09:07:44 +0200mikoto-chan(~mikoto-ch@d1t55jpjnm8t59ntyy4-4.rev.dnainternet.fi) (Ping timeout: 248 seconds)
2023-03-31 09:09:24 +0200Guest5635Sauvin
2023-03-31 09:09:58 +0200mikoto-chan(~mikoto-ch@d1t55jpjnm8t59ntyy4-4.rev.dnainternet.fi)
2023-03-31 09:12:29 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2023-03-31 09:15:34 +0200chanceyan(~chanceyan@user/chanceyan)
2023-03-31 09:19:09 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-03-31 09:20:33 +0200mncheckm(~mncheck@193.224.205.254)
2023-03-31 09:34:53 +0200vpan(~0@212.117.1.172)
2023-03-31 09:37:00 +0200acidjnk(~acidjnk@p200300d6e715c42470428d3fa5db2296.dip0.t-ipconnect.de)
2023-03-31 09:46:49 +0200mmhat(~mmh@p200300f1c7024044ee086bfffe095315.dip0.t-ipconnect.de)
2023-03-31 09:47:23 +0200mmhat(~mmh@p200300f1c7024044ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
2023-03-31 09:52:50 +0200whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2023-03-31 09:53:09 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-31 09:53:21 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-03-31 10:01:08 +0200titibandit(~titibandi@user/titibandit)
2023-03-31 10:02:01 +0200shriekingnoise_(~shrieking@186.137.175.87) (Ping timeout: 250 seconds)
2023-03-31 10:02:26 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 255 seconds)
2023-03-31 10:02:53 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2023-03-31 10:05:19 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving)
2023-03-31 10:06:48 +0200thegeekinside(~thegeekin@189.141.115.134) (Ping timeout: 268 seconds)
2023-03-31 10:11:14 +0200wagle(~wagle@quassel.wagle.io)
2023-03-31 10:11:58 +0200jespada_(~jespada@148.252.132.160)
2023-03-31 10:13:59 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 264 seconds)
2023-03-31 10:17:04 +0200jespada_(~jespada@148.252.132.160) (Read error: Connection reset by peer)
2023-03-31 10:18:06 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-03-31 10:24:09 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl)
2023-03-31 10:30:07 +0200kuribas(~user@ptr-17d51eporpn4nzulj23.18120a2.ip6.access.telenet.be)
2023-03-31 10:30:48 +0200 <kuribas> I was asked to do a talk on correct by construction in my company.
2023-03-31 10:30:59 +0200 <kuribas> I'd like to use a Python example, and also show how dependent types (idris) can help with this.
2023-03-31 10:31:14 +0200 <kuribas> Do smart constructors count as correct by construction?
2023-03-31 10:31:35 +0200 <kuribas> I could give a small clojure example to please the crowd :)
2023-03-31 10:31:57 +0200jmorris(uid537181@2a03:5180:f:5::8:325d) (Quit: Connection closed for inactivity)
2023-03-31 10:32:50 +0200 <mauke> I thought the guaranteed-full binary tree type was neat
2023-03-31 10:33:13 +0200 <kuribas> yeah, I was looking for that, but couldn't find it back.
2023-03-31 10:35:34 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-31 10:37:05 +0200 <tomsmeding> hm? data Nat = Z | S Nat ; data Tree (n :: Nat) a where { Leaf :: Tree 0 a ; Node :: Tree n a -> Tree n a -> Tree (S n) a }
2023-03-31 10:37:33 +0200 <tomsmeding> which is hellish with GHC.TypeLits Nat, by the way
2023-03-31 10:37:56 +0200 <mauke> data Tree a = Leaf a | Node (Tree (a, a))
2023-03-31 10:37:59 +0200zeenk(~zeenk@2a02:2f04:a307:2300::7fe)
2023-03-31 10:38:12 +0200 <tomsmeding> ah right
2023-03-31 10:38:50 +0200 <kuribas> my idea was to use python FastAPI as an example, how creating the api will ensure it is correct wrt to the specification (openAPI spec).
2023-03-31 10:39:13 +0200 <kuribas> at least, when using the static type checker, like pyright.
2023-03-31 10:39:44 +0200 <kuribas> And then to show extensible records, where you have a record specification which states the invariants of the record that cannot be broken.
2023-03-31 10:41:13 +0200 <kuribas> I could use that tree exampe perhaps.
2023-03-31 10:41:26 +0200 <[exa]> kuribas: I'd suggest to do the haskell refactoring trick
2023-03-31 10:41:55 +0200 <[exa]> make an example codebase, then change the type of something in the API, and show how fixing the rest of the app is simply "walking the errors"
2023-03-31 10:41:56 +0200 <kuribas> refactor some haskell code?
2023-03-31 10:42:01 +0200 <kuribas> right
2023-03-31 10:42:43 +0200 <[exa]> it's a bit off the "correct by construction" but the certainty of "there's no forgotten NULL somewhere" is what sells this to devs :D
2023-03-31 10:42:58 +0200 <kuribas> not clojure devs...
2023-03-31 10:43:36 +0200 <tomsmeding> kuribas: you're the one who brought idris into the conversation :p
2023-03-31 10:43:46 +0200 <kuribas> I also wanted to show that dependent types can allow you to use both clojure techniques, and domain modelling with the type system.
2023-03-31 10:43:51 +0200 <[exa]> clojure devs never forgot to fill in a non-null field?
2023-03-31 10:43:59 +0200 <kuribas> They don't care.
2023-03-31 10:44:20 +0200 <kuribas> Well, there is spec, which does runtime validation.
2023-03-31 10:44:27 +0200 <kuribas> or malli, what we use.
2023-03-31 10:45:47 +0200anpad(~pandeyan@user/anpad) (Read error: Connection reset by peer)
2023-03-31 10:48:02 +0200anpad(~pandeyan@user/anpad)
2023-03-31 10:48:54 +0200 <kuribas> mauke: right, that was the one.
2023-03-31 10:49:17 +0200 <kuribas> mauke: but I also read it was hard to manipulate.
2023-03-31 10:49:37 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-03-31 10:50:03 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2023-03-31 10:51:44 +0200 <kuribas> mauke: My assertion that prompted this talk was that (dependent) types, or correct by construction, doesn't necessary imply a lot of complexity.
2023-03-31 10:52:12 +0200titibandit(~titibandi@user/titibandit) ()
2023-03-31 10:52:17 +0200titibandit(~titibandi@user/titibandit)
2023-03-31 10:55:01 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-31 10:57:32 +0200mexpr(~mexpr@user/mexpr)
2023-03-31 10:57:47 +0200wagle(~wagle@quassel.wagle.io)
2023-03-31 10:59:13 +0200razetime(~Thunderbi@49.207.192.117)
2023-03-31 11:00:07 +0200daylily[m](~daylilym]@2001:470:69fc:105::3:1d06) (Quit: You have been kicked for being idle)
2023-03-31 11:02:06 +0200ec(~ec@gateway/tor-sasl/ec)
2023-03-31 11:14:11 +0200acidjnk(~acidjnk@p200300d6e715c42470428d3fa5db2296.dip0.t-ipconnect.de) (Remote host closed the connection)
2023-03-31 11:14:34 +0200acidjnk(~acidjnk@p200300d6e715c424cc588042de1b7b49.dip0.t-ipconnect.de)
2023-03-31 11:17:11 +0200nate1(~nate@98.45.169.16)
2023-03-31 11:21:58 +0200nate1(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2023-03-31 11:24:35 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2023-03-31 11:25:20 +0200 <jade[m]> I want to run a program with `suid`, but I'm not sure how to achieve this ergonomically with cabal
2023-03-31 11:25:23 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Quit: Textual IRC Client: www.textualapp.com)
2023-03-31 11:26:06 +0200 <jade[m]> as of now I have to compile and then chmod u+s manually - how can I automate that#
2023-03-31 11:26:07 +0200 <jade[m]> s//`/, s//`/, s/#/?/
2023-03-31 11:28:36 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-03-31 11:34:13 +0200 <geekosaur> I don't think cabal will help you there. I'm also not sure it should, between portability (Windows doesn't do suid and MacOS generally won't let you) and security concerns (yes, types help, but in the end it's in IO and can do anything)
2023-03-31 11:35:13 +0200 <jade[m]> mhm yeah
2023-03-31 11:35:37 +0200 <jade[m]> I'm running into another issue too, where `System.Posix.User` from `unix` does not seem to work with shadowed passwords
2023-03-31 11:35:47 +0200 <geekosaur> I'm in particular reminded of the Knuth quote "I have only proven this program correct, not tested it"
2023-03-31 11:36:32 +0200 <jade[m]> jade[m]: Is there a library that does or do I have to use C/foreign calls?
2023-03-31 11:38:48 +0200 <geekosaur> I think you have to write bindings to `getspent` and friends yourself
2023-03-31 11:39:41 +0200 <geekosaur> also beware that on modern systems they're often hashes
2023-03-31 11:40:10 +0200 <jade[m]> yes
2023-03-31 11:40:39 +0200 <jade[m]> I'm basically reading through the source code of `slock` and trying to find bindings haha
2023-03-31 11:41:50 +0200 <geekosaur> on any reasonably modern system you actually want to go through PAM, not blindly assume shadow passwords, but I guess I'm not surprised slock doesn't
2023-03-31 11:42:13 +0200 <geekosaur> (I actually don't like suckless stuff much. slock in particular has been a source of security issues)
2023-03-31 11:43:45 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de)
2023-03-31 11:43:56 +0200 <jade[m]> mhm, I understand
2023-03-31 11:44:01 +0200 <jade[m]> I'll read up on pam
2023-03-31 11:45:28 +0200 <geekosaur> if you use PAM you get support for 2-factor auth, fingerprint readers, etc.
2023-03-31 11:46:16 +0200remexre(~remexre@user/remexre) (Read error: Connection reset by peer)
2023-03-31 11:46:25 +0200chanceyan(~chanceyan@user/chanceyan) (Quit: Client closed)
2023-03-31 11:46:25 +0200remexre(~remexre@user/remexre)
2023-03-31 11:47:52 +0200chomwitt(~chomwitt@2a02:587:7a16:e500:1ac0:4dff:fedb:a3f1) (Ping timeout: 252 seconds)
2023-03-31 11:49:52 +0200 <nomagno> Isn't PAM a netpbm pixel format?
2023-03-31 11:50:06 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-31 11:50:24 +0200jade[m]uploaded an image: (25KiB) < https://libera.ems.host/_matrix/media/v3/download/the-apothecary.club/bfb4a8b8390e16ca0aa3fd4f555b… >
2023-03-31 11:50:25 +0200 <jade[m]> looks great
2023-03-31 11:51:14 +0200 <geekosaur> `man 7 pam`
2023-03-31 11:51:51 +0200 <nomagno> Ah
2023-03-31 11:52:01 +0200 <geekosaur> although the namespace of TLAs is small enough that I'm not surprised there are collisions 🙂
2023-03-31 11:52:03 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-03-31 11:52:28 +0200 <mauke> pluggable authentication modules, not portable any map
2023-03-31 11:54:41 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Ping timeout: 250 seconds)
2023-03-31 12:02:13 +0200__monty__(~toonn@user/toonn)
2023-03-31 12:06:14 +0200smallville7123(~Android@cpe-172-193-181-254.qld.foxtel.net.au)
2023-03-31 12:07:13 +0200gurkenglas(~gurkengla@dynamic-046-114-179-201.46.114.pool.telefonica.de)
2023-03-31 12:08:32 +0200nschoe(~q@2a01:e0a:8e:a190:e9eb:f2f0:bd71:1213)
2023-03-31 12:09:19 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 252 seconds)
2023-03-31 12:11:41 +0200raym(~ray@user/raym)
2023-03-31 12:12:14 +0200titibandit(~titibandi@user/titibandit) (Quit: leaving)
2023-03-31 12:12:31 +0200titibandit(~titibandi@user/titibandit)
2023-03-31 12:26:37 +0200chomwitt(~chomwitt@2a02:587:7a16:e500:1ac0:4dff:fedb:a3f1)
2023-03-31 12:27:43 +0200titibandit(~titibandi@user/titibandit) (Quit: leaving)
2023-03-31 12:28:33 +0200titibandit(~titibandi@user/titibandit)
2023-03-31 12:37:35 +0200azimut_(~azimut@gateway/tor-sasl/azimut)
2023-03-31 12:39:56 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2023-03-31 12:40:09 +0200jmorris(uid537181@id-537181.uxbridge.irccloud.com)
2023-03-31 12:44:31 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds)
2023-03-31 12:46:33 +0200bollu(~bollu@159.65.151.13) (Quit: Ping timeout (120 seconds))
2023-03-31 12:47:09 +0200razetime(~Thunderbi@49.207.192.117) (Ping timeout: 255 seconds)
2023-03-31 12:47:33 +0200bollu(~bollu@159.65.151.13)
2023-03-31 12:51:50 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:3cb1:54bf:cd2c:417f)
2023-03-31 12:56:20 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:3cb1:54bf:cd2c:417f) (Ping timeout: 260 seconds)
2023-03-31 12:57:45 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2023-03-31 13:00:15 +0200razetime(~Thunderbi@49.207.192.117)
2023-03-31 13:05:06 +0200gurkenglas(~gurkengla@dynamic-046-114-179-201.46.114.pool.telefonica.de) (Ping timeout: 265 seconds)
2023-03-31 13:06:16 +0200Alex_test(~al_test@178.34.150.148) (Read error: Connection reset by peer)
2023-03-31 13:06:28 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Quit: use-value)
2023-03-31 13:06:30 +0200AlexNoo(~AlexNoo@178.34.150.148) (Read error: Connection reset by peer)
2023-03-31 13:06:35 +0200gurkenglas(~gurkengla@dynamic-046-114-179-201.46.114.pool.telefonica.de)
2023-03-31 13:06:47 +0200Alex_test(~al_test@178.34.150.148)
2023-03-31 13:06:52 +0200AlexNoo(~AlexNoo@178.34.150.148)
2023-03-31 13:14:33 +0200Inst(~Inst@2601:6c4:4081:54f0:5888:2220:c445:9f20)
2023-03-31 13:14:35 +0200 <Inst> could i get some help installing hmatrix?
2023-03-31 13:14:39 +0200 <Inst> on windows?
2023-03-31 13:14:45 +0200 <Inst> just dropped down to older cabal
2023-03-31 13:15:14 +0200 <Inst> cabal isn't seeing blas and lapack libs
2023-03-31 13:19:47 +0200 <Inst> i went with msys, trying to use include-dirs
2023-03-31 13:19:51 +0200 <Inst> trying to install to global library
2023-03-31 13:21:10 +0200 <Inst> https://media.discordapp.net/attachments/968989726633779215/1091321225923543061/image.png?width=17…
2023-03-31 13:30:33 +0200MasseR46(thelounge@2001:bc8:47a0:1521::1) (Quit: The Lounge - https://thelounge.chat)
2023-03-31 13:31:19 +0200 <[exa]> Inst: installing lapack and blas and pointing to it should solve this
2023-03-31 13:31:32 +0200 <Inst> how can I install lapack and blas? :(
2023-03-31 13:31:43 +0200 <Inst> maybe I'm doing it wrong and thinking of openblas, when it's probably more useful to think of lapack and blas
2023-03-31 13:31:53 +0200MasseR46(thelounge@2001:bc8:47a0:1521::1)
2023-03-31 13:31:54 +0200 <[exa]> openblas should do the same AFAIK
2023-03-31 13:31:55 +0200gurkenglas(~gurkengla@dynamic-046-114-179-201.46.114.pool.telefonica.de) (Ping timeout: 260 seconds)
2023-03-31 13:32:17 +0200 <[exa]> do you have openblas header files and library files somewhere?
2023-03-31 13:32:25 +0200 <Inst> maybe my pkg-config is broken?
2023-03-31 13:32:48 +0200 <[exa]> you can try pkg-config lapack --libs
2023-03-31 13:33:00 +0200 <Inst> lol, you've gotta be kidding me
2023-03-31 13:33:17 +0200 <Inst> hmatrix installs if I install lapack lib instead of openblas
2023-03-31 13:34:00 +0200 <[exa]> ok maybe openblas simply doesn't install to cabal-visible destinations
2023-03-31 13:34:19 +0200 <[exa]> like, it _should_ work afaik but always better check
2023-03-31 13:34:43 +0200 <Inst> i nuked my openblas
2023-03-31 13:34:50 +0200 <Inst> lapack on its own seems to be working, waiting on the error message
2023-03-31 13:35:00 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2023-03-31 13:35:00 +0200 <Inst> https://discourse.haskell.org/t/binning-haskell-with-dsa/6048/10
2023-03-31 13:35:20 +0200 <Inst> i'm trying to do fib with hmatrix, never used that library before
2023-03-31 13:39:00 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-31 13:43:00 +0200 <merijn> Inst, [exa]: The hmatrix package doesn't use pkg-config to find them, it uses hard coded paths
2023-03-31 13:43:06 +0200 <merijn> (looking at the cabal file)
2023-03-31 13:43:37 +0200 <merijn> cabal has flags for specifying extra lib/include dirs that you probably want
2023-03-31 13:43:45 +0200 <merijn> (if it's still not finding them)
2023-03-31 13:44:08 +0200 <[exa]> oh well, good to know.
2023-03-31 13:46:16 +0200 <Inst> i'm more annoyed that C FFI right now is still wonky with ghci
2023-03-31 13:46:23 +0200 <Inst> ghci is my go-to for screwing around
2023-03-31 13:46:26 +0200 <Inst> thanks for help, merijn
2023-03-31 13:46:37 +0200 <Inst> access violation in generated code at...
2023-03-31 13:46:40 +0200 <merijn> Inst: It's fine, you just need to run ghci with -fobject-code
2023-03-31 13:46:52 +0200 <merijn> so it uses compiled Haskell and not bytecode
2023-03-31 13:47:47 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 250 seconds)
2023-03-31 13:48:49 +0200 <Inst> okay, again
2023-03-31 13:48:49 +0200 <Inst> :(
2023-03-31 13:49:04 +0200 <Inst> https://media.discordapp.net/attachments/968989726633779215/1091328284140245072/image.png?width=21…
2023-03-31 13:49:39 +0200 <merijn> oh, this is windows?
2023-03-31 13:49:57 +0200 <merijn> I vaguely recall windows dynamic linking being a mess
2023-03-31 13:50:37 +0200 <Inst> maybe it's just a windows thing
2023-03-31 13:50:38 +0200 <Inst> oh okay
2023-03-31 13:51:52 +0200 <geekosaur> access violation? this sounds like it might be https://gitlab.haskell.org/ghc/ghc/-/issues/23194
2023-03-31 13:56:48 +0200mei(~mei@user/mei) (Ping timeout: 248 seconds)
2023-03-31 13:59:38 +0200acidjnk(~acidjnk@p200300d6e715c424cc588042de1b7b49.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2023-03-31 14:00:54 +0200mei(~mei@user/mei)
2023-03-31 14:01:22 +0200 <Inst> ugly, handrolling
2023-03-31 14:01:30 +0200 <Inst> handrolled my own matrix type
2023-03-31 14:02:53 +0200razetime(~Thunderbi@49.207.192.117) (Remote host closed the connection)
2023-03-31 14:10:21 +0200 <Inst> Ugh, everyone would have been better off if Haskell gatekept like OCaml and dumped Windows support
2023-03-31 14:10:40 +0200 <[exa]> Inst: why you use it on windows tho?
2023-03-31 14:10:50 +0200 <Inst> I'm a windows luser
2023-03-31 14:10:59 +0200 <Inst> not really ready to migrate to my debian install
2023-03-31 14:11:11 +0200 <Inst> but it's pretty
2023-03-31 14:11:38 +0200 <Inst> https://paste.tomsmeding.com/F3NHbKF5
2023-03-31 14:11:52 +0200 <Inst> still waiting on powershell to finish outputting, heh
2023-03-31 14:21:29 +0200 <Inst> on plus side, faster than julia, seemingly
2023-03-31 14:21:37 +0200jade[m]uploaded an image: (134KiB) < https://libera.ems.host/_matrix/media/v3/download/the-apothecary.club/4cbe3cc25ea0701cda2b8aaab77e… >
2023-03-31 14:21:37 +0200 <jade[m]> Why is there so many versions, especially of HLS?
2023-03-31 14:21:39 +0200jade[m]uploaded an image: (120KiB) < https://libera.ems.host/_matrix/media/v3/download/the-apothecary.club/14583b79ac61cb926c5bb3140ce8… >
2023-03-31 14:24:23 +0200 <Inst> slightly faster than julia is okay, i guess
2023-03-31 14:24:51 +0200 <Inst> 18 secs vs 20 secs, GHCI, and remember it's GHCI, is slower than Julia, when using strict data structures and a hack into Num to get fast exponentiation
2023-03-31 14:25:32 +0200 <yushyin> jade[m]: https://haskell-language-server.readthedocs.io/en/latest/what-is-hls.html#hls-and-its-wrapper
2023-03-31 14:27:15 +0200 <Inst> and used less memory too
2023-03-31 14:27:16 +0200 <Inst> not bad
2023-03-31 14:27:46 +0200 <jade[m]> ok, but why is there also specific versions like 9.2 and 9.2.7?
2023-03-31 14:28:35 +0200 <geekosaur> because HLS has to be linked against a specific ghc, because it uses the ghc api which isn't exactly stable (it's hooks into the guts of the compiler)
2023-03-31 14:29:35 +0200 <geekosaur> which is also why the version of HLS that supported 9.2.5 didn't support 9.2.7 automatically
2023-03-31 14:30:24 +0200 <jade[m]> alright
2023-03-31 14:32:41 +0200 <merijn> Effectively, HLS is using GHC-as-library to do analysis of your code
2023-03-31 14:33:23 +0200 <merijn> Which is nice, because it knows everything the compiler does. But it also sucks, because you basically end up needing to use a version that's using the exact same compiler version to make any sense
2023-03-31 14:35:04 +0200dtman34(~dtman34@2601:447:d000:93c9:905d:88d7:219e:88fc) (Ping timeout: 252 seconds)
2023-03-31 14:35:57 +0200 <Inst> okay, redoing in HMatrix via ghc -O2 hand compile
2023-03-31 14:36:11 +0200 <Inst> already reported Haskell GHCI beating Julia as a bug
2023-03-31 14:36:16 +0200 <Inst> to Julia community
2023-03-31 14:36:36 +0200 <yushyin> 'bug'
2023-03-31 14:37:35 +0200dextaa(~DV@user/dextaa) (Read error: Connection reset by peer)
2023-03-31 14:37:55 +0200dextaa(~DV@user/dextaa)
2023-03-31 14:38:53 +0200 <maerwald[m]> merijn: yeah, mind boggling that there's no ghc-as-an-actual-lib that HLS csn just link against
2023-03-31 14:39:14 +0200 <maerwald[m]> Everything is broken in Haskell
2023-03-31 14:40:12 +0200 <Inst> thanks for trying to fix stuff maerwald
2023-03-31 14:40:33 +0200 <Inst> is there a fast way to do matrix exponentiation by a scalar in HMatrix?
2023-03-31 14:40:55 +0200xff0x(~xff0x@2405:6580:b080:900:c67e:6ac9:60af:99aa)
2023-03-31 14:41:04 +0200 <Inst> because mat ^ scalar is giving me improper results
2023-03-31 14:41:34 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:ac34:e4e8:46f:d695)
2023-03-31 14:41:52 +0200 <merijn> maerwald[m]: I mean, there is an as actual lib, it's just not a stable one :p
2023-03-31 14:42:14 +0200 <Inst> bleh, this shit doesn't even work, HMatrix doesn't seem to support Integer data type natively?
2023-03-31 14:42:29 +0200 <maerwald[m]> merijn: yeah right... I remember someone saying GHC ABI is actually stable, it just changes too fast
2023-03-31 14:42:36 +0200 <maerwald[m]> But that's wrong too
2023-03-31 14:42:55 +0200 <maerwald[m]> Rebuild GHC with profiling and your ABI is busted
2023-03-31 14:43:34 +0200 <merijn> Inst: Of course it doesn't. It's using BLAS and BLAS only works on fixed size datatypes (mostly uint32_t, uint64_t, float, and double)
2023-03-31 14:45:53 +0200acidjnk(~acidjnk@p200300d6e715c4242db31e0384394bb3.dip0.t-ipconnect.de)
2023-03-31 14:46:51 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de)
2023-03-31 14:47:23 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 14:48:29 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 14:50:25 +0200jade[m](~jade1024t@2001:470:69fc:105::3:238b) ()
2023-03-31 14:54:49 +0200dextaa(~DV@user/dextaa) (Ping timeout: 265 seconds)
2023-03-31 14:57:07 +0200 <Inst> oh well
2023-03-31 15:00:48 +0200 <[exa]> Inst: what's the usecase btw?
2023-03-31 15:01:19 +0200 <Inst> none
2023-03-31 15:09:20 +0200fmlatghor(~lcoogan@user/fmlatghor) (Ping timeout: 248 seconds)
2023-03-31 15:11:24 +0200fmlatghor(~lcoogan@user/fmlatghor)
2023-03-31 15:15:44 +0200Inst(~Inst@2601:6c4:4081:54f0:5888:2220:c445:9f20) (Ping timeout: 248 seconds)
2023-03-31 15:15:46 +0200Inst_(~Inst@2601:6c4:4081:54f0:a461:9c3:e50e:33ff)
2023-03-31 15:18:33 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be) (Quit: WeeChat 3.8)
2023-03-31 15:18:42 +0200nate1(~nate@98.45.169.16)
2023-03-31 15:20:50 +0200dtman34(~dtman34@2601:447:d000:93c9:ea29:d585:c821:9218)
2023-03-31 15:23:05 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be)
2023-03-31 15:23:22 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be) (Client Quit)
2023-03-31 15:23:55 +0200nate1(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2023-03-31 15:29:31 +0200Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::bda7)
2023-03-31 15:31:21 +0200mikoto-chan(~mikoto-ch@d1t55jpjnm8t59ntyy4-4.rev.dnainternet.fi) (Ping timeout: 250 seconds)
2023-03-31 15:37:56 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be)
2023-03-31 15:42:52 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:acdb:d04:6c2:8591) (Quit: caryhartline)
2023-03-31 15:43:16 +0200 <Inst_> [exa]: was just wondering abotu teaching fib, i.e, if you bring it up, you should show the matrix fib that's most efficient
2023-03-31 15:47:30 +0200AlexNoo(~AlexNoo@178.34.150.148) (Read error: Connection reset by peer)
2023-03-31 15:48:14 +0200AlexNoo(~AlexNoo@178.34.150.148)
2023-03-31 15:49:33 +0200matijja(~matijja@193.77.181.201) (Ping timeout: 250 seconds)
2023-03-31 15:50:57 +0200mauke(~mauke@user/mauke) (Quit: leaving)
2023-03-31 15:51:57 +0200matijja(~matijja@193.77.181.201)
2023-03-31 15:53:24 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-31 15:53:53 +0200chomwitt(~chomwitt@2a02:587:7a16:e500:1ac0:4dff:fedb:a3f1) (Ping timeout: 250 seconds)
2023-03-31 15:58:28 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 276 seconds)
2023-03-31 16:00:25 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 276 seconds)
2023-03-31 16:00:25 +0200ph88(~ph88@91.66.101.83)
2023-03-31 16:01:30 +0200AlexNoo(~AlexNoo@178.34.150.148) (Read error: Connection reset by peer)
2023-03-31 16:01:58 +0200AlexNoo(~AlexNoo@178.34.150.148)
2023-03-31 16:03:51 +0200bhall(~brunohall@195.147.207.136)
2023-03-31 16:05:20 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-31 16:11:40 +0200smallville7123(~Android@cpe-172-193-181-254.qld.foxtel.net.au) (Ping timeout: 265 seconds)
2023-03-31 16:13:46 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-03-31 16:14:23 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 16:15:44 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 16:20:00 +0200thegeekinside(~thegeekin@189.141.115.134)
2023-03-31 16:21:15 +0200mikoto-chan(~mikoto-ch@d1t55jpjnm8t59ntyy4-4.rev.dnainternet.fi)
2023-03-31 16:21:56 +0200 <[exa]> Inst_: what's fib, like fibonacci numbers?
2023-03-31 16:21:57 +0200jmorris(uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-31 16:24:50 +0200Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::bda7) (Remote host closed the connection)
2023-03-31 16:25:21 +0200 <Inst_> ya
2023-03-31 16:25:25 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de)
2023-03-31 16:25:41 +0200 <Inst_> currently, we're about 20% slower than Julia
2023-03-31 16:28:31 +0200dipper_(~dipper@117.61.113.15) (Ping timeout: 268 seconds)
2023-03-31 16:28:43 +0200 <[exa]> why do you need matrices for computing fibs?
2023-03-31 16:29:50 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 260 seconds)
2023-03-31 16:30:47 +0200mauke(~mauke@user/mauke)
2023-03-31 16:31:29 +0200 <jean-paul[m]> How do I do IO in the creation of a Tasty TestTree? eg, to read a set of test vectors from a file
2023-03-31 16:32:23 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2023-03-31 16:33:33 +0200 <int-e> [exa]: they're a good way to arrive at algorithms that compute the n-th fibonacci number in O(log(n)) arithmetic operations.
2023-03-31 16:34:51 +0200Sgeo(~Sgeo@user/sgeo)
2023-03-31 16:35:39 +0200 <int-e> Basically you look at powers of [0,1;1,1], using the fact that [0,1;1,1]^n = [F_{n-1},F_n;F_n,F_{n+1}]
2023-03-31 16:35:55 +0200mikoto-chan(~mikoto-ch@d1t55jpjnm8t59ntyy4-4.rev.dnainternet.fi) (Quit: WeeChat 3.7.1)
2023-03-31 16:36:08 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-31 16:37:45 +0200 <[exa]> yeah but that's not "lapack matrices" per se, I'd guess that call overhead to blas will take more time than doing this thing manually
2023-03-31 16:39:00 +0200ph88(~ph88@91.66.101.83) (Ping timeout: 268 seconds)
2023-03-31 16:39:02 +0200 <[exa]> but well, ok :]
2023-03-31 16:39:09 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-31 16:39:18 +0200 <int-e> Ah. If that was your point, yeah I don't know why you'd want to literally use matrices either.
2023-03-31 16:40:44 +0200 <int-e> (Instead of using matrices to derive formulas for F_{2n} and F_{2n+1} in terms of F_n and F_{n+1}, and then going wild with those.)
2023-03-31 16:42:35 +0200 <monochrom> You can understand what the matrix formula is really doing, and unpack it back to just passing Double scalar parameters.
2023-03-31 16:44:09 +0200 <int-e> Hmm what is it really doing? Do you want to do arithmetic in Z[x]/<x^2 - x - 1>?
2023-03-31 16:44:30 +0200 <monochrom> Allow me to go hyperbole with "I am summing up 3 numbers, it's always 3 numbers no more no less, so I wrote summing lists in language X but lists in X are slow." Solution: s x y z = x+y+z, no list.
2023-03-31 16:44:52 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 252 seconds)
2023-03-31 16:49:36 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-31 16:50:00 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:f7c9:1b5e:6404:a5d6) (Quit: WeeChat 2.8)
2023-03-31 16:55:14 +0200 <Axman6> jean-paul[m]: https://hackage.haskell.org/package/tasty-golden-2.3.5/docs/Test-Tasty-Golden.html might be helpful? it depends on which tasty provider you're using
2023-03-31 17:00:39 +0200 <jean-paul[m]> Axman6: Thanks, looks interesting
2023-03-31 17:01:56 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 265 seconds)
2023-03-31 17:05:28 +0200cheater_(~Username@user/cheater)
2023-03-31 17:08:08 +0200stackdroid18(14094@de1.hashbang.sh)
2023-03-31 17:08:48 +0200cheater(~Username@user/cheater) (Ping timeout: 248 seconds)
2023-03-31 17:08:53 +0200cheater_cheater
2023-03-31 17:12:41 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-31 17:14:19 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-31 17:14:20 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2023-03-31 17:15:26 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de)
2023-03-31 17:17:25 +0200gambpang(~ishipman@172-6-174-68.lightspeed.cicril.sbcglobal.net)
2023-03-31 17:17:35 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-31 17:24:37 +0200cheater(~Username@user/cheater) (Read error: Connection reset by peer)
2023-03-31 17:26:21 +0200cheater(~Username@user/cheater)
2023-03-31 17:30:54 +0200jakalx(~jakalx@base.jakalx.net)
2023-03-31 17:34:15 +0200econo(uid147250@user/econo)
2023-03-31 17:37:43 +0200irrgit_(~irrgit@176.113.74.74)
2023-03-31 17:40:28 +0200titibandit(~titibandi@user/titibandit) (Quit: leaving)
2023-03-31 17:40:43 +0200titibandit(~titibandi@user/titibandit)
2023-03-31 17:43:24 +0200shriekingnoise(~shrieking@186.137.175.87)
2023-03-31 17:46:51 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 255 seconds)
2023-03-31 17:50:14 +0200jakalx(~jakalx@base.jakalx.net) ()
2023-03-31 17:56:15 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:3cb1:54bf:cd2c:417f)
2023-03-31 17:57:01 +0200jakalx(~jakalx@base.jakalx.net)
2023-03-31 18:00:14 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection)
2023-03-31 18:00:50 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:3cb1:54bf:cd2c:417f) (Ping timeout: 260 seconds)
2023-03-31 18:04:16 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:ca5b:76ff:fe29:f233) (Remote host closed the connection)
2023-03-31 18:04:41 +0200 <hippoid> :t (.) const
2023-03-31 18:04:42 +0200 <lambdabot> (a1 -> a2) -> a1 -> b -> a2
2023-03-31 18:05:31 +0200 <hippoid> when naming the type variables, is there some reason that lambdabot seems to group together certain variables wiht the prefix a, and others with b?
2023-03-31 18:05:52 +0200 <hippoid> for example, in `(.) const`
2023-03-31 18:06:41 +0200 <hippoid> it could have equally chosen names a, b, c... so why a1, a2, and b instead?
2023-03-31 18:07:42 +0200vpan(~0@212.117.1.172) (Quit: Leaving.)
2023-03-31 18:09:14 +0200titibandit(~titibandi@user/titibandit) ()
2023-03-31 18:09:18 +0200 <Cale> hippoid: GHC tries to preserve the variable names used in signatures, but adds numbers to them when collisions happen.
2023-03-31 18:09:33 +0200titibandit(~titibandi@user/titibandit)
2023-03-31 18:09:50 +0200mbuf(~Shakthi@49.207.178.186) (Quit: Leaving)
2023-03-31 18:12:59 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 250 seconds)
2023-03-31 18:13:05 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 260 seconds)
2023-03-31 18:14:06 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-03-31 18:17:43 +0200 <hippoid> Cale: ok, thanks. is there somewhere this is documented?
2023-03-31 18:18:02 +0200 <hippoid> I want to look into this more to see if I can get more intuition about reasoning about type signatures
2023-03-31 18:18:05 +0200 <hippoid> :t const . const
2023-03-31 18:18:06 +0200 <lambdabot> a -> b1 -> b2 -> a
2023-03-31 18:18:36 +0200 <geekosaur> it won't actually help for that, the type checker does its own thing and behyavior isn't guaranteed even across ghc versions
2023-03-31 18:18:45 +0200 <Cale> Well, as you pointed out, the particular choices of variable names are not especially important, and it really could rename them all for you.
2023-03-31 18:18:51 +0200 <hippoid> like when I do that, it takes me a long to figure out how it all fits together. and now i also ask, why doesn't a have a number, but b1 and b2 do
2023-03-31 18:19:11 +0200 <geekosaur> at most you might get an idea of in what order the typechecker in that version of ghc is typechecking things
2023-03-31 18:19:58 +0200 <hippoid> ok, i'll take the advice and not go down that route
2023-03-31 18:20:26 +0200 <geekosaur> which can change for various reasons often related to support for type level operations like type families, etc.
2023-03-31 18:21:11 +0200 <hippoid> on a related note, is there some equivalent way to reason about the expression `const . const`, by using combinators, like `KBK`, or kestrel bluebird kestrel when using the 'to mock a mockingbird' names?
2023-03-31 18:22:47 +0200 <hippoid> my undersstanding is that KBKxyz reduces to Bx(yz), but then how does one figure out the types of x, y and z? or are types even a 'thing' with combinators?
2023-03-31 18:22:48 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2023-03-31 18:23:19 +0200 <geekosaur> combinator calculus is usually untyped
2023-03-31 18:23:40 +0200 <geekosaur> which is why it can have a Y combinator
2023-03-31 18:24:18 +0200 <geekosaur> (which, if you try to write it in Haskell, you'll find you can't write an acceptable type for it)
2023-03-31 18:25:30 +0200 <int-e> But doesn't combinatory *logic* connect to https://en.wikipedia.org/wiki/Hilbert_system#Logical_axioms? (The axioms P1...P3 are the types of I, K, and S, respectively)
2023-03-31 18:25:52 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-31 18:27:55 +0200 <geekosaur> so it connects to a typed combinator calculus in which the Y combinator can't exist (or is equivalent to P^~P)
2023-03-31 18:28:14 +0200gentauro(~gentauro@user/gentauro)
2023-03-31 18:29:48 +0200 <int-e> Also I guess KBKxyz -> Bxyz -> x(yz). So the final term suggests x: b -> c, y: a -> b, z: a, but that doesn't ensure that the original term can be typed with those chocies.
2023-03-31 18:32:27 +0200 <EvanR> :t fmap fmap fmap
2023-03-31 18:32:28 +0200 <lambdabot> (Functor f1, Functor f2) => (a -> b) -> f1 (f2 a) -> f1 (f2 b)
2023-03-31 18:32:38 +0200 <EvanR> sometimes it works out pretty good
2023-03-31 18:33:14 +0200 <hippoid> int-e: I wrote the wrong combinator expression for `const . const`. instead of KBKxyz, it should have been BKKxyz
2023-03-31 18:35:21 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-31 18:36:43 +0200 <sm> from a quick glance at haskell.org I didn't see any short motivating Why Haskell ? page suitable for civilians - do you know of one ?
2023-03-31 18:37:10 +0200 <sm> aha, https://www.fpcomplete.com/haskell/#why-haskell
2023-03-31 18:38:56 +0200 <sm> a more focussed one, on or linking more directly to haskell.org, would be nice
2023-03-31 18:39:17 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-03-31 18:42:14 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds)
2023-03-31 18:46:46 +0200zeenk(~zeenk@2a02:2f04:a307:2300::7fe) (Quit: Konversation terminated!)
2023-03-31 18:50:47 +0200chomwitt(~chomwitt@ppp-94-69-24-223.home.otenet.gr)
2023-03-31 18:56:41 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-31 18:58:13 +0200titibandit(~titibandi@user/titibandit) (Quit: leaving)
2023-03-31 18:59:24 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:3cb1:54bf:cd2c:417f)
2023-03-31 19:05:38 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-31 19:06:00 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2023-03-31 19:07:12 +0200razetime(~Thunderbi@49.207.192.117)
2023-03-31 19:20:15 +0200nate1(~nate@98.45.169.16)
2023-03-31 19:20:37 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 276 seconds)
2023-03-31 19:24:57 +0200nate1(~nate@98.45.169.16) (Ping timeout: 255 seconds)
2023-03-31 19:31:40 +0200razetime(~Thunderbi@49.207.192.117) (Ping timeout: 268 seconds)
2023-03-31 19:33:20 +0200nschoe(~q@2a01:e0a:8e:a190:e9eb:f2f0:bd71:1213) (Ping timeout: 248 seconds)
2023-03-31 19:34:32 +0200Guest73(~Guest73@p200300ee9f014d2c583a9bedffb8b1bf.dip0.t-ipconnect.de)
2023-03-31 19:36:43 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 248 seconds)
2023-03-31 19:36:43 +0200Guest73(~Guest73@p200300ee9f014d2c583a9bedffb8b1bf.dip0.t-ipconnect.de) (Client Quit)
2023-03-31 19:40:20 +0200cheater_(~Username@user/cheater)
2023-03-31 19:40:23 +0200Midjak(~Midjak@82.66.147.146) (Quit: Leaving)
2023-03-31 19:41:55 +0200cheater(~Username@user/cheater) (Ping timeout: 265 seconds)
2023-03-31 19:41:59 +0200cheater_cheater
2023-03-31 19:42:39 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-31 19:43:06 +0200 <monochrom> Heck, I don't know why I should want other people to use Haskell either.
2023-03-31 19:44:00 +0200 <monochrom> I know why I want to use Haskell. But my values misalign, even oppose, most other people's values. So actually everything I say about myself will push people away.
2023-03-31 19:44:55 +0200 <[exa]> I guess the general rule about pushing others to do stuff applies
2023-03-31 19:45:10 +0200 <monochrom> But if you say, "sure, no problem, why-haskell just needs to attract more people like monochrom", then the current "purely functional statically typed" already does it.
2023-03-31 19:45:24 +0200lagash(lagash@lagash.shelltalk.net) (Ping timeout: 252 seconds)
2023-03-31 19:46:11 +0200 <monochrom> And then there is also Hughes's "why FP matters" which covers why lazy.
2023-03-31 19:49:06 +0200gurkenglas(~gurkengla@dynamic-046-114-179-201.46.114.pool.telefonica.de)
2023-03-31 19:51:04 +0200 <monochrom> And if you feel that the python website is better ("better") at this kind of evangelism/advocacy, here is my old post on my opinion (TL;DR that "better" means snake oil) https://mail.haskell.org/pipermail/haskell-cafe/2007-October/032625.html
2023-03-31 19:52:33 +0200 <[exa]> why not just have a site that highlights top cool haskell projects?
2023-03-31 19:54:47 +0200 <monochrom> Yeah that's a good idea.
2023-03-31 20:01:28 +0200Midjak(~Midjak@82.66.147.146)
2023-03-31 20:03:08 +0200 <[exa]> actually I recall we made a pretty good list a few weeks ago
2023-03-31 20:05:01 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2023-03-31 20:08:46 +0200vlad(~vlad@2a00:23c6:9822:4c01:1574:2d21:3c47:2b80)
2023-03-31 20:09:33 +0200 <L29Ah> so, how do i print two Word's into a ByteString as two decimal ascii numbers and a separator?
2023-03-31 20:14:12 +0200 <monochrom> Data.ByteString.Builder has something, e.g., wordDec
2023-03-31 20:15:19 +0200Guest73(~Guest73@p200300ee9f014d2c583a9bedffb8b1bf.dip0.t-ipconnect.de)
2023-03-31 20:15:44 +0200 <L29Ah> thanks
2023-03-31 20:15:44 +0200Guest73(~Guest73@p200300ee9f014d2c583a9bedffb8b1bf.dip0.t-ipconnect.de) (Client Quit)
2023-03-31 20:16:04 +0200bhall(~brunohall@195.147.207.136) (Ping timeout: 252 seconds)
2023-03-31 20:19:30 +0200bhall(~brunohall@195.147.207.136)
2023-03-31 20:31:48 +0200lagash_(lagash@lagash.shelltalk.net)
2023-03-31 20:34:02 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-31 20:39:44 +0200nschoe(~q@2a01:e0a:8e:a190:d344:fd0:3366:2fe1)
2023-03-31 20:39:57 +0200purlingstream(~godfibrat@178.70.110.196) (Quit: Leaving.)
2023-03-31 20:40:10 +0200purlingstream(~godfibrat@178.70.110.196)
2023-03-31 20:42:31 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-61e9-795d-69be-482f.rev.sfr.net) (Ping timeout: 260 seconds)
2023-03-31 20:44:15 +0200taupiqueur(~taupiqueu@2a02:8440:2140:490c:8d9a:8792:13e:86a6)
2023-03-31 20:52:08 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
2023-03-31 20:52:48 +0200taupiqueur(~taupiqueu@2a02:8440:2140:490c:8d9a:8792:13e:86a6) (Ping timeout: 248 seconds)
2023-03-31 20:54:39 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-5cda-53cf-f789-516e.rev.sfr.net)
2023-03-31 20:55:04 +0200ddellacosta(~ddellacos@146.70.165.140)
2023-03-31 20:56:11 +0200raym(~ray@user/raym) (Quit: kernel ypdate, rebooting...)
2023-03-31 20:58:16 +0200ddellacosta(~ddellacos@146.70.165.140) (Read error: Connection reset by peer)
2023-03-31 20:58:35 +0200ddellacosta(~ddellacos@146.70.165.140)
2023-03-31 20:59:08 +0200ddellaco1(~ddellacos@146.70.165.10)
2023-03-31 21:03:33 +0200ddellacosta(~ddellacos@146.70.165.140) (Ping timeout: 268 seconds)
2023-03-31 21:14:40 +0200bhall(~brunohall@195.147.207.136) (Ping timeout: 248 seconds)
2023-03-31 21:15:27 +0200bhall(~brunohall@185.69.145.47)
2023-03-31 21:15:53 +0200 <EvanR> someone asked me if this was accurate (chatGPT asked to explain monads) https://cdn.discordapp.com/attachments/710644130048639066/1091440382304325714/image.png
2023-03-31 21:18:36 +0200bhall(~brunohall@185.69.145.47) (Read error: Connection reset by peer)
2023-03-31 21:18:50 +0200bhall(~brunohall@195.147.207.136)
2023-03-31 21:19:14 +0200stackdroid18(14094@de1.hashbang.sh) (Quit: hasta la vista... tchau!)
2023-03-31 21:21:09 +0200 <EvanR> at least it's not burritos
2023-03-31 21:30:36 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-31 21:38:02 +0200crazazy(~user@130.89.171.62)
2023-03-31 21:42:00 +0200kuribas(~user@ptr-17d51eporpn4nzulj23.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2023-03-31 21:42:01 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-03-31 21:42:32 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:ac34:e4e8:46f:d695) (Quit: use-value)
2023-03-31 21:46:19 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com)
2023-03-31 21:49:04 +0200 <[exa]> EvanR: tbh if you substitute monad by any other programming coolword it doesn't make much less sense
2023-03-31 21:52:19 +0200 <EvanR> is that more or less accurate than "not even wrong"
2023-03-31 21:52:47 +0200 <[exa]> yeah it neatly avoided being wrong
2023-03-31 21:54:46 +0200 <ph88> does someone know a foldlike function that works on either? (a -> Either b c) -> f a -> Either b (f c) first Left value short circuit, otherwise Right values are collected
2023-03-31 21:55:34 +0200 <ph88> actually i would need the monad variant of that Monad m => (a -> m (Either b c)) -> f a -> m (Either b [c])
2023-03-31 22:04:13 +0200 <[exa]> ph88: this gets asked quite regularly :] might be just `sequenceA` or maybe `asum`
2023-03-31 22:05:17 +0200 <ph88> thanks [exa] :)
2023-03-31 22:06:42 +0200pavonia(~user@user/siracusa)
2023-03-31 22:07:16 +0200Guest73(~Guest73@p57abaed8.dip0.t-ipconnect.de)
2023-03-31 22:07:41 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-03-31 22:08:26 +0200 <[exa]> aaaaaaaaaaand it's sequence because Either has no Alternative by default
2023-03-31 22:10:54 +0200Guest73(~Guest73@p57abaed8.dip0.t-ipconnect.de) (Client Quit)
2023-03-31 22:13:39 +0200 <EvanR> :t sequenceA
2023-03-31 22:13:40 +0200 <lambdabot> (Traversable t, Applicative f) => t (f a) -> f (t a)
2023-03-31 22:13:52 +0200 <EvanR> :t asum
2023-03-31 22:13:53 +0200 <lambdabot> (Foldable t, Alternative f) => t (f a) -> f a
2023-03-31 22:15:43 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2023-03-31 22:18:11 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-03-31 22:19:50 +0200biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2023-03-31 22:21:02 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
2023-03-31 22:22:35 +0200mastarija(~mastarija@2a05:4f46:e03:6000:cca2:629:d477:3448)
2023-03-31 22:24:35 +0200 <mastarija> Any idea why GHC is yelling at me that this has non-exhaustive pattern matching?:
2023-03-31 22:24:47 +0200 <mastarija> let mps@[mp1, mp2] = [sectionTreeMinPriY t1, sectionTreeMinPriY t2]
2023-03-31 22:25:30 +0200 <EvanR> not smart enough to see the definition implies the other options are impossible
2023-03-31 22:26:15 +0200 <EvanR> you could use a tuple for that definition then define mps = (mp1, mp2)
2023-03-31 22:26:15 +0200 <mastarija> Ghci doesn't complain, but when i try to build it with '-Wincomplete-uni-patterns, -Werror=incomplete-uni-patterns' it errors out...
2023-03-31 22:26:31 +0200 <EvanR> er, mps = [mp1,mp2]
2023-03-31 22:27:00 +0200 <mastarija> yeah. I was trying to be concise, since I have to use `maximum mps` elsewhere etc.
2023-03-31 22:27:15 +0200biberu(~biberu@user/biberu)
2023-03-31 22:27:49 +0200coot(~coot@213.134.170.228)
2023-03-31 22:27:52 +0200 <EvanR> stands to reason if there's a warning about it, the check for pattern failure might not get optimized out either
2023-03-31 22:28:17 +0200 <mastarija> GHCI complained when I tried `fmap sectionTreeMinPriY [t1, t2]`
2023-03-31 22:28:27 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-31 22:28:36 +0200 <mastarija> That seems reasonable, because it doesn't know what `fmap` does with the list.
2023-03-31 22:29:08 +0200 <mastarija> So I've changed it to the previous form and it was ok. But when I try to actually build stuff it gets confused. :(
2023-03-31 22:29:53 +0200 <EvanR> well there's nothing inherently wrong with the code, so the error on incomplete patterns seems inappropriate
2023-03-31 22:30:33 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-31 22:30:46 +0200 <mastarija> Yeah. It's just that... how can I lord over my friends about how haskell is superior if it can't figure this out xD
2023-03-31 22:30:55 +0200 <EvanR> and a maximum [x,y] is just max x y
2023-03-31 22:32:13 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-31 22:32:23 +0200 <EvanR> to be superior you have to upgrade to dependent types, probably by building your own dependently typed system because you'll run into even more things that annoy you
2023-03-31 22:32:36 +0200coot_(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-31 22:32:50 +0200hsiktas[m]1(~hsiktasm]@2001:470:69fc:105::30d4)
2023-03-31 22:32:52 +0200 <EvanR> then you can even lord of haskell users
2023-03-31 22:33:35 +0200coot(~coot@213.134.170.228) (Ping timeout: 268 seconds)
2023-03-31 22:33:36 +0200coot_coot
2023-03-31 22:38:31 +0200 <mastarija> EvanR: I already use dependent types to some extent, and I have another case with THREE elements in a list, so `max` won't do xD
2023-03-31 22:39:43 +0200 <Guillaum[m]> When reading `+RTS -s` output, I can see " GC time 11.983s (243.588s elapsed)". According to the doc, it is first the CPU time, and last the wall clock time. For MUT, the CPU time is usually close to N times the wall clock time (where N is th number of core used). But I don't understand why GC, in this context, is taking 245s of "wall clock time", but only "11s" of CPU time? Does this accounts for system time or locks?
2023-03-31 22:39:47 +0200 <EvanR> maxx x y z
2023-03-31 22:39:48 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
2023-03-31 22:41:39 +0200 <c_wraith> with a differential *that* big, I'd expect that you've got something going on that's blocking GC on one thread while the rest are stopped waiting
2023-03-31 22:43:40 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-03-31 22:47:04 +0200 <mastarija> :t maxx
2023-03-31 22:47:05 +0200 <lambdabot> error:
2023-03-31 22:47:05 +0200 <lambdabot> • Variable not in scope: maxx
2023-03-31 22:47:05 +0200 <lambdabot> • Perhaps you meant ‘max’ (imported from Data.Ord)
2023-03-31 22:47:27 +0200 <mastarija> had to check if it's real :)
2023-03-31 22:47:34 +0200lxi(~quassel@2a02:2f08:4706:3500:1723:d880:e55e:4cf4)
2023-03-31 22:49:25 +0200 <Guillaum[m]> c_wraith: do you have some example of what "something going on that's blocking GC" may mean. This program is mostly a `mapConcurrently` from `async` with something like 1000 tasks, on 60 cores.
2023-03-31 22:49:46 +0200 <c_wraith> typically, a thread that runs for a long time without allocating.
2023-03-31 22:52:46 +0200zeenk(~zeenk@2a02:2f04:a307:2300::7fe)
2023-03-31 22:53:03 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-31 22:54:36 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2023-03-31 22:55:35 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2023-03-31 22:57:41 +0200NiceBird(~NiceBird@185.133.111.196) (Ping timeout: 250 seconds)
2023-03-31 22:59:02 +0200crazazy`(~user@130.89.171.62)
2023-03-31 22:59:22 +0200 <tomsmeding> Guillaum[m]: if you haven't yet, try running with +RTS -qg
2023-03-31 22:59:36 +0200kenaryn(~aurele@89-88-44-27.abo.bbox.fr)
2023-03-31 23:00:25 +0200 <tomsmeding> or perhaps -qn2, -qn3 or -qn4 or so
2023-03-31 23:00:27 +0200crazazy(~user@130.89.171.62) (Ping timeout: 248 seconds)
2023-03-31 23:00:42 +0200 <tomsmeding> (instead of -qg, that is)
2023-03-31 23:01:03 +0200kimiamania(~65804703@user/kimiamania) (Quit: PegeLinux)
2023-03-31 23:01:18 +0200crazazy`(~user@130.89.171.62) (Client Quit)
2023-03-31 23:01:25 +0200kimiamania(~65804703@user/kimiamania)
2023-03-31 23:01:31 +0200 <c_wraith> There's also the concurrent collector to try
2023-03-31 23:01:35 +0200 <tomsmeding> though given c_wraith's diagnosis, it's not terribly likely to work
2023-03-31 23:01:37 +0200crazazy(~user@130.89.171.62)
2023-03-31 23:02:20 +0200 <tomsmeding> (the concurrent collector is enabled with +RTS --nonmoving-gc)
2023-03-31 23:02:34 +0200 <c_wraith> eh, still worth ruling out a parallel GC issue. those still strike, unfortunately
2023-03-31 23:05:14 +0200Maxdamantus(~Maxdamant@user/maxdamantus) (Ping timeout: 252 seconds)
2023-03-31 23:05:53 +0200Guest8(~Guest8@202.142.114.104)
2023-03-31 23:06:06 +0200Guest8(~Guest8@202.142.114.104) (Client Quit)
2023-03-31 23:06:29 +0200 <Guillaum[m]> c_wraith: ha, that's interesting, when a thread had done enough allocation, it waits for the other thread to reach the same state, and GC is not triggered until this is the case? That's super interesting, and may explain a lot (I'm spending a lot of time in some C foreign calls, so no allocation, obivously)
2023-03-31 23:06:50 +0200 <Guillaum[m]> tomsmeding: I'll try the -qg -gn options, thank you.
2023-03-31 23:06:56 +0200lxi(~quassel@2a02:2f08:4706:3500:1723:d880:e55e:4cf4) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-31 23:07:31 +0200 <c_wraith> Guillaum[m]: not exactly that - when a thread allocates (and enough time has passed, by default) it checks to see if there's a GC in progress. If there is, it stops and waits for GC to complete.
2023-03-31 23:08:23 +0200Guest8(~Guest8@202.142.114.104)
2023-03-31 23:09:11 +0200 <Guillaum[m]> c_wraith: ha, intereting, it changes my mental model of the GC.
2023-03-31 23:11:30 +0200 <c_wraith> and notably, unless you're using the new concurrent GC, the GC doesn't start until *all* threads are stopped waiting.
2023-03-31 23:12:08 +0200mastarija(~mastarija@2a05:4f46:e03:6000:cca2:629:d477:3448) (Quit: WeeChat 3.7.1)
2023-03-31 23:17:29 +0200kimjetwav(~user@2607:fea8:235e:b600:98bd:5e68:98bc:535e)
2023-03-31 23:21:44 +0200nate1(~nate@98.45.169.16)
2023-03-31 23:26:11 +0200bhall(~brunohall@195.147.207.136) (Ping timeout: 265 seconds)
2023-03-31 23:26:24 +0200nate1(~nate@98.45.169.16) (Ping timeout: 248 seconds)
2023-03-31 23:27:21 +0200bhall(~brunohall@185.69.145.43)
2023-03-31 23:30:50 +0200Guest8(~Guest8@202.142.114.104) (Quit: Client closed)
2023-03-31 23:33:20 +0200bontaq(~user@ool-45779b84.dyn.optonline.net)
2023-03-31 23:34:46 +0200bhall(~brunohall@185.69.145.43) (Ping timeout: 276 seconds)
2023-03-31 23:35:33 +0200bhall(~brunohall@195.147.207.136)
2023-03-31 23:38:28 +0200Sciencentistguy8(~sciencent@hacksoc/ordinary-member)
2023-03-31 23:38:31 +0200michalz(~michalz@185.246.207.203) (Remote host closed the connection)
2023-03-31 23:38:33 +0200Albina_Pavlovna(~Albina_Pa@047-230-050-118.res.spectrum.com) (Quit: bb)
2023-03-31 23:39:17 +0200Albina_Pavlovna(~Albina_Pa@92.223.103.137)
2023-03-31 23:41:00 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Ping timeout: 255 seconds)
2023-03-31 23:41:00 +0200Sciencentistguy8Sciencentistguy
2023-03-31 23:43:31 +0200Albina_Pavlovna(~Albina_Pa@92.223.103.137) (Client Quit)
2023-03-31 23:44:03 +0200Albina_Pavlovna(~Albina_Pa@92.223.103.137)
2023-03-31 23:47:51 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-31 23:48:23 +0200nschoe(~q@2a01:e0a:8e:a190:d344:fd0:3366:2fe1) (Ping timeout: 250 seconds)
2023-03-31 23:49:52 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-31 23:50:08 +0200Albina_Pavlovna(~Albina_Pa@92.223.103.137) (Read error: Connection reset by peer)
2023-03-31 23:50:27 +0200gambpang(~ishipman@172-6-174-68.lightspeed.cicril.sbcglobal.net) (Remote host closed the connection)
2023-03-31 23:51:58 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-31 23:52:47 +0200Albina_Pavlovna(~Albina_Pa@2603-7000-76f0-76e0-e5e7-4038-b6f3-1073.res6.spectrum.com)