2023/08/06

2023-08-06 00:00:05 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2023-08-06 00:00:21 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 00:00:49 +0200actioninja630(~actioninj@user/actioninja) (Ping timeout: 260 seconds)
2023-08-06 00:00:49 +0200actioninja6302actioninja630
2023-08-06 00:00:58 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds)
2023-08-06 00:01:46 +0200 <dsal> The rough shape of the thing I'm looking for, with Singleton is: thing :: (Monoid m, Singleton s, m ~ s a) => [a] -> m
2023-08-06 00:07:58 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2023-08-06 00:08:38 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 00:09:40 +0200shapr(~user@2600:1700:c640:3100:74c3:10f6:7a7f:9e1) (Remote host closed the connection)
2023-08-06 00:09:43 +0200 <ncf> :t concatMap pure
2023-08-06 00:09:44 +0200 <lambdabot> Foldable t => t b -> [b]
2023-08-06 00:09:53 +0200shapr(~user@2600:1700:c640:3100:5b39:72cf:2cf6:4f57)
2023-08-06 00:09:56 +0200 <ncf> er
2023-08-06 00:10:14 +0200 <ncf> :t foldMap pure
2023-08-06 00:10:15 +0200 <lambdabot> (Foldable t, Monoid (f a), Applicative f) => t a -> f a
2023-08-06 00:12:31 +0200nick4(~nick@2600:100d:b157:9ba6:217f:6f08:11ff:108d) (Ping timeout: 246 seconds)
2023-08-06 00:13:21 +0200 <ncf> or foldMap singleton
2023-08-06 00:13:47 +0200nick4(~nick@2600:100d:b157:9ba6:217f:6f08:11ff:108d)
2023-08-06 00:14:25 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 240 seconds)
2023-08-06 00:14:58 +0200 <dsal> Yeah, I did foldMap singleton for the above. I'll have to decide whether this actually helps anything at some other point. The downside of singleton is that it carries the `a` so doing a `const 1` sort of thing doesn't work.
2023-08-06 00:16:32 +0200 <dsal> I think one of the places I ran into this was at work where someone had created a data structure that's kind of like MonadWriter and implemented the equivalent of `tell` as `\a -> stuff <> [a]`
2023-08-06 00:16:40 +0200 <dsal> (it was only defined for list)
2023-08-06 00:17:15 +0200 <dsal> so redefining it for an arbitrary monoid requires me to be able to say what it means to put one `a` at the end of the list in this case.
2023-08-06 00:17:31 +0200 <dsal> A term the author referred to as "consing"
2023-08-06 00:17:55 +0200nick4(~nick@2600:100d:b157:9ba6:217f:6f08:11ff:108d) (Ping timeout: 240 seconds)
2023-08-06 00:18:05 +0200 <dsal> er, s/term/concept/… whatever. There were a few things I didn't quite like about this particular piece of code.
2023-08-06 00:19:09 +0200johnw(~johnw@69.62.242.138) (Quit: ZNC - http://znc.in)
2023-08-06 00:22:23 +0200ubert1(~Thunderbi@178.115.57.241.wireless.dyn.drei.com)
2023-08-06 00:24:02 +0200hellwolf(~user@5b3d-5cac-bb28-d008-0f00-4d40-07d0-2001.sta.estpak.ee) (Quit: rcirc on GNU Emacs 28.2)
2023-08-06 00:24:09 +0200ubert(~Thunderbi@91.141.36.10.wireless.dyn.drei.com) (Ping timeout: 260 seconds)
2023-08-06 00:24:09 +0200ubert1ubert
2023-08-06 00:24:24 +0200hellwolf(~user@5b3d-5cac-bb28-d008-0f00-4d40-07d0-2001.sta.estpak.ee)
2023-08-06 00:25:33 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-08-06 00:26:04 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 00:35:37 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds)
2023-08-06 00:44:40 +0200 <[Leary]> dsal: Maybe you want something like `newtype FreeMonoid a = FreeMonoid (forall m. Monoid m => (a -> m) -> m)`, with `singleton :: a -> FreeMonoid a; singleton a = FreeMonoid \k -> k a`. Then you can interpret it in whatever monoid you want, though it's not that different from using lists and eventually applying `foldMap`.
2023-08-06 00:46:04 +0200 <dsal> Heh, yeah. The most recent time this came up was someone manually placing items at the end of a list and I was trying to think of better ways to manage this.
2023-08-06 00:52:13 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-08-06 00:58:11 +0200sm[i](~sm@plaintextaccounting/sm) (Quit: sm[i])
2023-08-06 01:03:43 +0200sm(~sm@plaintextaccounting/sm)
2023-08-06 01:07:22 +0200sunarch(~sunarch@user/sunarch) (Quit: WeeChat 3.8)
2023-08-06 01:14:53 +0200mauke_(~mauke@user/mauke)
2023-08-06 01:16:42 +0200mauke(~mauke@user/mauke) (Ping timeout: 252 seconds)
2023-08-06 01:16:42 +0200mauke_mauke
2023-08-06 01:19:30 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 246 seconds)
2023-08-06 01:25:45 +0200gurkenglas(~gurkengla@dynamic-046-114-090-194.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-08-06 01:45:02 +0200o-90(~o-90@gateway/tor-sasl/o-90)
2023-08-06 01:47:43 +0200 <jackdk> dsal: Seems kinda related to a `Pointed` class, except nobody uses that in Haskell because it's very hard to make it say anything useful when it interacts with other classes, and it's not worth asking everyone to define instances for it on the way to deriving `Applicative`.
2023-08-06 01:49:31 +0200 <jackdk> [Leary]: One benefit of that encoding over just using lists is you can cons and snoc without as much performance trouble
2023-08-06 01:50:12 +0200son0p(~ff@181.32.134.99)
2023-08-06 01:50:23 +0200o-90(~o-90@gateway/tor-sasl/o-90) (Remote host closed the connection)
2023-08-06 02:02:21 +0200califax(~califax@user/califx) (Remote host closed the connection)
2023-08-06 02:03:22 +0200califax(~califax@user/califx)
2023-08-06 02:15:49 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-08-06 02:19:28 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.)
2023-08-06 02:29:39 +0200hgolden(~hgolden@2603-8000-9d00-3ed1-fc05-5499-f77c-fbe5.res6.spectrum.com) (Remote host closed the connection)
2023-08-06 02:31:32 +0200hgolden(~hgolden@2603-8000-9d00-3ed1-fc05-5499-f77c-fbe5.res6.spectrum.com)
2023-08-06 02:34:46 +0200artem(~artem@38.42.227.237) (Quit: Quit)
2023-08-06 02:35:00 +0200ulysses4ever(~artem@38.42.227.237)
2023-08-06 02:35:08 +0200ulysses4ever(~artem@38.42.227.237) (Client Quit)
2023-08-06 02:35:22 +0200ulysses4ever(~artem@38.42.227.237)
2023-08-06 02:41:52 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-08-06 02:41:52 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-08-06 02:41:52 +0200wroathe(~wroathe@user/wroathe)
2023-08-06 02:50:05 +0200ulysses4everartem
2023-08-06 02:58:19 +0200razetime(~quassel@117.254.36.168)
2023-08-06 02:59:50 +0200johnw(~johnw@69.62.242.138)
2023-08-06 03:11:22 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-08-06 03:11:33 +0200 <dsal> It's kind of annoying to write quickcheck shrinkers, but I don't feel I quite understand what hedgehog does. I've got two DAG types for my tests. One does a basic DAG generation, and when shrinking, it basically drops nodes and then enforces there aren't any pointers to missing nodes.
2023-08-06 03:11:57 +0200 <dsal> The second type is a DAG and a key that's known to be in the DAG, so when I shrink, I can't consider any value that doesn't contain that key.
2023-08-06 03:15:43 +0200Me-me(~me-me@2602:ff16:3:0:1:dc:beef:d00d) (Changing host)
2023-08-06 03:15:43 +0200Me-me(~me-me@user/me-me)
2023-08-06 03:17:29 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-08-06 03:22:59 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 03:24:23 +0200R3G3N3R4T3(~R3G3N3R4T@bcdcac82.skybroadband.com) (Ping timeout: 246 seconds)
2023-08-06 03:27:28 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds)
2023-08-06 03:32:30 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-08-06 03:33:02 +0200mention(~mention@bcdcac82.skybroadband.com)
2023-08-06 03:36:55 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-08-06 03:40:23 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection)
2023-08-06 03:41:04 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-08-06 03:47:15 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection)
2023-08-06 03:47:43 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-08-06 03:55:35 +0200 <dsal> It looks like I can influence that a bit with `Gen.mapMaybe` and such, but that seems less direct.
2023-08-06 03:58:07 +0200bilegeek(~bilegeek@2600:1008:b046:71bf:385f:ca76:1b01:287f)
2023-08-06 04:00:18 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2023-08-06 04:00:56 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2023-08-06 04:16:56 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 04:18:14 +0200sm(~sm@plaintextaccounting/sm) (Quit: sm)
2023-08-06 04:32:31 +0200ddellacosta(~ddellacos@146.70.165.10) (Ping timeout: 245 seconds)
2023-08-06 04:34:30 +0200ddellacosta(~ddellacos@146.70.166.248)
2023-08-06 04:35:23 +0200nick4(~nick@2600:8807:9084:7800:ec9c:4d02:2ec4:e8ec)
2023-08-06 04:36:12 +0200td_(~td@i53870923.versanet.de) (Ping timeout: 260 seconds)
2023-08-06 04:37:49 +0200td_(~td@i5387092A.versanet.de)
2023-08-06 04:44:52 +0200shapr(~user@2600:1700:c640:3100:5b39:72cf:2cf6:4f57) (Remote host closed the connection)
2023-08-06 04:45:06 +0200shapr(~user@2600:1700:c640:3100:c1a9:d78c:4858:73ee)
2023-08-06 04:46:56 +0200nick3(~nick@98.186.196.41)
2023-08-06 04:48:27 +0200nick4(~nick@2600:8807:9084:7800:ec9c:4d02:2ec4:e8ec) (Ping timeout: 246 seconds)
2023-08-06 04:51:56 +0200qqq(~qqq@92.43.167.61)
2023-08-06 04:52:08 +0200nick4(~nick@2600:8807:9084:7800:4415:cce6:aebf:151d)
2023-08-06 04:53:00 +0200nick3(~nick@98.186.196.41) (Ping timeout: 245 seconds)
2023-08-06 05:00:13 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-08-06 05:00:13 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-08-06 05:00:13 +0200finn_elijaFinnElija
2023-08-06 05:00:21 +0200razetime(~quassel@117.254.36.168) (Ping timeout: 246 seconds)
2023-08-06 05:04:20 +0200_xor(~xor@ip-50-5-233-250.dynamic.fuse.net)
2023-08-06 05:12:13 +0200phma(~phma@host-67-44-208-165.hnremote.net) (Read error: Connection reset by peer)
2023-08-06 05:12:40 +0200razetime(~quassel@117.254.37.46)
2023-08-06 05:12:42 +0200phma(~phma@2001:5b0:210d:fef8:786c:170d:9d9:5b69)
2023-08-06 05:17:16 +0200hays(rootvegeta@fsf/member/hays)
2023-08-06 05:19:07 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds)
2023-08-06 05:23:17 +0200aforemny_(~aforemny@i59F516D0.versanet.de)
2023-08-06 05:24:34 +0200aforemny(~aforemny@2001:9e8:6cf0:ae00:b4f4:25a1:c52c:f256) (Ping timeout: 260 seconds)
2023-08-06 05:32:25 +0200razetime(~quassel@117.254.37.46) (Ping timeout: 240 seconds)
2023-08-06 05:38:16 +0200phma(~phma@2001:5b0:210d:fef8:786c:170d:9d9:5b69) (Read error: Connection reset by peer)
2023-08-06 05:38:45 +0200phma(~phma@2001:5b0:210d:fef8:786c:170d:9d9:5b69)
2023-08-06 05:41:54 +0200raym(~ray@user/raym) (Remote host closed the connection)
2023-08-06 05:47:33 +0200razetime(~quassel@117.254.37.46)
2023-08-06 05:57:04 +0200shapr(~user@2600:1700:c640:3100:c1a9:d78c:4858:73ee) (Remote host closed the connection)
2023-08-06 05:57:18 +0200shapr(~user@2600:1700:c640:3100:b49b:8203:a696:85b3)
2023-08-06 06:00:18 +0200phma(~phma@2001:5b0:210d:fef8:786c:170d:9d9:5b69) (Read error: Connection reset by peer)
2023-08-06 06:00:47 +0200phma(~phma@host-67-44-208-165.hnremote.net)
2023-08-06 06:07:40 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2023-08-06 06:08:50 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-08-06 06:10:31 +0200johnw(~johnw@69.62.242.138) (Quit: ZNC - http://znc.in)
2023-08-06 06:20:58 +0200trev(~trev@user/trev)
2023-08-06 06:21:03 +0200phma(~phma@host-67-44-208-165.hnremote.net) (Read error: Connection reset by peer)
2023-08-06 06:21:28 +0200phma(phma@2001:5b0:210d:fef8:786c:170d:9d9:5b69)
2023-08-06 06:24:38 +0200myme(~myme@2a01:799:d60:e400:b41a:c870:8ef2:7459) (Ping timeout: 246 seconds)
2023-08-06 06:25:50 +0200myme(~myme@2a01:799:d60:e400:f52f:533:322f:2121)
2023-08-06 06:28:25 +0200shapr(~user@2600:1700:c640:3100:b49b:8203:a696:85b3) (Ping timeout: 240 seconds)
2023-08-06 06:31:17 +0200Lycurgus(~juan@user/Lycurgus)
2023-08-06 06:33:02 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Tschüss)
2023-08-06 06:54:47 +0200idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-08-06 06:59:42 +0200Inst_(~Inst@c-76-101-10-131.hsd1.fl.comcast.net) (Ping timeout: 246 seconds)
2023-08-06 07:08:54 +0200mei(~mei@user/mei) (Quit: mei)
2023-08-06 07:08:58 +0200travgm(~travgm@173-47-170-22.cpe.cableone.net)
2023-08-06 07:08:58 +0200travgm(~travgm@173-47-170-22.cpe.cableone.net) (Changing host)
2023-08-06 07:08:58 +0200travgm(~travgm@fsf/member/travgm)
2023-08-06 07:10:42 +0200mei(~mei@user/mei)
2023-08-06 07:18:20 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com)
2023-08-06 07:22:03 +0200sgarcia(sgarcia@swarm.znchost.com) (Quit: Hosted by www.ZNCHost.com)
2023-08-06 07:23:50 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2023-08-06 07:25:45 +0200sgarcia(sgarcia@swarm.znchost.com)
2023-08-06 07:26:00 +0200rnat(uid73555@id-73555.lymington.irccloud.com)
2023-08-06 07:49:56 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl)
2023-08-06 07:52:30 +0200johnw(~johnw@69.62.242.138)
2023-08-06 07:55:54 +0200Inst_(~Inst@2601:6c4:4081:2fc0:ec22:7125:3e26:e7ab)
2023-08-06 08:01:07 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-08-06 08:02:14 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 08:20:33 +0200razetime(~quassel@117.254.37.46) (Ping timeout: 246 seconds)
2023-08-06 08:21:14 +0200razetime(~quassel@117.254.37.21)
2023-08-06 08:24:03 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds)
2023-08-06 08:29:23 +0200zmt01(~zmt00@user/zmt00)
2023-08-06 08:31:48 +0200michalz(~michalz@185.246.207.221)
2023-08-06 08:32:47 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 258 seconds)
2023-08-06 08:47:24 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2023-08-06 08:51:38 +0200raym(~ray@user/raym)
2023-08-06 08:55:25 +0200qqq(~qqq@92.43.167.61) (Quit: leaving)
2023-08-06 09:10:48 +0200Inst_(~Inst@2601:6c4:4081:2fc0:ec22:7125:3e26:e7ab) (Ping timeout: 246 seconds)
2023-08-06 09:16:14 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 09:16:43 +0200gurkenglas(~gurkengla@dynamic-046-114-095-239.46.114.pool.telefonica.de)
2023-08-06 09:20:26 +0200razetime(~quassel@117.254.37.21) (Remote host closed the connection)
2023-08-06 09:20:55 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds)
2023-08-06 09:23:18 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2023-08-06 09:51:40 +0200bilegeek(~bilegeek@2600:1008:b046:71bf:385f:ca76:1b01:287f) (Quit: Leaving)
2023-08-06 09:53:18 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 246 seconds)
2023-08-06 09:55:34 +0200rnat(uid73555@id-73555.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-08-06 09:57:01 +0200hyvoid(~hyenavoid@222-0-178-69.static.gci.net) (Ping timeout: 246 seconds)
2023-08-06 09:58:29 +0200hyvoid(~hyenavoid@222-0-178-69.static.gci.net)
2023-08-06 10:03:07 +0200acidjnk(~acidjnk@p200300d6e7072f078d7b2a00ab71d1ea.dip0.t-ipconnect.de)
2023-08-06 10:07:07 +0200dvb^(~cd@24.125.210.85) (Remote host closed the connection)
2023-08-06 10:07:10 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds)
2023-08-06 10:09:19 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 10:10:32 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-08-06 10:13:49 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds)
2023-08-06 10:22:10 +0200thyriaen(~thyriaen@2a01:aea0:dd4:6a18:6245:cbff:fe9f:48b1)
2023-08-06 10:32:43 +0200trev(~trev@user/trev) (Quit: trev)
2023-08-06 10:34:08 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 10:34:11 +0200mc47(~mc47@xmonad/TheMC47)
2023-08-06 10:36:42 +0200thyriaen(~thyriaen@2a01:aea0:dd4:6a18:6245:cbff:fe9f:48b1) (Quit: Leaving)
2023-08-06 10:36:56 +0200thyriaen(~thyriaen@2a01:aea0:dd4:6a18:6245:cbff:fe9f:48b1)
2023-08-06 10:38:26 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-08-06 10:40:29 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-08-06 10:45:06 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds)
2023-08-06 10:45:11 +0200mmhat(~mmh@p200300f1c73d19a2ee086bfffe095315.dip0.t-ipconnect.de)
2023-08-06 10:48:27 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 10:50:42 +0200misterfish(~misterfis@87.215.131.102)
2023-08-06 10:54:09 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 260 seconds)
2023-08-06 10:56:46 +0200oo_miguel(~oo_miguel@78-11-179-96.static.ip.netia.com.pl)
2023-08-06 11:02:48 +0200oo_miguel(~oo_miguel@78-11-179-96.static.ip.netia.com.pl) (Quit: WeeChat 3.8)
2023-08-06 11:03:42 +0200sm(~sm@plaintextaccounting/sm)
2023-08-06 11:04:33 +0200econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2023-08-06 11:11:47 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-08-06 11:13:09 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com)
2023-08-06 11:15:12 +0200Pickchea(~private@user/pickchea)
2023-08-06 11:24:38 +0200_xor(~xor@ip-50-5-233-250.dynamic.fuse.net) (Quit: brb/bbiab)
2023-08-06 11:24:49 +0200travgm(~travgm@fsf/member/travgm) (Remote host closed the connection)
2023-08-06 11:25:55 +0200jero98772(~jero98772@2800:484:1d84:300::3) (Ping timeout: 240 seconds)
2023-08-06 11:27:53 +0200gmg(~user@user/gehmehgeh)
2023-08-06 11:34:33 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b969:84de:9a89:14ad) (Remote host closed the connection)
2023-08-06 11:36:29 +0200benin(~benin@2001:df1:800:a00e:4::a44e)
2023-08-06 11:37:45 +0200jero98772(~jero98772@2800:484:1d84:300::3)
2023-08-06 11:38:21 +0200benin(~benin@2001:df1:800:a00e:4::a44e) (Client Quit)
2023-08-06 11:39:16 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 11:40:31 +0200ub(~Thunderbi@178.115.57.241.wireless.dyn.drei.com)
2023-08-06 11:42:54 +0200mmhat(~mmh@p200300f1c73d19a2ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 4.0.2)
2023-08-06 11:47:52 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 245 seconds)
2023-08-06 11:48:38 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-08-06 11:54:10 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-08-06 12:07:16 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2023-08-06 12:10:57 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-08-06 12:10:57 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
2023-08-06 12:15:30 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 245 seconds)
2023-08-06 12:16:17 +0200anselmschueler(~anselmsch@user/schuelermine)
2023-08-06 12:20:26 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 12:24:27 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-08-06 12:30:28 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
2023-08-06 12:35:04 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:4412:cedf:3c2a:7919)
2023-08-06 12:35:04 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2023-08-06 12:39:23 +0200libertyprime(~libertypr@203.96.203.44)
2023-08-06 12:39:25 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:4412:cedf:3c2a:7919) (Ping timeout: 246 seconds)
2023-08-06 12:41:42 +0200anselmschueler(~anselmsch@user/schuelermine) (Quit: WeeChat 4.0.2)
2023-08-06 12:43:55 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
2023-08-06 12:44:23 +0200Buggys(Buggys@buggy.shelltalk.net) (Ping timeout: 264 seconds)
2023-08-06 12:44:28 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2023-08-06 12:46:12 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2023-08-06 12:48:25 +0200nick4(~nick@2600:8807:9084:7800:4415:cce6:aebf:151d) (Ping timeout: 245 seconds)
2023-08-06 12:50:44 +0200Buggys(Buggys@Buggy.shelltalk.net)
2023-08-06 12:51:18 +0200ub(~Thunderbi@178.115.57.241.wireless.dyn.drei.com) (Quit: ub)
2023-08-06 12:52:11 +0200mysl(~mysl@user/mysl) (Ping timeout: 264 seconds)
2023-08-06 12:56:20 +0200ubert(~Thunderbi@178.115.57.241.wireless.dyn.drei.com) (Ping timeout: 245 seconds)
2023-08-06 12:56:26 +0200idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2)
2023-08-06 13:01:26 +0200mrmr(~mrmr@user/mrmr) (Quit: Bye, See ya later!)
2023-08-06 13:03:37 +0200libertyprime(~libertypr@203.96.203.44) (Quit: leaving)
2023-08-06 13:04:41 +0200sm(~sm@plaintextaccounting/sm) (Quit: sm)
2023-08-06 13:05:14 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 13:05:42 +0200mrmr(~mrmr@user/mrmr)
2023-08-06 13:06:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-08-06 13:09:38 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
2023-08-06 13:13:48 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2023-08-06 13:16:55 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Client Quit)
2023-08-06 13:17:46 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 13:20:46 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2023-08-06 13:21:54 +0200mysl(~mysl@user/mysl)
2023-08-06 13:22:36 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds)
2023-08-06 13:23:10 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2023-08-06 13:27:24 +0200michalz(~michalz@185.246.207.221) (Remote host closed the connection)
2023-08-06 13:29:19 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 13:33:46 +0200sm(~sm@plaintextaccounting/sm)
2023-08-06 13:37:38 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-08-06 13:38:00 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds)
2023-08-06 13:38:29 +0200sm(~sm@plaintextaccounting/sm) (Client Quit)
2023-08-06 13:38:44 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 13:54:31 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 14:00:25 +0200shailangsa(~shailangs@host86-186-196-224.range86-186.btcentralplus.com) (Remote host closed the connection)
2023-08-06 14:02:26 +0200thyriaen(~thyriaen@2a01:aea0:dd4:6a18:6245:cbff:fe9f:48b1) (Remote host closed the connection)
2023-08-06 14:04:15 +0200oo_miguel(~Thunderbi@78-11-179-96.static.ip.netia.com.pl)
2023-08-06 14:04:15 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 246 seconds)
2023-08-06 14:04:50 +0200gurkenglas(~gurkengla@dynamic-046-114-095-239.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-08-06 14:05:05 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 245 seconds)
2023-08-06 14:05:30 +0200oo_miguel(~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Client Quit)
2023-08-06 14:07:11 +0200seeg123456(~seeg12345@64.176.64.83)
2023-08-06 14:07:42 +0200oo_miguel(~oo_miguel@78-11-179-96.static.ip.netia.com.pl)
2023-08-06 14:07:54 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-08-06 14:11:16 +0200seeg123456(~seeg12345@64.176.64.83) ()
2023-08-06 14:11:17 +0200seeg123456(~seeg12345@64.176.64.83)
2023-08-06 14:11:24 +0200sm(~sm@plaintextaccounting/sm)
2023-08-06 14:18:41 +0200seeg123456(~seeg12345@64.176.64.83) ()
2023-08-06 14:18:52 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 14:25:15 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2023-08-06 14:26:14 +0200yangby(~secret@183.157.65.111) (Quit: Go out for a walk and buy a drink.)
2023-08-06 14:33:15 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-08-06 14:38:26 +0200gurkenglas(~gurkengla@dynamic-046-114-095-239.46.114.pool.telefonica.de)
2023-08-06 14:38:27 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2023-08-06 14:41:00 +0200oo_miguel(~oo_miguel@78-11-179-96.static.ip.netia.com.pl) (Quit: WeeChat 3.8)
2023-08-06 14:49:21 +0200shailangsa(~shailangs@host86-186-196-224.range86-186.btcentralplus.com)
2023-08-06 14:57:10 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-08-06 14:57:55 +0200ddellacosta(~ddellacos@146.70.166.248) (Ping timeout: 240 seconds)
2023-08-06 15:01:09 +0200shapr(~user@2600:1700:c640:3100:9415:bb5d:ae7f:5570)
2023-08-06 15:04:38 +0200sm(~sm@plaintextaccounting/sm) (Quit: sm)
2023-08-06 15:15:47 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-08-06 15:21:03 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-08-06 15:23:10 +0200Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::3d70)
2023-08-06 15:29:14 +0200ddellacosta(~ddellacos@146.70.166.248)
2023-08-06 15:32:43 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-08-06 15:33:01 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 246 seconds)
2023-08-06 15:35:26 +0200idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-08-06 15:35:43 +0200razetime(~quassel@117.254.37.21)
2023-08-06 15:41:16 +0200hgolden(~hgolden@2603-8000-9d00-3ed1-fc05-5499-f77c-fbe5.res6.spectrum.com) (Remote host closed the connection)
2023-08-06 15:42:19 +0200dolio(~dolio@130.44.134.54) (Ping timeout: 260 seconds)
2023-08-06 15:47:29 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2023-08-06 16:14:47 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 16:20:28 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2023-08-06 16:34:16 +0200econo_(uid147250@id-147250.tinside.irccloud.com)
2023-08-06 16:40:34 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2023-08-06 16:46:02 +0200xkuru(~xkuru@user/xkuru)
2023-08-06 16:46:50 +0200Kuttenbrunzer(~Kuttenbru@2a02:8108:8b80:1d48::3d70) (Quit: Where is it)
2023-08-06 16:47:05 +0200dolio(~dolio@130.44.134.54)
2023-08-06 16:55:08 +0200xkuru(~xkuru@user/xkuru) (Quit: Unvirtualizing)
2023-08-06 16:55:36 +0200xkuru(~xkuru@user/xkuru)
2023-08-06 17:04:22 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-08-06 17:04:23 +0200xkuru(~xkuru@user/xkuru) (Quit: Unvirtualizing)
2023-08-06 17:05:10 +0200xkuru(~xkuru@user/xkuru)
2023-08-06 17:05:47 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-08-06 17:10:32 +0200x_kuru(~xkuru@user/xkuru)
2023-08-06 17:11:24 +0200x_kuru(~xkuru@user/xkuru) (Remote host closed the connection)
2023-08-06 17:11:26 +0200xkuru(~xkuru@user/xkuru) (Quit: Unvirtualizing)
2023-08-06 17:11:44 +0200xkuru(~xkuru@user/xkuru)
2023-08-06 17:17:27 +0200razetime(~quassel@117.254.37.21) (Remote host closed the connection)
2023-08-06 17:19:19 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 17:21:42 +0200ulysses4ever(~artem@172.56.193.140)
2023-08-06 17:22:35 +0200artem(~artem@38.42.227.237) (Ping timeout: 245 seconds)
2023-08-06 17:22:44 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2023-08-06 17:23:50 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds)
2023-08-06 17:24:08 +0200segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2023-08-06 17:24:08 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2023-08-06 17:25:54 +0200ulysses4ever(~artem@172.56.193.140) (Read error: Connection reset by peer)
2023-08-06 17:26:12 +0200ulysses4ever(~artem@50.216.106.10)
2023-08-06 17:29:57 +0200gentauro(~gentauro@user/gentauro)
2023-08-06 17:30:24 +0200ulysses4ever(~artem@50.216.106.10) (Ping timeout: 246 seconds)
2023-08-06 17:36:05 +0200Tlsx(~rscastilh@187.40.124.54)
2023-08-06 17:37:59 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-08-06 17:39:28 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:4412:cedf:3c2a:7919)
2023-08-06 17:43:55 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:4412:cedf:3c2a:7919) (Ping timeout: 240 seconds)
2023-08-06 17:44:33 +0200sm_(~sm@plaintextaccounting/sm)
2023-08-06 17:48:32 +0200sm_(~sm@plaintextaccounting/sm) (Client Quit)
2023-08-06 17:50:24 +0200sm(~sm@plaintextaccounting/sm)
2023-08-06 17:52:48 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2023-08-06 17:53:23 +0200ulysses4ever(~artem@38.42.227.237)
2023-08-06 17:53:54 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-08-06 17:55:30 +0200Inst_(~Inst@2601:6c4:4081:2fc0:1819:b44d:a133:3985)
2023-08-06 17:56:14 +0200sm(~sm@plaintextaccounting/sm) (Quit: sm)
2023-08-06 17:58:08 +0200danza(~francesco@151.57.78.253)
2023-08-06 18:05:30 +0200danza(~francesco@151.57.78.253) (Ping timeout: 245 seconds)
2023-08-06 18:07:55 +0200dispater(~dispater@mail.brprice.uk) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 18:07:55 +0200orcus-(~orcus@mail.brprice.uk) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 18:08:26 +0200sevenfour(~sevenfour@174.112.127.99)
2023-08-06 18:09:40 +0200dispater(~dispater@mail.brprice.uk)
2023-08-06 18:10:10 +0200orcus(~orcus@mail.brprice.uk)
2023-08-06 18:10:17 +0200ubert1(~Thunderbi@178.115.57.241.wireless.dyn.drei.com)
2023-08-06 18:13:51 +0200dispater(~dispater@mail.brprice.uk) (Client Quit)
2023-08-06 18:13:51 +0200orcus(~orcus@mail.brprice.uk) (Client Quit)
2023-08-06 18:14:16 +0200sevenfour(~sevenfour@174.112.127.99) (Quit: Leaving)
2023-08-06 18:14:31 +0200Guest70(~Guest38@174.112.127.99)
2023-08-06 18:15:12 +0200dispater(~dispater@mail.brprice.uk)
2023-08-06 18:15:43 +0200orcus(~orcus@mail.brprice.uk)
2023-08-06 18:17:38 +0200hgolden(~hgolden@2603-8000-9d00-3ed1-fc05-5499-f77c-fbe5.res6.spectrum.com)
2023-08-06 18:20:29 +0200 <Guest70> Hello, I'm a beginner programmer would like some criticisms and advice on my tictactoe board's logic and documentation. https://paste.tomsmeding.com/kd2Qziqs
2023-08-06 18:22:42 +0200orcus(~orcus@mail.brprice.uk) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 18:23:02 +0200orcus(~orcus@user/brprice)
2023-08-06 18:24:12 +0200 <[exa]> Guest70: actually looks pretty clean
2023-08-06 18:24:45 +0200 <[exa]> Guest70: you might want to remove the Show instance for Player (Show should generally produce a parseable representation, and you have a different renderer in showCell anyway)
2023-08-06 18:24:54 +0200 <int-e> `abs (x-y) == 2` happens to work, but x+y == 2 defines the actual diagonal.
2023-08-06 18:25:23 +0200dispater(~dispater@mail.brprice.uk) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 18:25:44 +0200dispater(~dispater@user/brprice)
2023-08-06 18:26:07 +0200 <int-e> . o O ( data Player = X | O )
2023-08-06 18:26:19 +0200 <[exa]> +1 ^
2023-08-06 18:28:40 +0200trev(~trev@user/trev)
2023-08-06 18:29:20 +0200johnw(~johnw@69.62.242.138) (Quit: ZNC - http://znc.in)
2023-08-06 18:29:28 +0200idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2)
2023-08-06 18:30:14 +0200 <[exa]> Guest70: in `modifyBoard` you might get a little better parenthesization if the `Int` argument of `modify` was first, I think you could get something like `modBoard (x,y) f = modify y (modify x f)`
2023-08-06 18:30:42 +0200 <[exa]> ...which in turn may rewrite to a completely silly looking `modBoard (x,y) = modify y . modify x`
2023-08-06 18:30:55 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 245 seconds)
2023-08-06 18:32:24 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2023-08-06 18:32:38 +0200 <Guest70> Yea, I was having a hell of a time trying to figure out how to make it look better. That's pretty cool looking
2023-08-06 18:32:52 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 18:35:07 +0200dispater(~dispater@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 18:35:07 +0200orcus(~orcus@user/brprice) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 18:36:28 +0200dispater(~dispater@user/brprice)
2023-08-06 18:36:54 +0200 <ncf> using lens: modifyBoard (x, y) p = ix y . ix x ?~ p
2023-08-06 18:36:58 +0200orcus(~orcus@user/brprice)
2023-08-06 18:37:10 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Ping timeout: 245 seconds)
2023-08-06 18:37:20 +0200 <[exa]> Guest70: there's a general intuition that the most "variable" arguments should go last, which probably applies here. And yeah lenses are the next step there :D
2023-08-06 18:38:49 +0200Katarushisu(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2023-08-06 18:39:09 +0200 <Guest70> Whoa someone already wrote the function I wanted
2023-08-06 18:41:58 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2023-08-06 18:43:01 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2023-08-06 18:43:45 +0200Harriet(harriet@user/Lareina) (not now)
2023-08-06 18:44:10 +0200 <Guest70> Alright, thank you all for the advice. Also, do you guys have any documentation tips, or anywhere I should read up on how to document my code better?
2023-08-06 18:44:20 +0200simikando(~simikando@adsl-dyn-104.95-102-88.t-com.sk)
2023-08-06 18:52:08 +0200stilgart(~Christoph@chezlefab.net)
2023-08-06 18:52:47 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2023-08-06 18:54:30 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2023-08-06 18:55:14 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 246 seconds)
2023-08-06 18:55:44 +0200 <hellwolf> not so sure I would recommend using lens for such exercise..
2023-08-06 18:56:32 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2023-08-06 18:57:20 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2023-08-06 18:57:52 +0200 <monochrom> IMO using lens in that context is caused by an XY problem. The wrong decision was made to use [[Cell]] for the board. It went downhill from there.
2023-08-06 18:58:17 +0200 <monochrom> Everything would be more direct if a real array was chosen at the beginning.
2023-08-06 18:59:32 +0200 <monochrom> C beginners suffer the opposite problem, evidently. They use arrays when they should use real linked lists or trees. >:)
2023-08-06 19:01:07 +0200 <Guest70> I see, so should I be using array from the Data.Array library?
2023-08-06 19:02:41 +0200 <monochrom> I have seen someone's C code for Dijkstra shortest path. It did a linear search on an array to find the minimum-weight edge. And it was not even written by a beginner. It was code library of one of the best teams in ACM ICPC.
2023-08-06 19:03:48 +0200 <geekosaur> Data.Array or Data.Vector. the former has the advantage that 2D is directly supported, the latter is somewhat better optimized
2023-08-06 19:10:30 +0200seeg123456(~seeg12345@64.176.64.83)
2023-08-06 19:11:30 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-08-06 19:23:08 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-08-06 19:23:36 +0200 <[exa]> Guest70: re documentation, haddock has a standard form of adding docstrings, nothing surprising I'd say
2023-08-06 19:24:18 +0200seeg123456(~seeg12345@64.176.64.83) ()
2023-08-06 19:24:27 +0200 <[exa]> Guest70: re arrays, for this problem size don't worry at all, and eventually Data.Vector (for dense representation) or Data.Map (for sparse one) will probably fix it
2023-08-06 19:24:29 +0200billchenchina(~billchenc@2a0c:b641:7a2:320:ee3e:47ca:6070:d71a) (Quit: Leaving)
2023-08-06 19:26:40 +0200 <monochrom> This is not about size and runtime efficiency. This is about using the right API for the right purpose and programmer-time efficiency.
2023-08-06 19:26:45 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 19:26:50 +0200 <EvanR> in C you rewrite linked list every time you need one. In haskell you rewrite 2D array using Vectors every time
2023-08-06 19:27:03 +0200 <EvanR> they're complementary
2023-08-06 19:27:31 +0200 <int-e> But it's 9 entries... the data structure hardly matters.
2023-08-06 19:28:13 +0200 <EvanR> data Nine a = Nine a a a a a a a a a
2023-08-06 19:28:15 +0200 <int-e> :t (//)
2023-08-06 19:28:16 +0200 <lambdabot> Ix i => Array i e -> [(i, e)] -> Array i e
2023-08-06 19:28:36 +0200 <int-e> Having // is convenient though.
2023-08-06 19:28:49 +0200 <monochrom> That is my point.
2023-08-06 19:29:35 +0200 <monochrom> I was commenting one why lens was brought in. It does not matter that the board size is 1x1.
2023-08-06 19:29:36 +0200 <int-e> EvanR: type Nine a = Three (Three a)
2023-08-06 19:29:54 +0200 <EvanR> touché
2023-08-06 19:30:16 +0200cole-k(~cole@cpe-104-32-238-223.socal.res.rr.com)
2023-08-06 19:30:35 +0200 <EvanR> you only need prime numbered tuples
2023-08-06 19:31:05 +0200 <EvanR> which is why we don't have 1-tuples
2023-08-06 19:31:30 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds)
2023-08-06 19:32:10 +0200 <cole-k> Is there a way to get stack (or cabal) to compile all files in the project? Right now it's stopping when there's a compilation error in one file. The files in question don't depend on each other.
2023-08-06 19:33:44 +0200 <monochrom> Probably at the build target granularity instead of the file granularity.
2023-08-06 19:34:11 +0200 <monochrom> Probably `cabal build exe:foo` for example.
2023-08-06 19:34:21 +0200 <c_wraith> well, depending on the source of the errors... there's -fdefer-type-errors
2023-08-06 19:36:24 +0200Sgeo(~Sgeo@user/sgeo)
2023-08-06 19:38:43 +0200dyniec(~dyniec@mail.dybiec.info)
2023-08-06 19:43:03 +0200 <cole-k> monochrom: could you give me some references or search terms I could use to investigate?
2023-08-06 19:43:39 +0200 <cole-k> c_wraith: I'm trying to get LiquidHaskell to check all files in a repository and it looks like it doesn't emit type errors proper.
2023-08-06 19:44:30 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-08-06 19:45:03 +0200 <monochrom> https://cabal.readthedocs.io/en/stable/cabal-commands.html#target-forms
2023-08-06 19:45:25 +0200ubert(~Thunderbi@178.115.57.241.wireless.dyn.drei.com)
2023-08-06 19:46:09 +0200alexherbo2(~alexherbo@2a02-8440-2240-0754-089c-9637-4186-a977.rev.sfr.net)
2023-08-06 19:47:03 +0200 <geekosaur> --keep-going ?
2023-08-06 19:47:31 +0200 <monochrom> Hey that's better!
2023-08-06 19:48:11 +0200 <c_wraith> that appears to only apply at the package level. Unless the documentation is worded poorly
2023-08-06 19:49:13 +0200 <cole-k> yeah it seems to fail still :(
2023-08-06 19:49:34 +0200 <geekosaur> given the way cabal delegates to ghc, you probably need 'ghc-options: -fkeep-going' for that
2023-08-06 19:50:00 +0200 <geekosaur> (or the command line form which should be --ghc-options=-fkeep-going)
2023-08-06 19:50:05 +0200taupiqueur(~taupiqueu@126.199.204.77.rev.sfr.net)
2023-08-06 19:50:30 +0200 <cole-k> geekosaur: Yes! That seems to work. Thank you!
2023-08-06 19:52:00 +0200 <cole-k> For posterity, the fix that worked for me was adding the ghc-option -fkeep-going to my package.yaml file (I'm compiling with stack).
2023-08-06 19:54:51 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-08-06 19:55:13 +0200gurkenglas(~gurkengla@dynamic-046-114-095-239.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-08-06 19:56:46 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-08-06 19:56:52 +0200alexherbo2(~alexherbo@2a02-8440-2240-0754-089c-9637-4186-a977.rev.sfr.net) (Remote host closed the connection)
2023-08-06 19:57:15 +0200alexherbo2(~alexherbo@2a02-8440-2240-0754-089c-9637-4186-a977.rev.sfr.net)
2023-08-06 20:00:33 +0200cole-k(~cole@cpe-104-32-238-223.socal.res.rr.com) (Ping timeout: 246 seconds)
2023-08-06 20:00:43 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-08-06 20:01:14 +0200simikando(~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Quit: Leaving)
2023-08-06 20:02:44 +0200 <Guest70> These are the only "major" changes I had to make to have the program seem to work as intended. But is this how I'm supposed to import?
2023-08-06 20:02:44 +0200 <Guest70> import Data.Vector ((!), (//), Vector)
2023-08-06 20:02:45 +0200 <Guest70> import qualified Data.Vector as V
2023-08-06 20:02:45 +0200 <Guest70> modifyBoard (x,y) p b = b // [(x, modRow)]
2023-08-06 20:02:46 +0200 <Guest70>     where modRow = b ! x // [(y, Just p)]
2023-08-06 20:04:59 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-08-06 20:05:41 +0200Lycurgus(~juan@user/Lycurgus)
2023-08-06 20:06:11 +0200 <monochrom> I personally prefer keeping it 1-dimensional and calculate my own 3*x+y or x+3*y.
2023-08-06 20:06:54 +0200 <monochrom> or else use Data.Array
2023-08-06 20:07:34 +0200doyougnu-(~doyougnu@45.46.170.68)
2023-08-06 20:07:46 +0200doyougnu(~doyougnu@45.46.170.68) (Ping timeout: 260 seconds)
2023-08-06 20:08:57 +0200 <EvanR> yes that is better
2023-08-06 20:09:07 +0200 <EvanR> for locality
2023-08-06 20:12:02 +0200 <[exa]> b..b...b..but z-order
2023-08-06 20:13:50 +0200danza(~francesco@ge-19-123-155.service.infuturo.it)
2023-08-06 20:17:02 +0200alexherbo2(~alexherbo@2a02-8440-2240-0754-089c-9637-4186-a977.rev.sfr.net) (Ping timeout: 246 seconds)
2023-08-06 20:17:33 +0200taupiqueur(~taupiqueu@126.199.204.77.rev.sfr.net) (Ping timeout: 246 seconds)
2023-08-06 20:18:30 +0200 <monochrom> I'm OK with z-order too. Just forgot the formula.
2023-08-06 20:19:19 +0200 <dolio> Z order is no good. You should use Hilbert's space filling curve.
2023-08-06 20:19:21 +0200 <monochrom> This is one of the rare right times when one can legitimately harp "it's just 3x3, doesn't matter".
2023-08-06 20:21:04 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 246 seconds)
2023-08-06 20:21:09 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2023-08-06 20:21:09 +0200 <[exa]> Z order index computation is like 3 instructions (you just mix the bits)
2023-08-06 20:21:21 +0200 <[exa]> hilbert is not as happy although it can be done
2023-08-06 20:22:01 +0200 <int-e> somebody is exated.
2023-08-06 20:23:30 +0200 <[exa]> (we should also have array organization holy wars.)
2023-08-06 20:23:55 +0200 <int-e> no we should not
2023-08-06 20:25:58 +0200 <dolio> Wikipedia gives some loop for calculating the Hilbert index, which seems bad. But I'm not sure it's worse than Z order unless you have dedicated instructions.
2023-08-06 20:26:21 +0200 <dolio> Is there some fast way to interleave the bits of two integers?
2023-08-06 20:26:23 +0200 <monochrom> You should use 18 bits for a tic-tac-toe board.
2023-08-06 20:26:25 +0200 <[exa]> dolio: https://github.com/exaexa/hilbert-curve-o1/blob/master/intbert.c
2023-08-06 20:26:41 +0200 <dolio> Oh geeze.
2023-08-06 20:26:44 +0200 <[exa]> (this is as far as I got)
2023-08-06 20:27:06 +0200 <int-e> > logBase 2 3 / 2
2023-08-06 20:27:08 +0200 <lambdabot> 0.7924812503605781
2023-08-06 20:27:26 +0200 <int-e> monochrom: 2 bytes, each holding 5 trits.
2023-08-06 20:27:28 +0200 <dolio> This is just unrolling the loop with lots of bit magic, right?
2023-08-06 20:28:24 +0200 <int-e> dolio: nah, it's also splitting moves into power-of-two steps, because then they can be done in parallel
2023-08-06 20:28:45 +0200 <monochrom> Yeah it does read like FFT...
2023-08-06 20:28:52 +0200 <dolio> Ah, okay.
2023-08-06 20:29:41 +0200 <monochrom> OK how about 18 bits but the order is Hilbert space curve >:)
2023-08-06 20:31:00 +0200 <monochrom> then run it through compression so it fits into 16 bits
2023-08-06 20:31:24 +0200 <[exa]> we're getting to cosmic scale tictactoe
2023-08-06 20:31:43 +0200nick4(~nick@2600:8807:9084:7800:8141:f2b0:61a7:53a9)
2023-08-06 20:36:12 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-08-06 20:36:12 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-08-06 20:36:12 +0200wroathe(~wroathe@user/wroathe)
2023-08-06 20:39:46 +0200justsomeguy(~justsomeg@user/justsomeguy)
2023-08-06 20:41:09 +0200danza(~francesco@ge-19-123-155.service.infuturo.it) (Ping timeout: 246 seconds)
2023-08-06 20:42:24 +0200simikando(~simikando@adsl-dyn-104.95-102-88.t-com.sk)
2023-08-06 20:48:42 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2023-08-06 20:48:43 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Tschüss)
2023-08-06 20:57:21 +0200Pickchea(~private@user/pickchea)
2023-08-06 21:06:12 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 246 seconds)
2023-08-06 21:08:22 +0200michalz(~michalz@185.246.207.215)
2023-08-06 21:12:58 +0200danza(~francesco@ge-19-123-155.service.infuturo.it)
2023-08-06 21:21:09 +0200trev(~trev@user/trev) (Quit: trev)
2023-08-06 21:26:44 +0200taupiqueur(~taupiqueu@71.198.204.77.rev.sfr.net)
2023-08-06 21:28:16 +0200alexherbo2(~alexherbo@2a02-8440-2241-6be6-0c27-c5f9-b118-a81f.rev.sfr.net)
2023-08-06 21:32:12 +0200johnw(~johnw@69.62.242.138)
2023-08-06 21:33:43 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-08-06 21:35:06 +0200ubert(~Thunderbi@178.115.57.241.wireless.dyn.drei.com) (Quit: ubert)
2023-08-06 21:35:06 +0200ubert1ubert
2023-08-06 21:48:54 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 246 seconds)
2023-08-06 21:51:49 +0200zeenk(~zeenk@2a02:2f04:a110:8d00::7fe)
2023-08-06 21:52:06 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 21:53:00 +0200danza(~francesco@ge-19-123-155.service.infuturo.it) (Ping timeout: 245 seconds)
2023-08-06 21:55:45 +0200simikando(~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Quit: Leaving)
2023-08-06 21:56:20 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds)
2023-08-06 22:00:25 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 240 seconds)
2023-08-06 22:02:38 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2023-08-06 22:07:38 +0200ddellacosta(~ddellacos@146.70.166.248) (Quit: WeeChat 4.0.2)
2023-08-06 22:10:35 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
2023-08-06 22:13:19 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-08-06 22:14:16 +0200img(~img@user/img)
2023-08-06 22:14:27 +0200danza(~francesco@ge-19-123-155.service.infuturo.it)
2023-08-06 22:17:55 +0200gurkenglas(~gurkengla@dynamic-046-114-095-239.46.114.pool.telefonica.de)
2023-08-06 22:18:24 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 22:22:35 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds)
2023-08-06 22:25:47 +0200oo_miguel(~oo_miguel@78-11-179-96.static.ip.netia.com.pl)
2023-08-06 22:25:59 +0200oo_miguel(~oo_miguel@78-11-179-96.static.ip.netia.com.pl) (Client Quit)
2023-08-06 22:26:13 +0200titibandit(~titibandi@user/titibandit)
2023-08-06 22:29:01 +0200mei(~mei@user/mei) (Quit: mei)
2023-08-06 22:29:39 +0200mei(~mei@user/mei)
2023-08-06 22:33:05 +0200justsomeguy(~justsomeg@user/justsomeguy)
2023-08-06 22:36:56 +0200titibandit(~titibandi@user/titibandit) (Read error: Connection reset by peer)
2023-08-06 22:42:15 +0200danza(~francesco@ge-19-123-155.service.infuturo.it) (Ping timeout: 246 seconds)
2023-08-06 22:43:47 +0200hugo-(znc@verdigris.lysator.liu.se) (Ping timeout: 258 seconds)
2023-08-06 22:44:34 +0200alexherbo2(~alexherbo@2a02-8440-2241-6be6-0c27-c5f9-b118-a81f.rev.sfr.net) (Remote host closed the connection)
2023-08-06 22:45:34 +0200Tlsx(~rscastilh@187.40.124.54) ()
2023-08-06 22:49:44 +0200pavonia(~user@user/siracusa)
2023-08-06 22:51:34 +0200hugo(znc@verdigris.lysator.liu.se)
2023-08-06 22:56:47 +0200fweht(uid404746@id-404746.lymington.irccloud.com)
2023-08-06 22:57:38 +0200michalz(~michalz@185.246.207.215) (Remote host closed the connection)
2023-08-06 23:03:15 +0200taupiqueur(~taupiqueu@71.198.204.77.rev.sfr.net) (Ping timeout: 246 seconds)
2023-08-06 23:04:39 +0200jmd_(~jmdaemon@user/jmdaemon)
2023-08-06 23:06:31 +0200danza(~francesco@ge-19-123-155.service.infuturo.it)
2023-08-06 23:12:08 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-08-06 23:12:08 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-08-06 23:12:08 +0200wroathe(~wroathe@user/wroathe)
2023-08-06 23:17:34 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-08-06 23:19:34 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-08-06 23:27:16 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 246 seconds)
2023-08-06 23:27:35 +0200danza(~francesco@ge-19-123-155.service.infuturo.it) (Ping timeout: 245 seconds)
2023-08-06 23:28:16 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-08-06 23:28:50 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2023-08-06 23:29:08 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it)
2023-08-06 23:33:00 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds)
2023-08-06 23:33:16 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net)
2023-08-06 23:33:25 +0200mima(~mmh@net-93-67-213-210.cust.vodafonedsl.it) (Ping timeout: 240 seconds)
2023-08-06 23:37:35 +0200arahael(~arahael@119-18-1-27.771201.syd.nbn.aussiebb.net) (Ping timeout: 245 seconds)
2023-08-06 23:39:49 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-08-06 23:40:42 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2023-08-06 23:40:57 +0200euandreh(~Thunderbi@189.6.18.7)
2023-08-06 23:41:12 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2023-08-06 23:46:52 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 246 seconds)
2023-08-06 23:47:44 +0200zeenk(~zeenk@2a02:2f04:a110:8d00::7fe) (Quit: Konversation terminated!)
2023-08-06 23:48:37 +0200acidjnk(~acidjnk@p200300d6e7072f078d7b2a00ab71d1ea.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-08-06 23:48:42 +0200bratwurst(~dfadsva@2604:3d09:207f:f650::c3b)
2023-08-06 23:57:02 +0200ijqq_(uid603979@id-603979.helmsley.irccloud.com)