2022/11/29

2022-11-29 00:00:37 +0100tomboy64(~tomboy64@user/tomboy64)
2022-11-29 00:02:36 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-11-29 00:06:08 +0100Guest30(~Guest30@59-102-33-166.tpgi.com.au) (Ping timeout: 260 seconds)
2022-11-29 00:07:04 +0100Pickchea(~private@user/pickchea) (Quit: Leaving)
2022-11-29 00:09:49 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2022-11-29 00:10:01 +0100sayola(~sayola@dslb-088-064-186-217.088.064.pools.vodafone-ip.de)
2022-11-29 00:10:08 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2022-11-29 00:11:04 +0100euandreh(~Thunderbi@179.214.113.107) (Quit: euandreh)
2022-11-29 00:12:12 +0100bobbingbob(~bobbingbo@s010610561191f5d6.lb.shawcable.net) (Remote host closed the connection)
2022-11-29 00:13:26 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 00:15:54 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-11-29 00:15:54 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-11-29 00:15:54 +0100wroathe(~wroathe@user/wroathe)
2022-11-29 00:16:01 +0100mestre(~mestre@191.177.185.178) (Quit: Lost terminal)
2022-11-29 00:16:23 +0100zant(~zant@62.214.20.26) (Ping timeout: 264 seconds)
2022-11-29 00:18:55 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-11-29 00:23:45 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2022-11-29 00:32:15 +0100 <Axman6> @pl (\c -> maybe (c:) (++) (Map.lookup c encodeTable))
2022-11-29 00:32:15 +0100 <lambdabot> ap (flip maybe (++) . (:)) (flip Map.lookup encodeTable)
2022-11-29 00:32:26 +0100 <Axman6> no thank you
2022-11-29 00:35:03 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Quit: Leaving)
2022-11-29 00:35:37 +0100k8yun(~k8yun@user/k8yun)
2022-11-29 00:40:33 +0100acidjnk_new(~acidjnk@p200300d6e7137a0209d789e407054230.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-11-29 00:40:58 +0100bjourne2(~bjorn@94.191.152.191) (Quit: Konversation terminated!)
2022-11-29 00:48:35 +0100Xeroine(~Xeroine@user/xeroine) (Excess Flood)
2022-11-29 00:50:24 +0100Xeroine(~Xeroine@user/xeroine)
2022-11-29 00:51:41 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:8066:4970:bd6:2327)
2022-11-29 00:54:37 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-11-29 00:56:04 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-11-29 00:56:18 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:8066:4970:bd6:2327) (Ping timeout: 260 seconds)
2022-11-29 00:57:46 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 00:58:14 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-11-29 01:00:16 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-11-29 01:01:12 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 01:02:17 +0100xacktm(~xacktm@user/xacktm) (Ping timeout: 256 seconds)
2022-11-29 01:03:51 +0100zmt00(~zmt00@user/zmt00) (Quit: Leaving)
2022-11-29 01:10:36 +0100finsternis(~X@23.226.237.192)
2022-11-29 01:11:50 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-11-29 01:12:00 +0100jmd_(~jmdaemon@user/jmdaemon)
2022-11-29 01:12:19 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.)
2022-11-29 01:14:43 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 01:14:55 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 01:16:13 +0100Topsi(~Topsi@dyndsl-095-033-226-009.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2022-11-29 01:17:21 +0100xacktm(~xacktm@user/xacktm)
2022-11-29 01:21:34 +0100zmt00(~zmt00@user/zmt00)
2022-11-29 01:27:14 +0100 <jackdk> Axman6: whatcha doing?
2022-11-29 01:33:53 +0100jinsl(~jinsl@123.120.168.177) (Quit: ZNC - https://znc.in)
2022-11-29 01:37:21 +0100jinsl(~jinsl@2408:8207:2559:28e0:211:32ff:fec8:6aea)
2022-11-29 01:42:03 +0100 <Axman6> just some encoding code at #work
2022-11-29 01:43:32 +0100 <Axman6> full code is foldr (\c -> maybe (c:) (++) (lookup c encodeTable)) ""
2022-11-29 01:45:18 +0100gawen(~gawen@user/gawen) (Quit: cya)
2022-11-29 01:46:14 +0100Kaiepi(~Kaiepi@108.175.84.104) (Ping timeout: 260 seconds)
2022-11-29 01:48:34 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-11-29 01:48:44 +0100 <jackdk> so basically everything encodes as itself unless there's an entry for it in the table?
2022-11-29 01:49:03 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-11-29 01:52:06 +0100razetime(~quassel@49.207.211.219)
2022-11-29 01:52:18 +0100xacktm(~xacktm@user/xacktm) (Ping timeout: 260 seconds)
2022-11-29 01:55:05 +0100gawen(~gawen@user/gawen)
2022-11-29 01:58:33 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2022-11-29 01:58:33 +0100wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2022-11-29 01:58:33 +0100wroathe(~wroathe@user/wroathe)
2022-11-29 01:58:40 +0100 <[Leary]> % :t \encodeTable s -> s >>= fromMaybe . pure <*> flip M.lookup encodeTable
2022-11-29 01:58:40 +0100 <yahb2> \encodeTable s -> s >>= fromMaybe . pure <*> flip M.lookup encodeTable ; :: (Monad m, Ord a) => M.Map a (m a) -> m a -> m a
2022-11-29 01:59:00 +0100 <[Leary]> Axman6: ^ Not sure if better, but it looks like it should be a (>>=) to me.
2022-11-29 02:03:06 +0100thyriaen(~thyriaen@2a01:aea0:dd4:470d:6245:cbff:fe9f:48b1) (Read error: Connection reset by peer)
2022-11-29 02:05:08 +0100 <hpc> i think i like Axman6's better
2022-11-29 02:05:56 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-11-29 02:06:40 +0100xacktm(~xacktm@user/xacktm)
2022-11-29 02:06:51 +0100 <hpc> maybe it's just being able to see c in the expression, but it's a lot easier to tell what it's doing
2022-11-29 02:08:04 +0100 <hpc> s >>= (\c -> maybe (c:) (++) (Map.lookup c encodeTable)) -- perhaps?
2022-11-29 02:08:20 +0100 <hpc> :t \encodeTable s -> s >>= (\c -> maybe (c:) (++) (Map.lookup c encodeTable))
2022-11-29 02:08:21 +0100 <lambdabot> error:
2022-11-29 02:08:28 +0100 <hpc> :t \encodeTable s -> s >>= (\c -> maybe (c:) (++) (M.lookup c encodeTable))
2022-11-29 02:08:30 +0100 <lambdabot> Ord k => M.Map k [k] -> ([k] -> k) -> [k] -> [k]
2022-11-29 02:09:03 +0100 <[Leary]> That's fair enough. I can only read it easily because I recently got fond of:
2022-11-29 02:09:10 +0100 <[Leary]> % :t (fromMaybe <*>)
2022-11-29 02:09:10 +0100 <yahb2> (fromMaybe <*>) :: (b -> Maybe b) -> b -> b
2022-11-29 02:09:24 +0100 <hpc> hmm, that doesn't look right
2022-11-29 02:09:44 +0100 <hpc> :t \encodeTable s -> s >>= (\c -> maybe [c] (M.lookup c encodeTable))
2022-11-29 02:09:45 +0100 <lambdabot> error:
2022-11-29 02:09:45 +0100 <lambdabot> • Couldn't match expected type ‘a1 -> [k]’
2022-11-29 02:09:45 +0100 <lambdabot> with actual type ‘Maybe a’
2022-11-29 02:09:54 +0100 <hpc> :t \encodeTable s -> s >>= (\c -> maybe [c] id (M.lookup c encodeTable))
2022-11-29 02:09:56 +0100 <lambdabot> Ord b => M.Map b [b] -> [b] -> [b]
2022-11-29 02:11:03 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-11-29 02:11:59 +0100 <hpc> :t \encodeTable s -> s >>= (\c -> fromMaybe [c] (M.lookup c encodeTable))
2022-11-29 02:12:01 +0100 <lambdabot> Ord b => M.Map b [b] -> [b] -> [b]
2022-11-29 02:12:14 +0100 <hpc> that's probably the best mix of brevity and clarity?
2022-11-29 02:14:33 +0100 <[Leary]> Or \c -> M.findWithDefault [c] c encodeTable
2022-11-29 02:15:11 +0100 <hpc> ooh, that's good
2022-11-29 02:17:10 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-11-29 02:19:59 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Ping timeout: 264 seconds)
2022-11-29 02:21:47 +0100xacktm(~xacktm@user/xacktm) (Ping timeout: 264 seconds)
2022-11-29 02:21:55 +0100Xeroine(~Xeroine@user/xeroine) (Remote host closed the connection)
2022-11-29 02:22:08 +0100causal(~user@50.35.83.177)
2022-11-29 02:22:49 +0100Xeroine(~Xeroine@user/xeroine)
2022-11-29 02:28:09 +0100merijn(~merijn@86.86.29.250)
2022-11-29 02:29:35 +0100roconnor(~quassel@coq/roconnor) (Ping timeout: 264 seconds)
2022-11-29 02:29:44 +0100superbil(~superbil@1-34-176-171.hinet-ip.hinet.net)
2022-11-29 02:30:04 +0100roconnor(~quassel@coq/roconnor)
2022-11-29 02:30:52 +0100xff0x(~xff0x@2405:6580:b080:900:534a:4597:1af5:4190) (Ping timeout: 256 seconds)
2022-11-29 02:33:08 +0100merijn(~merijn@86.86.29.250) (Ping timeout: 260 seconds)
2022-11-29 02:33:40 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2022-11-29 02:38:12 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-11-29 02:43:42 +0100xacktm(~xacktm@user/xacktm)
2022-11-29 02:44:48 +0100Guest75(~Guest75@178.141.153.191) (Ping timeout: 260 seconds)
2022-11-29 02:46:39 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 02:48:58 +0100lawt(~lawt@2603:c024:c008:d000:5b4f:1ef2:fed2:ef3d)
2022-11-29 02:50:03 +0100 <Axman6> encodeTable isn't an argument that needs to be passed in
2022-11-29 02:58:10 +0100 <jackdk> Axman6: `encode = alaf Endo (foldMapOf each) (\c -> maybe (Text.cons c) (<>) (Map.lookup c encodeTable)) ("" :: Text)`
2022-11-29 02:58:28 +0100ddellacosta(~ddellacos@86.106.143.49)
2022-11-29 03:01:23 +0100 <jackdk> @pl \c -> fromMaybe (Text.singleton c) (flip Map.lookup encodeTable c)
2022-11-29 03:01:23 +0100 <lambdabot> liftM2 fromMaybe Text.singleton (flip Map.lookup encodeTable)
2022-11-29 03:01:47 +0100 <jackdk> Axman6: `encode = foldMapOf each (fromMaybe <$> Text.singleton <*> flip Map.lookup encodeTable)`
2022-11-29 03:02:05 +0100 <jackdk> works over `Text` too
2022-11-29 03:06:38 +0100talismanick(~user@76.133.152.122) (Remote host closed the connection)
2022-11-29 03:11:26 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-11-29 03:13:32 +0100talismanick(~user@76.133.152.122)
2022-11-29 03:14:35 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
2022-11-29 03:15:47 +0100opticblast(~Thunderbi@secure-165.caltech.edu)
2022-11-29 03:17:05 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
2022-11-29 03:17:23 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2022-11-29 03:17:24 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 03:20:32 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-11-29 03:26:43 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 03:27:29 +0100 <segfaultfizzbuzz> ok so to hell with fast or widely used, what cpu ISA is the most readable/beautiful? or is there really just not that much variation in ISAs?
2022-11-29 03:32:09 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 03:36:18 +0100Bocaneri(~sauvin@user/Sauvin)
2022-11-29 03:36:42 +0100BocaneriGuest965
2022-11-29 03:37:08 +0100aeroplane(~user@user/aeroplane)
2022-11-29 03:38:28 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 260 seconds)
2022-11-29 03:38:32 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-11-29 03:39:23 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-11-29 03:39:23 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-11-29 03:39:23 +0100finn_elijaFinnElija
2022-11-29 03:39:30 +0100Sauvin(~sauvin@user/Sauvin) (Ping timeout: 265 seconds)
2022-11-29 03:40:50 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1)
2022-11-29 03:42:20 +0100perrierjouet(~perrier-j@modemcable048.127-56-74.mc.videotron.ca)
2022-11-29 03:47:03 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds)
2022-11-29 03:50:20 +0100euandreh(~Thunderbi@179.214.113.107)
2022-11-29 03:51:05 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 03:51:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 03:52:44 +0100Guest8(~Guest8@162.217.72.147)
2022-11-29 03:53:18 +0100Guest8(~Guest8@162.217.72.147) (Client Quit)
2022-11-29 03:56:33 +0100lisbeths(uid135845@id-135845.lymington.irccloud.com)
2022-11-29 03:57:23 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-11-29 03:58:17 +0100 <EvanR> segfaultfizzbuzz, EXAPunks maybe
2022-11-29 03:59:14 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds)
2022-11-29 04:00:37 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 268 seconds)
2022-11-29 04:04:18 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 04:11:38 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-11-29 04:14:43 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 04:28:28 +0100k`(~user@2605:a601:a60d:5400:15e4:d05d:ca31:2ab6) (Ping timeout: 252 seconds)
2022-11-29 04:28:46 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 04:31:17 +0100remexre(~remexre@user/remexre) (Remote host closed the connection)
2022-11-29 04:32:59 +0100remexre(~remexre@user/remexre)
2022-11-29 04:34:02 +0100cepete02(~cepete02@2600:1702:38a0:7ab0:5801:f9cb:453d:2c67)
2022-11-29 04:38:29 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:8066:4970:bd6:2327)
2022-11-29 04:45:06 +0100terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (Quit: The Lounge - https://thelounge.chat)
2022-11-29 04:46:23 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
2022-11-29 04:46:27 +0100terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-11-29 04:47:46 +0100Kaiepi(~Kaiepi@108.175.84.104)
2022-11-29 04:48:20 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-11-29 04:51:07 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-11-29 04:52:24 +0100remexre(~remexre@user/remexre) (Remote host closed the connection)
2022-11-29 04:53:53 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 04:54:02 +0100remexre(~remexre@user/remexre)
2022-11-29 04:54:11 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
2022-11-29 04:54:28 +0100td_(~td@83.135.9.9) (Ping timeout: 248 seconds)
2022-11-29 04:54:54 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 04:56:14 +0100td_(~td@83.135.9.40)
2022-11-29 04:58:51 +0100rnat(uid73555@id-73555.lymington.irccloud.com)
2022-11-29 04:59:12 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-11-29 05:03:53 +0100ec_(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-11-29 05:09:08 +0100fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com)
2022-11-29 05:10:33 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 05:14:58 +0100kadoban(~kadoban@user/kadoban)
2022-11-29 05:19:04 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 265 seconds)
2022-11-29 05:19:23 +0100opticblast(~Thunderbi@secure-165.caltech.edu) (Ping timeout: 260 seconds)
2022-11-29 05:20:37 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:8066:4970:bd6:2327) (Remote host closed the connection)
2022-11-29 05:21:00 +0100ddellacosta(~ddellacos@86.106.143.49) (Ping timeout: 265 seconds)
2022-11-29 05:34:28 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 252 seconds)
2022-11-29 05:35:11 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 05:39:22 +0100bilegeek(~bilegeek@2600:1008:b046:4455:b06a:b805:20cf:53cf)
2022-11-29 05:39:36 +0100zebrag(~chris@user/zebrag)
2022-11-29 05:41:22 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:8066:4970:bd6:2327)
2022-11-29 05:44:50 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-11-29 05:46:03 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-11-29 05:49:23 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 264 seconds)
2022-11-29 05:49:24 +0100Vajb(~Vajb@2001:999:504:3ad6:52a4:a3b5:32d8:e74d) (Read error: Connection reset by peer)
2022-11-29 05:49:47 +0100Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
2022-11-29 05:51:38 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 255 seconds)
2022-11-29 05:55:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 05:58:32 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-11-29 06:00:53 +0100Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-11-29 06:01:16 +0100Vajb(~Vajb@2001:999:504:3ad6:52a4:a3b5:32d8:e74d)
2022-11-29 06:03:48 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 248 seconds)
2022-11-29 06:06:05 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 06:06:08 +0100lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-11-29 06:15:21 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 06:20:10 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 260 seconds)
2022-11-29 06:22:13 +0100k`(~user@2605:a601:a60d:5400:15e4:d05d:ca31:2ab6)
2022-11-29 06:26:24 +0100lawt(~lawt@2603:c024:c008:d000:5b4f:1ef2:fed2:ef3d) (Quit: WeeChat 3.5)
2022-11-29 06:26:33 +0100wroathe(~wroathe@user/wroathe) (Quit: leaving)
2022-11-29 06:27:10 +0100k`(~user@2605:a601:a60d:5400:15e4:d05d:ca31:2ab6) (Ping timeout: 260 seconds)
2022-11-29 06:28:59 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 264 seconds)
2022-11-29 06:29:30 +0100telser(~quassel@user/telser) (Ping timeout: 260 seconds)
2022-11-29 06:30:39 +0100lawt(~lawt@2603:c024:c008:d000:5b4f:1ef2:fed2:ef3d)
2022-11-29 06:32:50 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 256 seconds)
2022-11-29 06:38:08 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds)
2022-11-29 06:38:12 +0100ec_(~ec@gateway/tor-sasl/ec)
2022-11-29 06:38:41 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-11-29 06:51:37 +0100bilegeek(~bilegeek@2600:1008:b046:4455:b06a:b805:20cf:53cf) (Quit: Leaving)
2022-11-29 06:51:47 +0100aeroplane(~user@user/aeroplane) (ERC 5.4 (IRC client for GNU Emacs 28.2))
2022-11-29 06:52:48 +0100meooow(~meooow@2400:6180:100:d0::ad9:e001) (Quit: q)
2022-11-29 06:53:01 +0100aeroplane(~user@user/aeroplane)
2022-11-29 06:53:02 +0100meooow(~meooow@165.232.184.169)
2022-11-29 06:54:33 +0100aeroplane(~user@user/aeroplane) (ERC 5.4 (IRC client for GNU Emacs 28.2))
2022-11-29 07:00:11 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 264 seconds)
2022-11-29 07:00:18 +0100motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 260 seconds)
2022-11-29 07:01:42 +0100ec_(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-11-29 07:01:42 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-11-29 07:02:12 +0100ec_(~ec@gateway/tor-sasl/ec)
2022-11-29 07:03:56 +0100cyphase(~cyphase@user/cyphase) (Quit: cyphase.com)
2022-11-29 07:04:29 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216)
2022-11-29 07:06:17 +0100jakalx(~jakalx@base.jakalx.net) (Disconnected: Replaced by new connection)
2022-11-29 07:06:18 +0100jakalx(~jakalx@base.jakalx.net)
2022-11-29 07:09:17 +0100cyphase(~cyphase@user/cyphase)
2022-11-29 07:18:39 +0100kadobanana(~mud@user/kadoban) (Quit: quit)
2022-11-29 07:21:47 +0100mud(~mud@user/kadoban)
2022-11-29 07:22:58 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 07:23:26 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2022-11-29 07:25:29 +0100zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-11-29 07:25:30 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 07:25:58 +0100Erutuon(~Erutuon@user/erutuon)
2022-11-29 07:26:08 +0100acidjnk_new(~acidjnk@p200300d6e7137a02a1d8d2645910d460.dip0.t-ipconnect.de)
2022-11-29 07:28:22 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 256 seconds)
2022-11-29 07:31:56 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2022-11-29 07:32:46 +0100motherfsck(~motherfsc@user/motherfsck)
2022-11-29 07:36:10 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
2022-11-29 07:36:11 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 264 seconds)
2022-11-29 07:36:29 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-11-29 07:37:52 +0100 <Clinton[m]> Anyone know anything about `generic-sop`?... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/0676a65ec774ff66175fa2bdbf89ca48349a…>)
2022-11-29 07:43:37 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-11-29 07:49:23 +0100jmd_(~jmdaemon@user/jmdaemon) (Ping timeout: 265 seconds)
2022-11-29 07:59:00 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds)
2022-11-29 08:05:30 +0100k8yun(~k8yun@user/k8yun) (Quit: Leaving)
2022-11-29 08:05:38 +0100mud(~mud@user/kadoban) (Ping timeout: 260 seconds)
2022-11-29 08:06:44 +0100k8yun(~k8yun@user/k8yun)
2022-11-29 08:12:09 +0100fserucas(~fserucas@212.157.222.2)
2022-11-29 08:21:54 +0100Guest965Sauvin
2022-11-29 08:22:51 +0100k8yun(~k8yun@user/k8yun) (Quit: Leaving)
2022-11-29 08:24:27 +0100mud(~mud@user/kadoban)
2022-11-29 08:24:34 +0100Andreas(~andreas@cpe-76-90-84-251.socal.res.rr.com)
2022-11-29 08:24:53 +0100Andreas(~andreas@cpe-76-90-84-251.socal.res.rr.com) (Client Quit)
2022-11-29 08:26:38 +0100tcard(~tcard@2400:4051:5801:7500:19ce:ed82:2ab7:90f9) (Ping timeout: 260 seconds)
2022-11-29 08:27:47 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 264 seconds)
2022-11-29 08:28:24 +0100rnat(uid73555@id-73555.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2022-11-29 08:29:39 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 08:34:12 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 248 seconds)
2022-11-29 08:35:53 +0100jakalx(~jakalx@base.jakalx.net) ()
2022-11-29 08:36:51 +0100kenran(~user@user/kenran)
2022-11-29 08:37:44 +0100zant(~zant@62.214.20.26)
2022-11-29 08:40:12 +0100jakalx(~jakalx@base.jakalx.net)
2022-11-29 08:41:36 +0100kenran(~user@user/kenran) (Remote host closed the connection)
2022-11-29 08:42:41 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 08:43:59 +0100zant(~zant@62.214.20.26) (Ping timeout: 264 seconds)
2022-11-29 08:45:50 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 08:50:16 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 252 seconds)
2022-11-29 08:51:42 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-11-29 08:55:58 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 08:56:12 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 256 seconds)
2022-11-29 08:57:36 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-11-29 08:57:40 +0100zant(~zant@62.214.20.26)
2022-11-29 08:57:47 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 08:59:41 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com)
2022-11-29 09:01:51 +0100shriekingnoise(~shrieking@186.137.167.202) (Quit: Quit)
2022-11-29 09:03:52 +0100shriekingnoise(~shrieking@186.137.167.202)
2022-11-29 09:05:28 +0100tcard(~tcard@p4160166-ipxg22701hodogaya.kanagawa.ocn.ne.jp)
2022-11-29 09:05:55 +0100MajorBiscuit(~MajorBisc@c-001-013-019.client.tudelft.eduvpn.nl)
2022-11-29 09:06:30 +0100shriekingnoise(~shrieking@186.137.167.202) (Client Quit)
2022-11-29 09:08:46 +0100tcard_(~tcard@2400:4051:5801:7500:19ce:ed82:2ab7:90f9)
2022-11-29 09:09:56 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:64e2:f035:e6f2:7b30)
2022-11-29 09:11:05 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 260 seconds)
2022-11-29 09:11:33 +0100tcard(~tcard@p4160166-ipxg22701hodogaya.kanagawa.ocn.ne.jp) (Ping timeout: 260 seconds)
2022-11-29 09:18:29 +0100mmhat(~mmh@p200300f1c725450cee086bfffe095315.dip0.t-ipconnect.de)
2022-11-29 09:26:15 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-11-29 09:28:00 +0100zant(~zant@62.214.20.26) (Ping timeout: 260 seconds)
2022-11-29 09:28:34 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-29 09:28:51 +0100 <xilo> Hi, how can one write function composition if function has two arguments? f x y = (fst . divMod) x y ?
2022-11-29 09:29:25 +0100 <xerox> xilo: f x y = (fst . divMod x) y
2022-11-29 09:29:31 +0100Qudit(~user@user/Qudit)
2022-11-29 09:29:43 +0100michalz(~michalz@185.246.204.75)
2022-11-29 09:29:45 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-11-29 09:29:59 +0100 <tomsmeding> xilo: summary: not easily
2022-11-29 09:30:16 +0100 <xilo> ohh, i see
2022-11-29 09:30:17 +0100 <xilo> ty
2022-11-29 09:30:22 +0100 <xerox> I do prefer fst $ divMod x y in that case
2022-11-29 09:30:23 +0100 <tomsmeding> if you really want to, f = (fst .) . divMod
2022-11-29 09:30:51 +0100 <tomsmeding> but nobody thinks that is clearer than just `f x y = fst (x `divMod` y)`
2022-11-29 09:31:37 +0100 <xerox> also consider f = div since you drop the mod (-:
2022-11-29 09:31:46 +0100 <tomsmeding> lol
2022-11-29 09:32:04 +0100 <xilo> this looks very clear to me f x = (fst . divMod x) 10 isn't it?
2022-11-29 09:32:32 +0100 <tomsmeding> hm? Did you mean to leave out the '10'?
2022-11-29 09:32:40 +0100 <xerox> no he fixed the specific y
2022-11-29 09:32:40 +0100 <tomsmeding> (fst . divMod x) 10 = fst (divMod x 10)
2022-11-29 09:32:50 +0100 <tomsmeding> then don't write 'f x =' :p
2022-11-29 09:32:56 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 09:33:06 +0100 <tomsmeding> yes it's clear enough, but fst (x `divMod` y) is clearer
2022-11-29 09:33:15 +0100 <xilo> i change the deffinitio of f lol
2022-11-29 09:33:33 +0100 <xilo> changed the definition*
2022-11-29 09:33:36 +0100 <tomsmeding> pointfree style is sometimes nice, but it doesn't always work out nicely; and if it doesn't work out, it's better to just not
2022-11-29 09:33:39 +0100 <xerox> equivalently f = (`div` 10) or f = flip div 10
2022-11-29 09:34:16 +0100 <xilo> ok, ty guys!
2022-11-29 09:34:59 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 09:35:17 +0100 <mauke> the general approach involves two steps. step 1: use @pl
2022-11-29 09:35:21 +0100 <mauke> @pl f x y = (fst . divMod) x y
2022-11-29 09:35:22 +0100 <lambdabot> f = fst . divMod
2022-11-29 09:35:33 +0100 <mauke> @pl f x y = fst (divMod x y)
2022-11-29 09:35:33 +0100 <lambdabot> f = (fst .) . divMod
2022-11-29 09:35:41 +0100 <mauke> step 2 (usually): recoil in horror
2022-11-29 09:39:19 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 260 seconds)
2022-11-29 09:42:29 +0100zant(~zant@62.214.20.26)
2022-11-29 09:44:24 +0100elevenkb(~elevenkb@105.184.125.168)
2022-11-29 09:45:44 +0100kraftwerk28(~kraftwerk@178.62.210.83) (Ping timeout: 260 seconds)
2022-11-29 09:49:23 +0100zant(~zant@62.214.20.26) (Ping timeout: 264 seconds)
2022-11-29 09:50:00 +0100elevenkb(~elevenkb@105.184.125.168) (Remote host closed the connection)
2022-11-29 09:52:21 +0100kraftwerk28(~kraftwerk@178.62.210.83)
2022-11-29 09:52:33 +0100titibandit(~titibandi@xdsl-78-34-153-165.nc.de)
2022-11-29 09:56:42 +0100cfricke(~cfricke@user/cfricke)
2022-11-29 09:58:27 +0100machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-11-29 10:00:04 +0100cafkafk[m](~cafkafkma@2001:470:69fc:105::1:cea8) (Quit: You have been kicked for being idle)
2022-11-29 10:00:50 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 255 seconds)
2022-11-29 10:03:01 +0100 <Digit> side curiousity query: are there system monitor tools written in haskell? a "hasktop"?
2022-11-29 10:03:01 +0100 <Digit> ... websearch says: statgrab, System.Remote.Monitoring, System.UDev.Monitor, ekg, System.Metrics, xmobar, ... :3 many misleading false positives? acute exact thing missing? is there like a bpytop/htop in haskell?
2022-11-29 10:03:53 +0100 <Digit> (and thanks all for the earlier pointers on random, from my prior question. big help.)
2022-11-29 10:05:03 +0100zant(~zant@62.214.20.26)
2022-11-29 10:11:52 +0100fruitbatpangolin(~fruitbatp@2001:470:69fc:105::2:cca6)
2022-11-29 10:21:38 +0100chomwitt(~chomwitt@2a02:587:7a0d:dd00:1ac0:4dff:fedb:a3f1) (Ping timeout: 265 seconds)
2022-11-29 10:26:55 +0100titibandit(~titibandi@xdsl-78-34-153-165.nc.de) (Remote host closed the connection)
2022-11-29 10:29:35 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 10:37:06 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-11-29 10:37:42 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 10:37:50 +0100fruitbatpangolin(~fruitbatp@2001:470:69fc:105::2:cca6) ()
2022-11-29 10:42:41 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 268 seconds)
2022-11-29 10:47:18 +0100chomwitt(~chomwitt@ppp-94-67-236-76.home.otenet.gr)
2022-11-29 10:47:42 +0100aeroplane(~user@user/aeroplane)
2022-11-29 10:48:44 +0100elevenkb(~elevenkb@105.184.125.168)
2022-11-29 10:52:56 +0100zant(~zant@62.214.20.26) (Ping timeout: 256 seconds)
2022-11-29 10:54:10 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net)
2022-11-29 10:54:24 +0100Kaiepi(~Kaiepi@108.175.84.104) (Ping timeout: 268 seconds)
2022-11-29 10:57:55 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-11-29 10:58:53 +0100instantaphex(~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 255 seconds)
2022-11-29 10:59:40 +0100chele(~chele@user/chele)
2022-11-29 11:01:02 +0100zant(~zant@62.96.232.178)
2022-11-29 11:02:34 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-11-29 11:07:04 +0100xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 265 seconds)
2022-11-29 11:13:02 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:8066:4970:bd6:2327) (Remote host closed the connection)
2022-11-29 11:14:38 +0100kuribas(~user@ptr-17d51eoobx7wa2n6rrf.18120a2.ip6.access.telenet.be)
2022-11-29 11:20:26 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2022-11-29 11:28:30 +0100__monty__(~toonn@user/toonn)
2022-11-29 11:28:43 +0100ec(~ec@gateway/tor-sasl/ec)
2022-11-29 11:29:08 +0100ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
2022-11-29 11:32:54 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 11:48:50 +0100CiaoSen(~Jura@p200300c95716a5002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-11-29 11:50:37 +0100kuribas(~user@ptr-17d51eoobx7wa2n6rrf.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 27.1))
2022-11-29 11:52:17 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-11-29 11:55:58 +0100xff0x(~xff0x@2405:6580:b080:900:7923:62c4:dbe7:6816)
2022-11-29 11:57:01 +0100Kaiepi(~Kaiepi@108.175.84.104)
2022-11-29 12:07:10 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 252 seconds)
2022-11-29 12:08:18 +0100ubert(~Thunderbi@2a02:8109:abc0:6434:c4f7:41e7:304c:6584)
2022-11-29 12:08:51 +0100FurudeRika[m](~chitandae@2001:470:69fc:105::1:6039)
2022-11-29 12:13:32 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81)
2022-11-29 12:16:49 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 260 seconds)
2022-11-29 12:17:27 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 12:18:05 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81) (Ping timeout: 255 seconds)
2022-11-29 12:19:57 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
2022-11-29 12:20:16 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2022-11-29 12:21:51 +0100Guest75(~Guest75@178.141.153.191)
2022-11-29 12:23:50 +0100Guest60(~Guest60@101.98.118.246)
2022-11-29 12:24:32 +0100 <Guest60> Hiya, quick question. How do you deconstruct a NonEmpty list in a pattern match? Is it just `(x:xs)` ?
2022-11-29 12:26:19 +0100 <jackdk> https://hackage.haskell.org/package/base-4.12.0.0/docs/Data-List-NonEmpty.html says that the constructor is `a :| [a]`, that is, it joins an `a` onto a regular list
2022-11-29 12:26:20 +0100 <jean-paul[m]> I typed `NonEmpty` into hoogle and got a link to this page, and then I text-searched for "constructor" and got this section - https://hackage.haskell.org/package/base-4.17.0.0/docs/Data-List-NonEmpty.html#t:NonEmpty
2022-11-29 12:28:25 +0100 <Guest60> ooh so it's `(x :| xs)` , That makes sense
2022-11-29 12:29:04 +0100Xeroine_(~Xeroine@user/xeroine)
2022-11-29 12:29:14 +0100CiaoSen(~Jura@p200300c95716a5002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 265 seconds)
2022-11-29 12:29:14 +0100Xeroine(~Xeroine@user/xeroine) (Ping timeout: 265 seconds)
2022-11-29 12:30:51 +0100 <jackdk> and then the `xs` is a normal list, so for example the pattern `(x1:|x2 :xs)` will match the first two elements
2022-11-29 12:31:04 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-11-29 12:33:40 +0100 <Guest60> gotcha. thanks!
2022-11-29 12:34:40 +0100 <Axman6> evaluating foldr with a function strict in both arguments: https://www.youtube.com/watch?v=qla3RXaRPCg
2022-11-29 12:34:54 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216) (Ping timeout: 260 seconds)
2022-11-29 12:37:17 +0100mestre(~mestre@191.177.185.178)
2022-11-29 12:40:16 +0100elevenkb3(~elevenkb@105.184.125.168)
2022-11-29 12:40:20 +0100elevenkb3(~elevenkb@105.184.125.168) (Client Quit)
2022-11-29 12:44:34 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 256 seconds)
2022-11-29 12:44:34 +0100poscat0x04(~poscat@2408:8206:4823:fd6f:98ab:5c38:136c:5932) (Ping timeout: 256 seconds)
2022-11-29 12:44:42 +0100poscat(~poscat@2408:8206:4823:5a14:59fc:9fd:2bdc:2771)
2022-11-29 12:54:04 +0100 <tomsmeding> Axman6: that is disturbingly accurate
2022-11-29 12:56:25 +0100Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2022-11-29 13:00:11 +0100cafkafk_(~cafkafk@fsf/member/cafkafk)
2022-11-29 13:00:39 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 265 seconds)
2022-11-29 13:02:17 +0100cafkafk(~cafkafk@fsf/member/cafkafk) (Ping timeout: 255 seconds)
2022-11-29 13:03:34 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 13:14:52 +0100Guest60(~Guest60@101.98.118.246) (Quit: Client closed)
2022-11-29 13:15:01 +0100emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2022-11-29 13:17:44 +0100acidjnk_new(~acidjnk@p200300d6e7137a02a1d8d2645910d460.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-11-29 13:36:02 +0100safinaskar(~quassel@178.160.244.66)
2022-11-29 13:36:27 +0100 <safinaskar> is there work on dependent haskell? does somebody actually write code?
2022-11-29 13:37:05 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-11-29 13:44:14 +0100 <tomsmeding> safinaskar: many things need to happen to make DH a thing, and the most effective way to make those happen, currently, is to go one ghc language proposal at a time
2022-11-29 13:44:18 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 13:44:35 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216)
2022-11-29 13:44:35 +0100zant(~zant@62.96.232.178) (Ping timeout: 264 seconds)
2022-11-29 13:44:49 +0100kraftwerk28(~kraftwerk@178.62.210.83) (Quit: ZNC 1.8.2 - https://znc.in)
2022-11-29 13:44:56 +0100 <tomsmeding> and between proposals, people are implementing the previous ones (when they have time and feel like it), and are crystallising what the next one should be precisely
2022-11-29 13:45:08 +0100 <tomsmeding> the former involves writing code, the latter does not, but both are essential
2022-11-29 13:46:03 +0100 <tomsmeding> the latter may even be _more_ essential for the longterm goal of getting DH, because there are many who disagree with that goal, and those people will only accept proposals that have intrinsic merit on their own, apart from paving the way to DH
2022-11-29 13:46:31 +0100kraftwerk28(~kraftwerk@178.62.210.83)
2022-11-29 13:46:48 +0100 <tomsmeding> (this despite the fact that a proposal has been accepted at some point to favour changes that _don't_ break DH over changes that do)
2022-11-29 13:46:54 +0100 <tomsmeding> (if I remember correctly)
2022-11-29 13:47:28 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-29 13:47:28 +0100MajorBiscuit(~MajorBisc@c-001-013-019.client.tudelft.eduvpn.nl) (Ping timeout: 260 seconds)
2022-11-29 13:53:53 +0100cepete02(~cepete02@2600:1702:38a0:7ab0:5801:f9cb:453d:2c67) (Ping timeout: 260 seconds)
2022-11-29 13:54:47 +0100 <safinaskar> tomsmeding: ok, thanks
2022-11-29 13:55:13 +0100 <safinaskar> is it true that even if dependent haskell appears, haskell still will be unsound as a prover?
2022-11-29 13:55:36 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2022-11-29 13:56:24 +0100 <tomsmeding> safinaskar: probably, because of -XTypeInType
2022-11-29 13:56:42 +0100 <tomsmeding> though I'm not sure on the details, there may be an idea floating around on how to make it sound
2022-11-29 13:57:02 +0100 <tomsmeding> but I expect the intent of DH is primarily more expressiveness, not necessarily usefulness as a prover
2022-11-29 13:57:08 +0100 <tomsmeding> agda and idris already exist for that
2022-11-29 14:00:54 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 14:02:41 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-29 14:03:58 +0100zant(~zant@62.96.232.178)
2022-11-29 14:12:41 +0100dsrt^(~dsrt@76.145.185.103)
2022-11-29 14:14:36 +0100zant(~zant@62.96.232.178) (Ping timeout: 265 seconds)
2022-11-29 14:17:11 +0100 <aeroplane> Hey all, I have a small ques, does Haskell have literate types, eg. type of variable 'y' is either "yes" or "no". Thanks.
2022-11-29 14:17:43 +0100 <aeroplane> Tried searching but unable to find anything
2022-11-29 14:18:59 +0100 <merijn> aeroplane: What does "literate type" mean?
2022-11-29 14:19:52 +0100 <darkling> Looks like the kind of thing I'd use an atom for in erlang.
2022-11-29 14:20:15 +0100 <aeroplane> sorry I meant literal type
2022-11-29 14:20:26 +0100 <merijn> aeroplane: Not really
2022-11-29 14:20:39 +0100 <merijn> aeroplane: Normally you'd just define a new type for whatever atoms you want
2022-11-29 14:21:16 +0100 <merijn> "data YesOrNo = Yes | No" something like that :p
2022-11-29 14:23:11 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Ping timeout: 255 seconds)
2022-11-29 14:23:19 +0100acidjnk_new(~acidjnk@p54ad5adb.dip0.t-ipconnect.de)
2022-11-29 14:24:08 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107)
2022-11-29 14:24:08 +0100 <aeroplane> merijn: thanks, I didNt know that. It was that simple and I feel like an idiot.
2022-11-29 14:24:11 +0100Xeroine_Xeroine
2022-11-29 14:25:06 +0100cepete02(~cepete02@189.206-40-96.netnet.net)
2022-11-29 14:25:10 +0100 <merijn> Main reason I don't think anyone bothered with a notion of "atom" is that it's so trivial to define custom datatypes/enumerations
2022-11-29 14:27:11 +0100 <cepete02> I have a function that returns `Maybe ProcessId`. Using fromMaybe what can I do with the `Nothing` side, ie...  (fromMaybe ? ProcessId)?
2022-11-29 14:27:42 +0100xff0x(~xff0x@2405:6580:b080:900:7923:62c4:dbe7:6816) (Ping timeout: 256 seconds)
2022-11-29 14:28:05 +0100kraftwerk28(~kraftwerk@178.62.210.83) (Quit: ZNC 1.8.2 - https://znc.in)
2022-11-29 14:29:32 +0100kraftwerk28(~kraftwerk@178.62.210.83)
2022-11-29 14:30:18 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-11-29 14:30:30 +0100 <safinaskar> tomsmeding: idris 2 seems to have type-in-type, too. very recently they made first step to removing this ( https://github.com/idris-lang/Idris2/pull/2076 )
2022-11-29 14:32:51 +0100 <aeroplane> merijn: Is it possible for Haskell deduce literal type? Lemme explain. Say, if we have a list [("a",1),("b",4),("a",2),("b",3)],
2022-11-29 14:32:51 +0100 <aeroplane> then, as you can see, the head of all the tuples in the list is always, either "a" or "b". Haskell will display the head as String type. But can it deduce it as 'a | b'?
2022-11-29 14:33:19 +0100 <aeroplane> Thanks, please pardon my ignorance.
2022-11-29 14:34:40 +0100xff0x(~xff0x@2405:6580:b080:900:7923:62c4:dbe7:6816)
2022-11-29 14:37:26 +0100cytokine_storm(~cytokine_@user/cytokine-storm/x-1083107) (Quit: Quit)
2022-11-29 14:42:49 +0100zant(~zant@62.96.232.178)
2022-11-29 14:42:53 +0100cepete02(~cepete02@189.206-40-96.netnet.net) (Ping timeout: 260 seconds)
2022-11-29 14:43:32 +0100 <jean-paul[m]> cepete02: Do you have a value of `ProcessId` that represents "no process"? If not then I'm not sure it makes sense to try to do what you describe.
2022-11-29 14:47:32 +0100zant(~zant@62.96.232.178) (Ping timeout: 256 seconds)
2022-11-29 14:48:40 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 256 seconds)
2022-11-29 14:56:18 +0100Guest75(~Guest75@178.141.153.191) (Ping timeout: 260 seconds)
2022-11-29 14:56:38 +0100 <lortabac> aeroplane: no, this is not possible
2022-11-29 14:57:53 +0100 <lortabac> aeroplane: what you can do is defining an enum type with two constructors: data AB = A | B
2022-11-29 14:58:17 +0100 <lortabac> and then the list would be [(A, 1), (B, 4)...]
2022-11-29 15:05:45 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 15:05:45 +0100ystael(~ystael@user/ystael) (Read error: Connection reset by peer)
2022-11-29 15:06:29 +0100 <aeroplane> lortabac: thanks for clarifying
2022-11-29 15:08:54 +0100zant(~zant@62.96.232.178)
2022-11-29 15:09:42 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216) (Ping timeout: 268 seconds)
2022-11-29 15:15:37 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 15:16:00 +0100elevenkb(~elevenkb@105.184.125.168) (Quit: Client closed)
2022-11-29 15:16:18 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81)
2022-11-29 15:19:57 +0100MajorBiscuit(~MajorBisc@c-001-013-019.client.tudelft.eduvpn.nl)
2022-11-29 15:20:55 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81) (Ping timeout: 260 seconds)
2022-11-29 15:22:37 +0100ystael(~ystael@user/ystael)
2022-11-29 15:23:14 +0100elevenkb(~elevenkb@105.184.125.168)
2022-11-29 15:25:18 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 255 seconds)
2022-11-29 15:26:59 +0100dsrt^(~dsrt@76.145.185.103) (Remote host closed the connection)
2022-11-29 15:35:04 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216)
2022-11-29 15:40:01 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 15:41:09 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-11-29 15:42:44 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216) (Ping timeout: 260 seconds)
2022-11-29 15:43:44 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-11-29 15:44:50 +0100razetime(~quassel@49.207.211.219) (Quit: No Ping reply in 180 seconds.)
2022-11-29 15:44:57 +0100shriekingnoise(~shrieking@186.137.167.202)
2022-11-29 15:45:04 +0100razetime(~quassel@49.207.211.219)
2022-11-29 15:45:39 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds)
2022-11-29 15:47:15 +0100acarrico(~acarrico@dhcp-68-142-48-19.greenmountainaccess.net)
2022-11-29 15:51:01 +0100mestre(~mestre@191.177.185.178) (Ping timeout: 268 seconds)
2022-11-29 15:52:48 +0100mestre(~mestre@191.177.185.178)
2022-11-29 15:53:07 +0100Sgeo(~Sgeo@user/sgeo)
2022-11-29 15:58:50 +0100acidjnk_new(~acidjnk@p54ad5adb.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-11-29 16:00:48 +0100mestre(~mestre@191.177.185.178) (Quit: Lost terminal)
2022-11-29 16:02:27 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 16:05:50 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-11-29 16:06:45 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-29 16:07:00 +0100elevenkb(~elevenkb@105.184.125.168) (Quit: Client closed)
2022-11-29 16:07:03 +0100Kaiepi(~Kaiepi@108.175.84.104) (Ping timeout: 268 seconds)
2022-11-29 16:07:13 +0100elevenkb(~elevenkb@105.184.125.168)
2022-11-29 16:07:45 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 16:15:40 +0100irrgit__(~irrgit@86.106.90.226) (Read error: Connection reset by peer)
2022-11-29 16:20:33 +0100cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.7.1)
2022-11-29 16:21:11 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 264 seconds)
2022-11-29 16:21:11 +0100dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 264 seconds)
2022-11-29 16:26:33 +0100irrgit_(~irrgit@146.70.27.242)
2022-11-29 16:26:42 +0100dibblego(~dibblego@122-199-1-30.ip4.superloop.com)
2022-11-29 16:26:42 +0100dibblego(~dibblego@122-199-1-30.ip4.superloop.com) (Changing host)
2022-11-29 16:26:42 +0100dibblego(~dibblego@haskell/developer/dibblego)
2022-11-29 16:29:15 +0100Tuplanolla(~Tuplanoll@91-159-68-152.elisa-laajakaista.fi)
2022-11-29 16:29:35 +0100neutropolis(~neutropol@85.251.151.86.dyn.user.ono.com)
2022-11-29 16:31:17 +0100neutropolis(~neutropol@85.251.151.86.dyn.user.ono.com) (Quit: WeeChat 3.5)
2022-11-29 16:31:49 +0100neutropolis(~neutropol@85.251.151.86.dyn.user.ono.com)
2022-11-29 16:33:53 +0100neutropolis(~neutropol@85.251.151.86.dyn.user.ono.com) (Client Quit)
2022-11-29 16:34:08 +0100neutropolis(~neutropol@85.251.151.86.dyn.user.ono.com)
2022-11-29 16:34:08 +0100neutropolis(~neutropol@85.251.151.86.dyn.user.ono.com) (Client Quit)
2022-11-29 16:34:48 +0100chomwitt(~chomwitt@ppp-94-67-236-76.home.otenet.gr) (Ping timeout: 268 seconds)
2022-11-29 16:40:06 +0100causal(~user@50.35.83.177) (Quit: WeeChat 3.7.1)
2022-11-29 16:42:14 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-11-29 16:42:40 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 16:42:49 +0100euandreh(~Thunderbi@179.214.113.107) (Ping timeout: 260 seconds)
2022-11-29 16:43:55 +0100pixie(~pixie@cm-170-253-186-17.maxxsouthbb.net)
2022-11-29 16:44:17 +0100LemanR(~LemanR@pool-74-109-28-147.phlapa.fios.verizon.net)
2022-11-29 16:44:36 +0100LemanR(~LemanR@pool-74-109-28-147.phlapa.fios.verizon.net) ()
2022-11-29 16:46:26 +0100sm_(~sm@c-73-61-155-181.hsd1.ma.comcast.net)
2022-11-29 16:46:26 +0100sm_(~sm@c-73-61-155-181.hsd1.ma.comcast.net) (Changing host)
2022-11-29 16:46:26 +0100sm_(~sm@plaintextaccounting/sm)
2022-11-29 16:48:43 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 16:51:11 +0100sm_(~sm@plaintextaccounting/sm) (Ping timeout: 264 seconds)
2022-11-29 16:53:25 +0100 <zzz> i installed hls with ghcup and it gives me "GHC ABIs don't match"
2022-11-29 16:53:37 +0100 <zzz> how do we solve this?
2022-11-29 16:54:00 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 16:54:00 +0100 <tomsmeding> zzz: did you install ghc using ghcup as well?
2022-11-29 16:54:07 +0100 <zzz> yes
2022-11-29 16:54:15 +0100 <tomsmeding> are you using the ghc from ghcup?
2022-11-29 16:54:33 +0100 <zzz> yes
2022-11-29 16:54:37 +0100 <tomsmeding> i.e. check that you don't have a ghc from a system package manager lying around, for example, which may come earlier in your path
2022-11-29 16:54:58 +0100 <tomsmeding> in that case no idea
2022-11-29 16:55:13 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-11-29 16:55:16 +0100 <tomsmeding> #haskell-language-server exists
2022-11-29 16:55:48 +0100 <zzz> been there
2022-11-29 16:55:56 +0100 <zzz> thanks anyway
2022-11-29 16:56:13 +0100 <tomsmeding> zzz: is that the full error, by the way? No further information?
2022-11-29 16:56:36 +0100 <zzz> that's what i could gather for the weirdly formatted logs
2022-11-29 16:56:42 +0100 <zzz> let me check
2022-11-29 16:56:51 +0100 <tomsmeding> post full logs? Perhaps other people spot other things
2022-11-29 16:59:09 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 260 seconds)
2022-11-29 17:00:28 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 17:02:03 +0100razetime(~quassel@49.207.211.219) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-11-29 17:02:48 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2022-11-29 17:09:27 +0100acidjnk_new(~acidjnk@p200300d6e7137a95e97f13ccb1fca6e5.dip0.t-ipconnect.de)
2022-11-29 17:18:00 +0100Guest753(~Guest75@178.141.153.191)
2022-11-29 17:18:40 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2022-11-29 17:19:23 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 264 seconds)
2022-11-29 17:20:00 +0100titibandit(~titibandi@xdsl-78-34-153-165.nc.de)
2022-11-29 17:20:07 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 17:20:28 +0100money_(~money@pool-100-11-18-203.phlapa.fios.verizon.net)
2022-11-29 17:24:54 +0100 <zzz> https://paste.jrvieira.com/1669738992743
2022-11-29 17:25:31 +0100jinsun__(~jinsun@user/jinsun)
2022-11-29 17:25:31 +0100jinsunGuest7106
2022-11-29 17:25:31 +0100jinsun__jinsun
2022-11-29 17:26:39 +0100 <mauke> ah, yes. light gray text on white background. very readable
2022-11-29 17:26:57 +0100Kaiepi(~Kaiepi@108.175.84.104)
2022-11-29 17:26:58 +0100Guest7106(~jinsun@user/jinsun) (Ping timeout: 265 seconds)
2022-11-29 17:28:24 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 17:32:13 +0100tabemann_(~tabemann@2600:1700:7990:24e0:a94c:868e:1baa:b99f) (Remote host closed the connection)
2022-11-29 17:32:26 +0100tabemann_(~tabemann@2600:1700:7990:24e0:ca39:3d1d:9852:a6c9)
2022-11-29 17:33:19 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81)
2022-11-29 17:33:47 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 264 seconds)
2022-11-29 17:38:06 +0100chomwitt(~chomwitt@ppp-94-67-236-76.home.otenet.gr)
2022-11-29 17:40:30 +0100motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 265 seconds)
2022-11-29 17:45:28 +0100zant(~zant@62.96.232.178) (Ping timeout: 260 seconds)
2022-11-29 17:45:37 +0100 <chreekat> ? a bit small but looks ok to me
2022-11-29 17:46:48 +0100 <geekosaur> scroll down
2022-11-29 17:46:56 +0100 <geekosaur> the background goes white
2022-11-29 17:49:25 +0100accord(uid568320@id-568320.hampstead.irccloud.com)
2022-11-29 17:49:37 +0100 <geekosaur> meanwhile it looks to me like at first it has trouble loading libtinfo.so, then switches to the reported error — which makes me think a different ghc is in play at that point
2022-11-29 17:51:27 +0100johnw(~johnw@2600:1700:cf00:db0:3c55:6f83:c455:f7f2)
2022-11-29 17:53:37 +0100zant(~zant@62.96.232.178)
2022-11-29 17:55:02 +0100motherfsck(~motherfsc@user/motherfsck)
2022-11-29 17:55:12 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Remote host closed the connection)
2022-11-29 17:56:25 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-11-29 18:01:48 +0100elevenkb(~elevenkb@105.184.125.168) (Ping timeout: 260 seconds)
2022-11-29 18:04:28 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-11-29 18:05:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 18:09:16 +0100lyle(~lyle@104.246.145.85)
2022-11-29 18:15:00 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81) (Remote host closed the connection)
2022-11-29 18:16:16 +0100fserucas(~fserucas@212.157.222.2) (Ping timeout: 265 seconds)
2022-11-29 18:20:25 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2022-11-29 18:21:24 +0100 <zzz> geekosaur: thank you for noticing. css fails to render quickly on very long pages when shaddowing properties, i know how to fix it
2022-11-29 18:23:20 +0100 <zzz> geekosaur: probably no ghc at all at that point. this is a fresh vm
2022-11-29 18:27:08 +0100money_(~money@pool-100-11-18-203.phlapa.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-11-29 18:27:55 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216)
2022-11-29 18:28:46 +0100jmdaemon(~jmdaemon@user/jmdaemon)
2022-11-29 18:30:47 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2022-11-29 18:31:44 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81)
2022-11-29 18:35:15 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (Quit: fBNC - https://bnc4free.com)
2022-11-29 18:35:15 +0100xacktm(~xacktm@user/xacktm) (Quit: fBNC - https://bnc4free.com)
2022-11-29 18:36:06 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2022-11-29 18:36:45 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:64e2:f035:e6f2:7b30) (Quit: WeeChat 2.8)
2022-11-29 18:38:59 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-11-29 18:39:39 +0100elevenkb(~elevenkb@105.184.125.168)
2022-11-29 18:42:02 +0100stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 255 seconds)
2022-11-29 18:44:06 +0100econo(uid147250@user/econo)
2022-11-29 18:48:36 +0100titibandit(~titibandi@xdsl-78-34-153-165.nc.de) (Quit: Leaving.)
2022-11-29 18:50:37 +0100stiell(~stiell@gateway/tor-sasl/stiell)
2022-11-29 18:55:36 +0100cafkafk_(~cafkafk@fsf/member/cafkafk) (Remote host closed the connection)
2022-11-29 18:56:40 +0100cafkafk_(~cafkafk@fsf/member/cafkafk)
2022-11-29 19:00:12 +0100 <tomsmeding> zzz: this reads a log like you posted in stdin and prints the actual log on stdout https://paste.tomsmeding.com/2Uwi58r7
2022-11-29 19:01:43 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81) (Remote host closed the connection)
2022-11-29 19:02:11 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-11-29 19:02:28 +0100 <zzz> thank you
2022-11-29 19:02:39 +0100 <zzz> why is it this way though?
2022-11-29 19:03:19 +0100 <sus> trying to calculate euclidian distance for the mooc.fi exercise, am I missing something, the example inputs give me 0 and NaN
2022-11-29 19:03:21 +0100 <sus> `distance x1 y1 x2 y2 = sqrt ( (x2-x1)^2 - (y2-y1)^2 )`
2022-11-29 19:03:55 +0100 <mauke> what are the example inputs?
2022-11-29 19:04:43 +0100 <sus> 0 0 1 1 should produce 1.4142135 and 1 1 4 5 should produce 5.0
2022-11-29 19:04:57 +0100 <mauke> > let distance x1 y1 x2 y2 = sqrt ( (x2-x1)^2 - (y2-y1)^2 ) in distance 0 0 1 1
2022-11-29 19:04:59 +0100 <lambdabot> 0.0
2022-11-29 19:05:33 +0100 <c_wraith> that's not the distance formula
2022-11-29 19:05:43 +0100 <c_wraith> It's close, but it's got a mistake
2022-11-29 19:06:07 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 19:06:25 +0100 <mauke> oh :-)
2022-11-29 19:06:51 +0100 <mauke> yeah, clearly 1^2 - 1^2 is 0
2022-11-29 19:06:58 +0100 <zzz> > let distance x1 y1 x2 y2 = sqrt ( (x2-x1)^2 + (y2-y1)^2 ) in distance 0 0 1 1
2022-11-29 19:06:59 +0100 <lambdabot> 1.4142135623730951
2022-11-29 19:07:41 +0100 <zzz> :p
2022-11-29 19:08:13 +0100 <sus> oh my god
2022-11-29 19:08:29 +0100 <sus> i cant read
2022-11-29 19:08:45 +0100 <c_wraith> Been there. Probably had that exact bug several times...
2022-11-29 19:08:52 +0100 <mauke> "reading is cringe"
2022-11-29 19:10:58 +0100 <sus> > Couldn't match expected type ‘Double’ with actual type ‘Int’
2022-11-29 19:10:58 +0100 <sus> doesnt sqrt always return double though?
2022-11-29 19:10:59 +0100 <lambdabot> <hint>:1:25: error: parse error on input ‘type’
2022-11-29 19:11:39 +0100 <mauke> not necessarily
2022-11-29 19:11:42 +0100 <mauke> :t sqrt
2022-11-29 19:11:43 +0100 <lambdabot> Floating a => a -> a
2022-11-29 19:12:06 +0100 <mauke> the type is generic, and if ghc deduces that the argument has type Int, it will assign Int to the result as well
2022-11-29 19:12:13 +0100 <mauke> (and then produce a type error elsewhere)
2022-11-29 19:12:55 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-11-29 19:14:11 +0100 <mauke> generally speaking, you want to add explicit type signatures to all of your top-level functions
2022-11-29 19:14:36 +0100 <mauke> and if you still get inscrutable type errors, add types to local definitions as well, until you get an error that makes sense
2022-11-29 19:15:45 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 19:16:18 +0100jakalx(~jakalx@base.jakalx.net)
2022-11-29 19:20:40 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 256 seconds)
2022-11-29 19:25:59 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 19:29:15 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 265 seconds)
2022-11-29 19:31:09 +0100 <EvanR> sus, that's the correct formula for special relativity
2022-11-29 19:32:31 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-11-29 19:40:17 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-11-29 19:42:47 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 19:42:53 +0100LemanR(~LemanR@pool-74-109-28-147.phlapa.fios.verizon.net)
2022-11-29 19:45:48 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-11-29 19:46:08 +0100xacktm(~xacktm@user/xacktm)
2022-11-29 19:46:32 +0100 <LemanR> so I got my next exercise done but I wanted to know if there is a way to define a function inside of a pattern matching block.
2022-11-29 19:46:57 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-11-29 19:48:47 +0100 <LemanR> https://bpa.st/7TZQ
2022-11-29 19:48:52 +0100 <mauke> you can always do let/in in an expression
2022-11-29 19:49:10 +0100 <LemanR> k will read real quick to see how haskell does this
2022-11-29 19:49:55 +0100 <mauke> uh
2022-11-29 19:50:06 +0100 <mauke> why is it called convertYearToSeconds if it takes seconds as input?
2022-11-29 19:50:52 +0100 <LemanR> Because I don't plan things as I'm doing them lol so it had made sense before on a failed attempt lol
2022-11-29 19:51:16 +0100 <mauke> you could do something like: ageOn planet seconds = let years = seconds / 31557600 in case planet of ...
2022-11-29 19:51:40 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Read error: Connection reset by peer)
2022-11-29 19:51:44 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 19:51:55 +0100 <monochrom> This is why "foo" is a more meaningful name than "meaningful" names. >:)
2022-11-29 19:52:19 +0100 <LemanR> lol in this case that is literally true as the current name is very misleading lol
2022-11-29 19:52:19 +0100 <monochrom> And "x" is even more meaningful >:)
2022-11-29 19:52:58 +0100jrm(~jrm@user/jrm) (Ping timeout: 256 seconds)
2022-11-29 19:53:30 +0100 <monochrom> I do start with names like "foo" and let it survive for 10 minutes so I have time to settle on what it should really be and what's a good name.
2022-11-29 19:54:02 +0100 <LemanR> That's actually a really good tip actually, I should get into that habit
2022-11-29 19:54:19 +0100 <LemanR> -.- I don's plan when I type half the time to
2022-11-29 19:54:44 +0100 <monochrom> Even if you have an initial plan, it's always changed.
2022-11-29 19:55:09 +0100 <monochrom> This is why an older generation recommended "make a prototype, then throw it away".
2022-11-29 19:55:18 +0100 <geekosaur> "no battle plan survives contact with the enemy"
2022-11-29 19:55:23 +0100MajorBiscuit(~MajorBisc@c-001-013-019.client.tudelft.eduvpn.nl) (Ping timeout: 264 seconds)
2022-11-29 19:56:34 +0100 <monochrom> To be fair, if you have already written like 1000 webapss, and this is the 1001st time, you don't need that, you already know perfectly what to do.
2022-11-29 19:56:34 +0100 <mauke> "Everyone has a plan until they get punched in the face." --Mike Tyson
2022-11-29 19:56:54 +0100 <monochrom> But otherwise, you are always exploring design options, i.e., learning.
2022-11-29 19:57:46 +0100haris(~haris@69.169.3.81)
2022-11-29 19:58:44 +0100zant(~zant@62.96.232.178) (Ping timeout: 265 seconds)
2022-11-29 19:58:45 +0100 <EvanR> I name the function what it's supposed to be, and if half way through writing the function, or even after it's written, it's not doing that, just delete everything xD
2022-11-29 19:58:59 +0100 <EvanR> fatal error
2022-11-29 19:59:34 +0100 <EvanR> works great when you are writing haskell 1 liner functions
2022-11-29 20:00:15 +0100 <geekosaur> so you liked those 3 ghc errors that just deleted your source if compilation failed? 🙂
2022-11-29 20:00:32 +0100 <LemanR> omg I found my favorite way to do this https://bpa.st/3EUQ
2022-11-29 20:01:27 +0100 <mauke> not bad
2022-11-29 20:02:21 +0100 <mauke> you can still get rid of some redundancy by doing: ageOn planet seconds = seconds / 31557600 / case planet of Mercury -> 0.2408467; ...
2022-11-29 20:02:25 +0100 <EvanR> honestly I'd give that ghc feature a try
2022-11-29 20:02:30 +0100Guest2995(~Guest29@c-73-149-163-248.hsd1.ma.comcast.net)
2022-11-29 20:04:24 +0100 <EvanR> am I spoilering by saying ageOn planet seconds = seconds / yearOnPlanet planet
2022-11-29 20:04:50 +0100cafkafk_(~cafkafk@fsf/member/cafkafk) (Ping timeout: 255 seconds)
2022-11-29 20:04:55 +0100 <LemanR> I already 'solved' it noob style but I always take a while to try to refine it
2022-11-29 20:05:01 +0100 <LemanR> so no not really
2022-11-29 20:05:15 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 20:05:15 +0100 <EvanR> optimized for sense making
2022-11-29 20:05:50 +0100Guest2995(~Guest29@c-73-149-163-248.hsd1.ma.comcast.net) (Client Quit)
2022-11-29 20:06:20 +0100 <EvanR> challenge mode: enhance the program to allow exoplanets
2022-11-29 20:07:30 +0100cafkafk_(~cafkafk@fsf/member/cafkafk)
2022-11-29 20:08:07 +0100 <LemanR> mauke the only reason I like my version better is because I like the idea of having a named variable. That way in say a month I glance on such code I don't have to think "why did I do this math", the function tells me why the math is there.
2022-11-29 20:08:17 +0100samt___(uid578768@id-578768.ilkley.irccloud.com)
2022-11-29 20:09:13 +0100 <LemanR> I am trying to see if I can replace .... seconds = where yearConvert or some such as I like the idea of getting rid of the redundant "yearConverts" in the block
2022-11-29 20:09:14 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-11-29 20:09:47 +0100 <mauke> ageOn planet seconds = years / case planet of Mercury -> 0.2408467; ... where years = seconds / ...
2022-11-29 20:10:56 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-11-29 20:13:27 +0100elevenkb(~elevenkb@105.184.125.168) (Quit: Client closed)
2022-11-29 20:13:34 +0100 <LemanR> https://bpa.st/KU6A niiiiiice
2022-11-29 20:15:43 +0100jrm(~jrm@user/jrm)
2022-11-29 20:15:44 +0100 <EvanR> yearConvert, nice programmer grammar there xD
2022-11-29 20:15:57 +0100 <mauke> proGrammar
2022-11-29 20:16:08 +0100 <EvanR> where you take grammatical phrase and reverse it for the purposes of being code
2022-11-29 20:16:35 +0100 <LemanR> XD for some reason it made sense to my brain to do it like that
2022-11-29 20:17:02 +0100 <mauke> pickPocket
2022-11-29 20:17:18 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 20:17:24 +0100 <LemanR> wrong, pocketPick ....obviously lol
2022-11-29 20:17:39 +0100 <LemanR> whatAction apparently lol
2022-11-29 20:17:52 +0100mastarija(~mastarija@2a05:4f46:e03:6000:f1ac:bce8:2f8c:70c3)
2022-11-29 20:17:52 +0100 <EvanR> pocket has been picked, mine has
2022-11-29 20:17:53 +0100ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
2022-11-29 20:17:56 +0100 <mauke> well, a pickpocket is really a pocketpicker
2022-11-29 20:17:58 +0100zant(~zant@62.214.20.26)
2022-11-29 20:18:01 +0100 <EvanR> wait, bad yoda
2022-11-29 20:18:27 +0100 <LemanR> pocket of mine, picked it has ?
2022-11-29 20:18:46 +0100 <mauke> inb4 seagulls
2022-11-29 20:18:55 +0100 <LemanR> maybe if yoda was drinking.....
2022-11-29 20:20:03 +0100ec(~ec@gateway/tor-sasl/ec)
2022-11-29 20:21:54 +0100LemanR(~LemanR@pool-74-109-28-147.phlapa.fios.verizon.net) (Quit: Client closed)
2022-11-29 20:21:56 +0100azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds)
2022-11-29 20:22:10 +0100LemanR(~LemanR@pool-74-109-28-147.phlapa.fios.verizon.net)
2022-11-29 20:22:23 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Ping timeout: 255 seconds)
2022-11-29 20:22:23 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 255 seconds)
2022-11-29 20:22:29 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-11-29 20:22:36 +0100 <LemanR> you know doing the reverse can make sense. Think if you had a lot of functions, where call this like a collection...a library!, anyway if I forget what I called that thing I do with year I can simply ctrl f (find) type what I'm manipulating (year) then I would find everything i can do with year. So in that sense whatAction might be better
2022-11-29 20:22:45 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-11-29 20:23:11 +0100 <LemanR> unless you'd rather find by action and see everything you can convert but the reverse might be more immediately useful
2022-11-29 20:23:58 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-11-29 20:24:33 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-11-29 20:25:07 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-11-29 20:26:12 +0100zant(~zant@62.214.20.26) (Ping timeout: 248 seconds)
2022-11-29 20:26:56 +0100Wstfgl0(~me-me@2602:ff16:3:0:1:dc:beef:d00d)
2022-11-29 20:28:55 +0100moneypolo
2022-11-29 20:29:53 +0100gmg(~user@user/gehmehgeh)
2022-11-29 20:29:53 +0100jakalx(~jakalx@base.jakalx.net)
2022-11-29 20:30:52 +0100 <monochrom> The right thing to do is that the name should contain both "year" and "second".
2022-11-29 20:31:29 +0100 <monochrom> This is why "pure :: a -> F a" should be called "pureToImpure" or "impureFromPure".
2022-11-29 20:32:06 +0100ru0mad(~ru0mad@82-64-17-144.subs.proxad.net)
2022-11-29 20:32:59 +0100noctux(~noctux@user/noctux) (Read error: Connection reset by peer)
2022-11-29 20:33:07 +0100noctux(~noctux@user/noctux)
2022-11-29 20:34:07 +0100 <EvanR> LemanR, luckily we have modules to factor out 100 functions that all begin with year that you can do with a year
2022-11-29 20:34:09 +0100[_________](~oos95GWG@user/oos95GWG) (Ping timeout: 252 seconds)
2022-11-29 20:34:23 +0100 <mauke> purée 42
2022-11-29 20:34:41 +0100 <mauke> monochrom: but it's not a function
2022-11-29 20:35:27 +0100 <LemanR> and by searching I can learn everything I can do with year :p
2022-11-29 20:36:08 +0100[_________](~oos95GWG@user/oos95GWG)
2022-11-29 20:36:29 +0100 <EvanR> though modules for that purpose have the same problem as OOP, where operations involving 2 types can only go in 1 module
2022-11-29 20:37:08 +0100 <EvanR> but at least it's not like ruby where anything ever that takes a string as argument is monkey patched into the String class
2022-11-29 20:37:14 +0100 <monochrom> What is a function?
2022-11-29 20:37:37 +0100 <mauke> a miserable pile of secrets
2022-11-29 20:38:32 +0100 <monochrom> What you should search for is "Year" in type sigs. That's really what you can do with a year.
2022-11-29 20:39:02 +0100 <monochrom> Although, there is a "small" complication. If Year is an instance of Num, now you have to search for "Num" too...
2022-11-29 20:39:19 +0100 <EvanR> Year can't be Num, it's missing zero
2022-11-29 20:39:29 +0100 <LemanR> whatTypeAction?!?!
2022-11-29 20:39:44 +0100 <LemanR> yearFloatConvert
2022-11-29 20:40:07 +0100 <EvanR> we have conversion type classes which consolidate the conversion verb names
2022-11-29 20:40:23 +0100 <EvanR> :t fromIntegral
2022-11-29 20:40:24 +0100 <lambdabot> (Integral a, Num b) => a -> b
2022-11-29 20:40:27 +0100 <EvanR> :t realToFrac
2022-11-29 20:40:28 +0100 <lambdabot> (Real a, Fractional b) => a -> b
2022-11-29 20:40:33 +0100 <EvanR> :t floor
2022-11-29 20:40:34 +0100 <lambdabot> (RealFrac a, Integral b) => a -> b
2022-11-29 20:40:49 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81)
2022-11-29 20:41:12 +0100 <LemanR> guys, doing the pangram exercise, I actually have to plan this one out first o.0 no hints as I need to solve first.
2022-11-29 20:41:18 +0100 <EvanR> so yearFloatConvert could be hidden somewhere but accessed via one of those 3
2022-11-29 20:41:25 +0100 <LemanR> *guys/gals/all
2022-11-29 20:42:11 +0100gmg(~user@user/gehmehgeh) (Ping timeout: 255 seconds)
2022-11-29 20:42:52 +0100 <EvanR> monochrom, a random internet post claims to reveal what is a function https://math.stackexchange.com/questions/926110/etymology-of-the-word-function-in-mathematics
2022-11-29 20:43:38 +0100gmg(~user@user/gehmehgeh)
2022-11-29 20:44:53 +0100ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
2022-11-29 20:45:03 +0100L29Ah(~L29Ah@wikipedia/L29Ah) ()
2022-11-29 20:45:06 +0100eggplantade(~Eggplanta@2600:1700:38c5:d800:d078:9921:dcf:5e81) (Ping timeout: 256 seconds)
2022-11-29 20:46:54 +0100ec(~ec@gateway/tor-sasl/ec)
2022-11-29 20:49:26 +0100roconnor(~quassel@coq/roconnor) ()
2022-11-29 20:50:07 +0100finsternis(~X@23.226.237.192) (Read error: Connection reset by peer)
2022-11-29 20:50:52 +0100 <LemanR> omg and I actually feel as though I need ghci running to test parts of my plan as I go. I'm starting to need good habits now o.0
2022-11-29 20:51:06 +0100 <LemanR> guess today is set up emacs w/ haskell day
2022-11-29 20:51:11 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 264 seconds)
2022-11-29 20:53:53 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 20:54:04 +0100 <EvanR> I try to keep ghci open on the side, reloading the file each time something changes so I can test it
2022-11-29 20:54:39 +0100 <EvanR> unfortunately it seems to be impossible to do when using a cabal run script
2022-11-29 20:55:04 +0100 <LemanR> my favorite IDE still is Rstudio or at least how they were doing it ~2 years ago (idk if they changed the design).
2022-11-29 20:56:35 +0100 <EvanR> keeping as much as possible out of IO also helps
2022-11-29 20:58:33 +0100 <LemanR> I think the language is 'design' with the thought that a programmer should keep as much out of IO as possible. Otherwise the more in IO the more potential for side-effects I think right?
2022-11-29 20:58:35 +0100mc47(~mc47@xmonad/TheMC47)
2022-11-29 20:58:41 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 21:00:13 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-11-29 21:01:00 +0100 <mauke> you can basically write C in Haskell by putting everything in IO
2022-11-29 21:01:55 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2022-11-29 21:03:58 +0100 <mauke> :t Foreign.Marshall.Alloc.mallocBytes
2022-11-29 21:03:59 +0100 <lambdabot> error:
2022-11-29 21:03:59 +0100 <lambdabot> Not in scope: ‘Foreign.Marshall.Alloc.mallocBytes’
2022-11-29 21:04:00 +0100 <lambdabot> No module named ‘Foreign.Marshall.Alloc’ is imported.
2022-11-29 21:04:02 +0100 <mauke> aw
2022-11-29 21:04:17 +0100 <mauke> if you put enough effort in, you can even get buffer overflows and memory leaks
2022-11-29 21:06:23 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 21:07:47 +0100simendsjo(~user@84.211.91.241)
2022-11-29 21:08:03 +0100 <EvanR> LemanR, well among other things, it's hard to take an IO action and test it in ghci
2022-11-29 21:08:22 +0100 <EvanR> rather, if it requires resources that came from IO
2022-11-29 21:08:42 +0100mud(~mud@user/kadoban) (Quit: quit)
2022-11-29 21:08:54 +0100 <EvanR> or worse, requires an invisible context involving IO
2022-11-29 21:08:58 +0100mud(~mud@user/kadoban)
2022-11-29 21:10:01 +0100 <LemanR> I'm going to pretend I didn't read any of that and stay a little longer in my haskell noob-bubble lol
2022-11-29 21:12:22 +0100Guest75(~Guest75@178.141.153.191)
2022-11-29 21:12:33 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds)
2022-11-29 21:12:40 +0100{-d0t-}(~q_q@user/-d0t-/x-7915216) (Ping timeout: 260 seconds)
2022-11-29 21:13:16 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 21:13:16 +0100mud(~mud@user/kadoban) (Read error: Connection reset by peer)
2022-11-29 21:13:26 +0100mud(~mud@user/kadoban)
2022-11-29 21:14:20 +0100titibandit(~titibandi@xdsl-78-34-153-165.nc.de)
2022-11-29 21:14:30 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 21:15:23 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 21:16:03 +0100Guest753(~Guest75@178.141.153.191) (Ping timeout: 260 seconds)
2022-11-29 21:17:53 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf) (Remote host closed the connection)
2022-11-29 21:18:12 +0100use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2022-11-29 21:20:25 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2022-11-29 21:21:30 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-11-29 21:23:38 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-11-29 21:24:52 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
2022-11-29 21:27:00 +0100mud(~mud@user/kadoban) (Ping timeout: 248 seconds)
2022-11-29 21:27:24 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-11-29 21:28:17 +0100kadobanana(~mud@user/kadoban)
2022-11-29 21:28:42 +0100lyle(~lyle@104.246.145.85) (Quit: WeeChat 3.7.1)
2022-11-29 21:32:03 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 21:35:35 +0100kadobanana(~mud@user/kadoban) (Read error: Connection reset by peer)
2022-11-29 21:35:36 +0100mud(~mud@user/kadoban)
2022-11-29 21:36:16 +0100sammelweis_(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-11-29 21:36:16 +0100sammelweis_(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Client Quit)
2022-11-29 21:42:05 +0100pavonia(~user@user/siracusa)
2022-11-29 21:42:36 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 21:48:23 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-11-29 21:48:30 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-11-29 21:48:35 +0100 <sm> quite right
2022-11-29 21:48:38 +0100 <sm> lalalala
2022-11-29 21:49:01 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-11-29 21:49:24 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-11-29 21:49:51 +0100 <EvanR> everyone's in a noob bubble
2022-11-29 21:49:54 +0100 <EvanR> of some size
2022-11-29 21:53:47 +0100 <polo> True
2022-11-29 21:54:49 +0100 <segfaultfizzbuzz> whenever i learn a programming language i feel like the semantics is "unbounded"
2022-11-29 21:54:58 +0100 <segfaultfizzbuzz> is there any fundamental phenomenon behind that
2022-11-29 21:55:23 +0100 <segfaultfizzbuzz> that is to say, it never feels like the language really totally abstracts everything away, and it never provides a 'regular' way of specifying code
2022-11-29 21:55:27 +0100biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2022-11-29 21:55:41 +0100 <EvanR> you mean no one bothered to try to provide semantics
2022-11-29 21:58:17 +0100finsternis(~X@23.226.237.192)
2022-11-29 21:58:29 +0100 <segfaultfizzbuzz> i mean even addition doesn't have a nice systematic behavior
2022-11-29 21:58:48 +0100 <EvanR> are we talking about haskell now?
2022-11-29 21:59:02 +0100 <segfaultfizzbuzz> i don't know how addition behaves on haskell tbh
2022-11-29 21:59:13 +0100 <EvanR> depends on the class instance
2022-11-29 21:59:37 +0100 <EvanR> for Int, it behaves like machine int arithemetic on machine int
2022-11-29 21:59:39 +0100 <segfaultfizzbuzz> it seems like the ISA needs to support bounded integers..?
2022-11-29 22:00:08 +0100 <EvanR> for Integer it behaves like integer arithemetic from school
2022-11-29 22:00:23 +0100 <segfaultfizzbuzz> well okay but there always is overflow and underflow
2022-11-29 22:00:29 +0100 <EvanR> no?
2022-11-29 22:00:33 +0100mmhat(~mmh@p200300f1c725450cee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.7.1)
2022-11-29 22:00:58 +0100 <segfaultfizzbuzz> i mean that i can always exceed some maximum integer value
2022-11-29 22:01:13 +0100 <EvanR> try to exceed max Integer
2022-11-29 22:01:30 +0100bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2022-11-29 22:01:55 +0100 <EvanR> (in reality, application concerns would stop you way before that gets anywhere close)
2022-11-29 22:02:15 +0100 <segfaultfizzbuzz> well then you are using arbitrary precision integers everywhere
2022-11-29 22:02:19 +0100 <gurkenglas> I remember seeing some Yoneda-like library exporting a function that'll optimize your degenerate nested compositions into the correct order for you, what was it?
2022-11-29 22:02:45 +0100 <segfaultfizzbuzz> gurkenglas: what's wrong with degenerate code? ;-)
2022-11-29 22:03:05 +0100 <gurkenglas> segfaultfizzbuzz: not the code, the composition. like foldl on [1..]
2022-11-29 22:03:07 +0100 <EvanR> point being that when dealing in Integer you don't have overflow and you do know how addition works
2022-11-29 22:03:38 +0100 <EvanR> and converting to and from Integer is well defined
2022-11-29 22:04:39 +0100biberu(~biberu@user/biberu)
2022-11-29 22:05:07 +0100jonathanx(~jonathan@h-178-174-176-109.a357.priv.bahnhof.se) (Remote host closed the connection)
2022-11-29 22:05:38 +0100 <segfaultfizzbuzz> EvanR: but then someone will make a mistake--you probably want to be notified when your application exceeds max int64 or something
2022-11-29 22:06:32 +0100 <EvanR> how about you use types to know that at compile time instead
2022-11-29 22:06:43 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-11-29 22:06:58 +0100 <EvanR> e.g. with smart constructors
2022-11-29 22:07:07 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Read error: Connection reset by peer)
2022-11-29 22:07:11 +0100 <segfaultfizzbuzz> i don't think i am familiar, starts to sound like dependent types...?
2022-11-29 22:07:28 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-11-29 22:07:51 +0100 <EvanR> smart constructors is the low tech way to get pretty good guarantees without needing dependent types
2022-11-29 22:08:29 +0100haris(~haris@69.169.3.81) (Remote host closed the connection)
2022-11-29 22:09:23 +0100 <gurkenglas> It was striking because the newtype defined in that file was mentioned nowhere in the type of that utility function
2022-11-29 22:09:43 +0100Guest75(~Guest75@178.141.153.191) (Ping timeout: 260 seconds)
2022-11-29 22:09:56 +0100 <segfaultfizzbuzz> also, on a related note: i have a rust application which relies on some library,... i needed to update the library and the library forced me to use async, which i have little to no experience with. i got rust async working but encountered *runtime* rather than compile time errors, which made me nervous
2022-11-29 22:09:58 +0100 <gurkenglas> "would you like to download some more ram" basically
2022-11-29 22:10:24 +0100 <segfaultfizzbuzz> is there anything unsolved or fundamental about async which pushes compile time errors towards runtime...?
2022-11-29 22:10:53 +0100dtman34_(~dtman34@2601:447:d000:93c9:90e9:6a34:e614:99b9) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
2022-11-29 22:10:57 +0100 <EvanR> e.g. you define an abstract type for numbers not exceeding some limit. To make this true, you don't export the constructor for this type. Instead you only provide functions to build values or operate on values that respect it
2022-11-29 22:11:13 +0100dtman34(~dtman34@76.156.89.180)
2022-11-29 22:11:25 +0100 <EvanR> then you "know" that if you have that type, it doesn't exceed that value
2022-11-29 22:11:37 +0100 <EvanR> as long as the module implementing all this has no bugs
2022-11-29 22:11:58 +0100 <EvanR> reducing the cross section of vulnerable code
2022-11-29 22:12:05 +0100 <EvanR> apply tests as needed
2022-11-29 22:12:57 +0100LemanR(~LemanR@pool-74-109-28-147.phlapa.fios.verizon.net) (Quit: Client closed)
2022-11-29 22:13:31 +0100 <EvanR> segfaultfizzbuzz, plenty of papers which define type systems to guarantee certain properties of concurrent programs
2022-11-29 22:13:37 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2022-11-29 22:13:49 +0100 <segfaultfizzbuzz> EvanR: uh but that's research or...?
2022-11-29 22:14:00 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-11-29 22:14:15 +0100 <EvanR> this goalpost is very fidgety xD
2022-11-29 22:14:34 +0100 <segfaultfizzbuzz> the goalpost is this:
2022-11-29 22:14:55 +0100 <segfaultfizzbuzz> rust is very compile-time oriented in my general experience and very strict, so i was surprised to be encountering runtime async errors.
2022-11-29 22:15:06 +0100 <segfaultfizzbuzz> my question is, since the haskell crowd tends to be compiler experts is
2022-11-29 22:15:12 +0100 <EvanR> you can define type systems / logics to do domain specific things, which makes whatever it accomplishes not fundamentally impossible
2022-11-29 22:15:32 +0100 <EvanR> which is different from pratically useful
2022-11-29 22:15:51 +0100 <segfaultfizzbuzz> is this because rust's async is problematic/bad in some way or is this just how async is
2022-11-29 22:16:12 +0100 <EvanR> however, defining a new language with a type checker that accomplishes some goal can be very useful, practically. If you can do it
2022-11-29 22:16:45 +0100 <segfaultfizzbuzz> so if you want compile time async code you need a DSL you are saying...?
2022-11-29 22:16:46 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net)
2022-11-29 22:17:02 +0100 <EvanR> as far as I can tell rust stops very specific errors
2022-11-29 22:17:10 +0100 <EvanR> pretty common ones from C
2022-11-29 22:17:18 +0100 <EvanR> but not even close to all errors ever
2022-11-29 22:17:35 +0100simendsjo(~user@84.211.91.241) (Remote host closed the connection)
2022-11-29 22:17:59 +0100 <segfaultfizzbuzz> i mean i ended up gravitating towards rust because the Just Works coefficient for things i was doing was very high
2022-11-29 22:18:53 +0100 <EvanR> that in itself sounds very impressive
2022-11-29 22:21:00 +0100 <segfaultfizzbuzz> i think if haskell just cleaned things up a very little bit i would consider moving over,...
2022-11-29 22:21:18 +0100 <segfaultfizzbuzz> i am actively watching roclang and might give it a try sometime soon,...
2022-11-29 22:21:54 +0100ru0mad(~ru0mad@82-64-17-144.subs.proxad.net) ()
2022-11-29 22:27:09 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-11-29 22:27:47 +0100chomwitt(~chomwitt@ppp-94-67-236-76.home.otenet.gr) (Ping timeout: 264 seconds)
2022-11-29 22:30:04 +0100michalz(~michalz@185.246.204.75) (Remote host closed the connection)
2022-11-29 22:37:08 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2022-11-29 22:37:39 +0100 <safinaskar> segfaultfizzbuzz: possibly you found this: https://www.joelonsoftware.com/2002/11/11/the-law-of-leaky-abstractions/
2022-11-29 22:38:13 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 22:41:10 +0100 <segfaultfizzbuzz> safinaskar: that's roughly right, although the tcp/ip example of ip being unreliable can be remedied through redundant connections and sending of data, and the network application code doing that automatically,...
2022-11-29 22:42:05 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt)
2022-11-29 22:42:07 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 22:42:48 +0100 <segfaultfizzbuzz> this is a good quote from the author: "while these great tools, like [author's pet favorite abstraction]-based languages, let us get a lot of work done incredibly quickly, suddenly one day we need to figure out a problem where the abstraction leaked, and it takes 2 weeks."
2022-11-29 22:42:58 +0100jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-11-29 22:44:15 +0100aeroplane(~user@user/aeroplane) (Ping timeout: 260 seconds)
2022-11-29 22:44:29 +0100eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-11-29 22:47:55 +0100 <safinaskar> segfaultfizzbuzz: if you want some small beautiful language without any surprises, consider using haskell and limiting oneself to features (and libraries) listed in haskell report
2022-11-29 22:48:34 +0100 <safinaskar> segfaultfizzbuzz: another option is using SML language. it is absolutely perfect small language. its type system is proved (as opoosed to haskell)
2022-11-29 22:48:50 +0100 <segfaultfizzbuzz> SML is pretty much ocaml?
2022-11-29 22:49:00 +0100 <geekosaur> OCaml has a lot more on top
2022-11-29 22:49:03 +0100 <safinaskar> segfaultfizzbuzz: but again you will need to stick to features specified in standard, overwise you will encouter real world problems
2022-11-29 22:49:06 +0100 <geekosaur> it supports OOP, for starters
2022-11-29 22:49:07 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 268 seconds)
2022-11-29 22:49:19 +0100 <safinaskar> segfaultfizzbuzz: yes, ocaml built on top of sml
2022-11-29 22:49:21 +0100 <geekosaur> (that's what the O is)
2022-11-29 22:49:35 +0100 <safinaskar> segfaultfizzbuzz: also, sml and ocaml are not pure functional
2022-11-29 22:49:36 +0100 <segfaultfizzbuzz> i feel like when i write a program i am dealing with thousands of notifications saying "would you like your program to work? if so, do this thing that everyone knows to do."
2022-11-29 22:49:55 +0100 <geekosaur> I think you'll find that in pretty much any practical language
2022-11-29 22:49:57 +0100 <segfaultfizzbuzz> and in my mind i am thinking "we are supposed to have self-driving cars, and i have to tell my program that i want it to work"
2022-11-29 22:50:10 +0100 <geekosaur> maybe if you stick to non-Turing-complete languages you can escape it
2022-11-29 22:50:21 +0100merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 268 seconds)
2022-11-29 22:51:14 +0100 <safinaskar> segfaultfizzbuzz: also, rust is good in this sense: it will nearly always warn you (via compiler messages) if something is wrong
2022-11-29 22:51:38 +0100 <safinaskar> segfaultfizzbuzz: as opposed to, say, haskell (haskell doesn't warn on incomplete "case" by default)
2022-11-29 22:51:41 +0100 <segfaultfizzbuzz> safinaskar: yeah that's why i was asking about async, i had been hitting runtime async errors in rust and was getting nervous
2022-11-29 22:51:51 +0100 <geekosaur> sorry, to Turing complete lanmguages that don';t let you do anything
2022-11-29 22:52:19 +0100 <segfaultfizzbuzz> i'm not convinced that languages should be turing complete,... but that's probably for another day
2022-11-29 22:52:44 +0100 <geekosaur> you contradict yourself
2022-11-29 22:52:53 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-11-29 22:53:11 +0100 <safinaskar> segfaultfizzbuzz: nowadays async support is pretty good today. i recommend this article on async programming: https://fasterthanli.me/articles/a-rust-match-made-in-hell (and other articles on same topic)
2022-11-29 22:53:17 +0100 <geekosaur> any language that can do practical things is going to be non-Turing-complete… and will escape "self-writing"
2022-11-29 22:54:56 +0100 <geekosaur> UML was perhaps the farthest anyone got on "met me write down what I want and the computer will write it for me"
2022-11-29 22:55:03 +0100 <geekosaur> *let me
2022-11-29 22:56:00 +0100 <geekosaur> unless you count COBOL
2022-11-29 22:56:08 +0100 <segfaultfizzbuzz> lol
2022-11-29 22:56:21 +0100 <Franciman> uml was a cute idea
2022-11-29 22:56:35 +0100 <Franciman> but i have pstd because i associate it with xml
2022-11-29 22:57:11 +0100 <safinaskar> segfaultfizzbuzz: on the other hand rust is too verbose when it comes to memory-related things (.clone(), Box, Rc, etc, etc)
2022-11-29 22:57:12 +0100 <Franciman> ptsd*
2022-11-29 22:57:32 +0100 <segfaultfizzbuzz> safinaskar: probably
2022-11-29 22:57:33 +0100 <safinaskar> segfaultfizzbuzz: if you want just skip all this memory things, you should consider other languages
2022-11-29 22:57:44 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 22:57:47 +0100 <safinaskar> segfaultfizzbuzz: here is article on this: https://blog.darklang.com/new-backend-fsharp/
2022-11-29 23:00:10 +0100 <safinaskar> segfaultfizzbuzz: i think this article is even more related: https://blog.darklang.com/first-thoughts-on-rust-vs-ocaml/
2022-11-29 23:00:27 +0100 <segfaultfizzbuzz> part of the reason i use rust is i kinda think that all programming eventually becomes system programming
2022-11-29 23:00:46 +0100johnw(~johnw@2600:1700:cf00:db0:3c55:6f83:c455:f7f2) (Quit: ZNC - http://znc.in)
2022-11-29 23:02:16 +0100 <geekosaur> sounds like a typical everything-must-be-under-my-direct-control C/C++ programmer… but then you complain about it
2022-11-29 23:02:48 +0100 <segfaultfizzbuzz> uh not trying to complain per se
2022-11-29 23:03:13 +0100 <safinaskar> segfaultfizzbuzz: also, one of problems mentioned in last article is solved by... *ME*! namely "Pattern matching". i wrote rust lib https://crates.io/crates/match_deref , which improves match ergonomics
2022-11-29 23:03:38 +0100 <segfaultfizzbuzz> :-)
2022-11-29 23:04:06 +0100 <safinaskar> segfaultfizzbuzz: i don't know whether my lib can improve particular code example author shows, but it seems it can
2022-11-29 23:05:58 +0100 <safinaskar> segfaultfizzbuzz: i still didn't find language, which combines rust's positive sides (tooling, big community, libs, helpful compiler warnings, strict language free of historic garbagge) and GC found in haskell and ocaml. but i plan to write proof of concept of such language
2022-11-29 23:06:35 +0100 <segfaultfizzbuzz> (rust does have a GC...)
2022-11-29 23:06:41 +0100 <segfaultfizzbuzz> (several in fact)
2022-11-29 23:07:05 +0100 <safinaskar> segfaultfizzbuzz: i hope i will write one in coming months. i simply want to write rust proc-macro, which will implement new language embedded in rust code
2022-11-29 23:07:21 +0100 <segfaultfizzbuzz> i get the sense that a haskell derivative will win in the long run...
2022-11-29 23:07:49 +0100 <safinaskar> in my language everything will be implicitly wrapped in std::rc::Rc. all ".clone()" etc will be inserted as needed
2022-11-29 23:07:53 +0100 <segfaultfizzbuzz> i've played with F# and didn't like it
2022-11-29 23:08:14 +0100 <segfaultfizzbuzz> safinaskar: https://github.com/microsoft/verona
2022-11-29 23:08:20 +0100 <safinaskar> so, you will get access to all rust tooling and crates.io and in same time you will not have to deal with all this .clone() etc
2022-11-29 23:08:24 +0100 <segfaultfizzbuzz> linear resource management is the shit
2022-11-29 23:08:41 +0100 <segfaultfizzbuzz> i am too dumb to program computers, i want to offload everything to compilers
2022-11-29 23:08:43 +0100 <safinaskar> segfaultfizzbuzz: if you want i can include you to my list of people to mail when i will done
2022-11-29 23:09:24 +0100 <segfaultfizzbuzz> safinaskar: well if you link the github repo i will watch it
2022-11-29 23:09:39 +0100Topsi(~Topsi@dyndsl-095-033-143-187.ewe-ip-backbone.de)
2022-11-29 23:09:55 +0100 <safinaskar> segfaultfizzbuzz: i have no repo for it currently
2022-11-29 23:10:52 +0100 <safinaskar> segfaultfizzbuzz: but you can watch repo for match_deref ( https://sr.ht/~safinaskar/match_deref-rs/ ). when i create that language, i will link from here
2022-11-29 23:11:25 +0100 <segfaultfizzbuzz> :-)
2022-11-29 23:19:04 +0100 <safinaskar> segfaultfizzbuzz: also i reached to same conclusion, i. e. now i use rust for everything. because sometimes i need system programming. and even when i don't need system programming, rust is great, too. rust is better than haskell even for writing provers. here is my arguments: https://paste.gg/p/anonymous/afc1c1a79c39498db8fe3ad49cb866c5
2022-11-29 23:19:24 +0100 <safinaskar> i posted that text several times here and usually everybody said that i am troll
2022-11-29 23:19:50 +0100 <segfaultfizzbuzz> thanks i will look. i still think haskell is probably the best community to learn from overall
2022-11-29 23:21:04 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-11-29 23:21:14 +0100gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-11-29 23:21:19 +0100Feuermagier(~Feuermagi@user/feuermagier) (Quit: Leaving)
2022-11-29 23:28:30 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-11-29 23:35:35 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 264 seconds)
2022-11-29 23:37:16 +0100waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-11-29 23:43:25 +0100coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2022-11-29 23:45:23 +0100cheater(~Username@user/cheater) (Quit: All the BitchX that's fit to print!)
2022-11-29 23:46:59 +0100merijn(~merijn@86.86.29.250)
2022-11-29 23:47:35 +0100safinaskar(~quassel@178.160.244.66) (Ping timeout: 264 seconds)
2022-11-29 23:49:59 +0100beteigeuze(~Thunderbi@a79-169-109-107.cpe.netcabo.pt) (Ping timeout: 264 seconds)
2022-11-29 23:51:55 +0100tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-11-29 23:54:29 +0100segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds)