2023/03/30

2023-03-30 00:00:07 +0200slac64539(~slack1256@186.11.6.152)
2023-03-30 00:01:17 +0200slack1256(~slack1256@181.43.56.176) (Read error: Connection reset by peer)
2023-03-30 00:04:03 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl) (Ping timeout: 250 seconds)
2023-03-30 00:04:31 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 00:05:40 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 00:10:53 +0200michalz(~michalz@185.246.207.221) (Remote host closed the connection)
2023-03-30 00:20:09 +0200turlando(~turlando@user/turlando) (Ping timeout: 255 seconds)
2023-03-30 00:22:20 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 00:23:20 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Client Quit)
2023-03-30 00:24:11 +0200_leo___(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2023-03-30 00:24:30 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 00:25:05 +0200turlando(~turlando@user/turlando)
2023-03-30 00:26:11 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-03-30 00:28:50 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 00:30:27 +0200slac64539slack1256
2023-03-30 00:31:38 +0200fnurglewitz(uid263868@id-263868.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-30 00:32:46 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 00:37:50 +0200slack1256(~slack1256@186.11.6.152) (Ping timeout: 252 seconds)
2023-03-30 00:40:11 +0200acidjnk(~acidjnk@p200300d6e715c4460569bb5c5405c3ef.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2023-03-30 00:42:06 +0200jakalx(~jakalx@base.jakalx.net) ()
2023-03-30 00:47:41 +0200gurkenglas(~gurkengla@dynamic-046-114-179-199.46.114.pool.telefonica.de) (Ping timeout: 265 seconds)
2023-03-30 00:56:11 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 01:00:53 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl)
2023-03-30 01:02:00 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-30 01:06:13 +0200jmorris(uid537181@id-537181.uxbridge.irccloud.com)
2023-03-30 01:08:25 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.8)
2023-03-30 01:09:46 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 01:10:32 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Client Quit)
2023-03-30 01:10:36 +0200chomwitt(~chomwitt@2a02:587:7a0f:e00:1ac0:4dff:fedb:a3f1) (Ping timeout: 260 seconds)
2023-03-30 01:11:57 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 01:12:55 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-03-30 01:12:55 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-03-30 01:12:55 +0200wroathe(~wroathe@user/wroathe)
2023-03-30 01:16:21 +0200mauke_(~mauke@user/mauke)
2023-03-30 01:18:08 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2023-03-30 01:18:10 +0200mauke(~mauke@user/mauke) (Ping timeout: 252 seconds)
2023-03-30 01:18:10 +0200mauke_mauke
2023-03-30 01:18:38 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-03-30 01:22:01 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.8)
2023-03-30 01:22:42 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Ping timeout: 255 seconds)
2023-03-30 01:22:55 +0200mncheck(~mncheck@193.224.205.254) (Ping timeout: 250 seconds)
2023-03-30 01:23:28 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 01:23:47 +0200haritz(~hrtz@user/haritz) (Read error: Connection reset by peer)
2023-03-30 01:24:45 +0200haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk)
2023-03-30 01:24:46 +0200haritz(~hrtz@82-69-11-11.dsl.in-addr.zen.co.uk) (Changing host)
2023-03-30 01:24:46 +0200haritz(~hrtz@user/haritz)
2023-03-30 01:28:51 +0200 <Axman6> ggVGc: it's quiet but #numerical-haskell might be helpful if you have questions
2023-03-30 01:34:52 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds)
2023-03-30 01:38:00 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds)
2023-03-30 01:40:35 +0200zeenk(~zeenk@2a02:2f04:a307:2300::fba) (Quit: Konversation terminated!)
2023-03-30 01:41:30 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-03-30 01:49:42 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 255 seconds)
2023-03-30 01:52:02 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-03-30 01:53:42 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.8)
2023-03-30 01:53:53 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: leaving)
2023-03-30 01:55:19 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 01:56:14 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.)
2023-03-30 02:02:27 +0200 <peddie> ggVGc: I have, I tend to use things like hmatrix-gsl for fitting, or hmatrix-nlopt if it's serious
2023-03-30 02:03:22 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.8)
2023-03-30 02:04:21 +0200 <peddie> ggVGc: in general, doing nontrivial numerical work in Haskell is an uphill battle on the library front
2023-03-30 02:04:45 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 02:06:48 +0200 <peddie> ggVGc: there are also partial bindings to Eigen for linear algebra; you won't get any of their template magic though
2023-03-30 02:08:09 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Client Quit)
2023-03-30 02:09:35 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 02:11:39 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-03-30 02:11:40 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-03-30 02:11:40 +0200wroathe(~wroathe@user/wroathe)
2023-03-30 02:15:53 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 02:21:53 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.8)
2023-03-30 02:22:21 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 02:23:15 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 02:24:51 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe) (Client Quit)
2023-03-30 02:26:16 +0200ix(~ix@2a02:8012:281f:0:d65d:64ff:fe52:5efe)
2023-03-30 02:29:09 +0200purlingstream(~godfibrat@178.70.110.196) (Quit: Leaving.)
2023-03-30 02:30:57 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-30 02:32:19 +0200Midjak(~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
2023-03-30 02:33:38 +0200hippoid(~hippoid@user/hippoid)
2023-03-30 02:34:25 +0200hippoid(~hippoid@user/hippoid) (Client Quit)
2023-03-30 02:36:04 +0200TonyStone(~TonyStone@cpe-74-76-57-186.nycap.res.rr.com)
2023-03-30 02:36:39 +0200ryanbooker(uid4340@id-4340.hampstead.irccloud.com)
2023-03-30 02:44:28 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 03:05:26 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 265 seconds)
2023-03-30 03:10:58 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-03-30 03:11:39 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-03-30 03:12:18 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 03:17:05 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-03-30 03:17:19 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-03-30 03:18:06 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 03:22:05 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-03-30 03:22:55 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 03:23:05 +0200nate4(~nate@98.45.169.16)
2023-03-30 03:23:14 +0200hippoid(~My_user_n@c-98-213-162-40.hsd1.il.comcast.net)
2023-03-30 03:23:28 +0200hippoid(~My_user_n@c-98-213-162-40.hsd1.il.comcast.net) (Changing host)
2023-03-30 03:23:28 +0200hippoid(~My_user_n@user/hippoid)
2023-03-30 03:27:43 +0200nate4(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2023-03-30 03:28:05 +0200gehmehgeh(~user@user/gehmehgeh)
2023-03-30 03:28:14 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-03-30 03:29:22 +0200oneeyedalien_(~oneeyedal@125-63-26-52.ip4.superloop.au)
2023-03-30 03:30:19 +0200oneeyedalien(~oneeyedal@125-63-26-114.ip4.superloop.au) (Ping timeout: 250 seconds)
2023-03-30 03:30:56 +0200gmg(~user@user/gehmehgeh) (Ping timeout: 255 seconds)
2023-03-30 03:31:19 +0200dipper(~dipper@117.61.126.31)
2023-03-30 03:36:52 +0200hsw_(~hsw@112-104-11-56.adsl.dynamic.seed.net.tw) (Quit: Leaving)
2023-03-30 03:37:06 +0200hsw(~hsw@2001-b030-2303-0104-0172-0025-0012-0132.hinet-ip6.hinet.net)
2023-03-30 03:45:44 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 03:47:22 +0200hippoid(~My_user_n@user/hippoid) (WeeChat 3.8)
2023-03-30 03:48:02 +0200hippoid(~My_user_n@c-98-213-162-40.hsd1.il.comcast.net)
2023-03-30 03:48:27 +0200hippoid(~My_user_n@c-98-213-162-40.hsd1.il.comcast.net) (Changing host)
2023-03-30 03:48:27 +0200hippoid(~My_user_n@user/hippoid)
2023-03-30 03:52:19 +0200notzmv(~zmv@user/notzmv)
2023-03-30 03:52:56 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-03-30 03:53:44 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 03:55:35 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-03-30 03:56:14 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-03-30 03:56:44 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Remote host closed the connection)
2023-03-30 04:00:19 +0200hippoid(~My_user_n@user/hippoid) (Quit: WeeChat 3.8)
2023-03-30 04:00:37 +0200hippoid(~My_user_n@c-98-213-162-40.hsd1.il.comcast.net)
2023-03-30 04:00:42 +0200hippoid(~My_user_n@c-98-213-162-40.hsd1.il.comcast.net) (Changing host)
2023-03-30 04:00:42 +0200hippoid(~My_user_n@user/hippoid)
2023-03-30 04:01:48 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl)
2023-03-30 04:02:20 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au) (Ping timeout: 260 seconds)
2023-03-30 04:02:30 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-30 04:04:16 +0200xff0x(~xff0x@2405:6580:b080:900:cbe1:7347:6fa3:48a6) (Ping timeout: 248 seconds)
2023-03-30 04:07:37 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2023-03-30 04:08:57 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 04:10:37 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 250 seconds)
2023-03-30 04:10:59 +0200[Leary](~Leary]@user/Leary/x-0910699) (Ping timeout: 264 seconds)
2023-03-30 04:12:16 +0200ph88(~ph88@91.66.101.83) (Ping timeout: 248 seconds)
2023-03-30 04:12:55 +0200dcoutts_(~duncan@host86-175-140-3.range86-175.btcentralplus.com)
2023-03-30 04:14:36 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 255 seconds)
2023-03-30 04:14:46 +0200oneeyedalien_(~oneeyedal@125-63-26-52.ip4.superloop.au) (Quit: Leaving)
2023-03-30 04:15:23 +0200dcoutts(~duncan@host86-151-44-234.range86-151.btcentralplus.com) (Ping timeout: 250 seconds)
2023-03-30 04:15:36 +0200oneeyedalien_(~oneeyedal@125-63-26-49.ip4.superloop.au)
2023-03-30 04:15:43 +0200oneeyedalien_(~oneeyedal@125-63-26-49.ip4.superloop.au) (Remote host closed the connection)
2023-03-30 04:16:25 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 252 seconds)
2023-03-30 04:16:34 +0200oneeyedalien(~oneeyedal@125-63-26-49.ip4.superloop.au)
2023-03-30 04:17:02 +0200nate4(~nate@98.45.169.16)
2023-03-30 04:17:50 +0200opticblast(~Thunderbi@172.58.84.111)
2023-03-30 04:19:22 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-03-30 04:19:22 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-03-30 04:19:22 +0200wroathe(~wroathe@user/wroathe)
2023-03-30 04:28:33 +0200td_(~td@i53870923.versanet.de) (Ping timeout: 255 seconds)
2023-03-30 04:30:26 +0200td_(~td@i53870922.versanet.de)
2023-03-30 04:32:25 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 04:36:39 +0200jero98772(~jero98772@2800:484:1d80:d8ce:5d95:bc81:c274:c339)
2023-03-30 04:44:07 +0200TonyStone(~TonyStone@cpe-74-76-57-186.nycap.res.rr.com) (Quit: Leaving)
2023-03-30 04:46:25 +0200ryanbooker(uid4340@id-4340.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-30 04:47:07 +0200jero98772(~jero98772@2800:484:1d80:d8ce:5d95:bc81:c274:c339) (Ping timeout: 248 seconds)
2023-03-30 04:50:04 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-03-30 04:52:30 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-03-30 04:52:30 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-03-30 04:52:30 +0200finn_elijaFinnElija
2023-03-30 04:52:47 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-03-30 04:57:34 +0200codaraxis(~codaraxis@user/codaraxis) (Ping timeout: 265 seconds)
2023-03-30 05:03:01 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl)
2023-03-30 05:03:31 +0200Xe(~cadey@tailscale/xe) (Remote host closed the connection)
2023-03-30 05:06:13 +0200Xe(~cadey@tailscale/xe)
2023-03-30 05:07:35 +0200dcoutts(~duncan@host86-175-140-3.range86-175.btcentralplus.com)
2023-03-30 05:09:33 +0200dcoutts_(~duncan@host86-175-140-3.range86-175.btcentralplus.com) (Ping timeout: 250 seconds)
2023-03-30 05:19:19 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2023-03-30 05:19:24 +0200nate4(~nate@98.45.169.16) (Ping timeout: 255 seconds)
2023-03-30 05:24:48 +0200trev(~trev@user/trev)
2023-03-30 05:37:15 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl) (Ping timeout: 248 seconds)
2023-03-30 05:55:50 +0200biberu(~biberu@user/biberu) (Read error: Connection reset by peer)
2023-03-30 05:55:51 +0200ddellacosta(~ddellacos@143.244.47.81) (Ping timeout: 255 seconds)
2023-03-30 05:57:39 +0200ddellacosta(~ddellacos@143.244.47.100)
2023-03-30 06:00:44 +0200biberu(~biberu@user/biberu)
2023-03-30 06:01:59 +0200m5zs7k(aquares@web10.mydevil.net) (Ping timeout: 250 seconds)
2023-03-30 06:03:46 +0200m5zs7k(aquares@web10.mydevil.net)
2023-03-30 06:06:37 +0200 <energizer> is there a generic zipWith that takes two functors?
2023-03-30 06:09:08 +0200 <ski> how would that work ?
2023-03-30 06:09:56 +0200 <energizer> like fmap, but takes two containers instead of one
2023-03-30 06:10:19 +0200msavoritias(cb716af6b3@irc.cheogram.com) (Ping timeout: 248 seconds)
2023-03-30 06:10:49 +0200 <c_wraith> I could swear I saw something like this recently
2023-03-30 06:11:17 +0200 <jade[m]> This requires information about the pairing
2023-03-30 06:11:24 +0200 <jade[m]> which does not exist for functors
2023-03-30 06:11:46 +0200 <ski> oh, you mean two containers, of the *same* sort .. saying "two functors" suggests they could be of different sorts
2023-03-30 06:12:11 +0200 <ski> (a container is not a functor. a container is a value-level thing, a functor is a type-level thing)
2023-03-30 06:13:24 +0200 <c_wraith> It's still sort of ambiguously defined. What would be the result of `zipF (1, 7) (2, "fish")'? By analogy with zip, that should typecheck, but then.. what's the result? (???, (7, "fish))
2023-03-30 06:14:26 +0200 <ski> > liftA2 (,) (Sum 1,7) (Sum 2,"fish")
2023-03-30 06:14:27 +0200 <lambdabot> (Sum {getSum = 3},(7,"fish"))
2023-03-30 06:14:41 +0200 <c_wraith> sure, fine. But that's not part of the Functor instance
2023-03-30 06:15:00 +0200 <ski> <https://hackage.haskell.org/package/base-4.18.0.0/docs/Control-Monad-Zip.html> might perhaps also be relevant
2023-03-30 06:15:01 +0200 <jade[m]> see the A ;)
2023-03-30 06:15:09 +0200 <c_wraith> the Applicative instance is what adds that Monoid dependency
2023-03-30 06:15:19 +0200 <ski> sure, but it can't be just a functor, with nothing more
2023-03-30 06:15:37 +0200 <energizer> is Traversable the right class to address the issue about the pairing?
2023-03-30 06:16:49 +0200 <c_wraith> Traversable is enough to implement *something*, but it's going to be awkward
2023-03-30 06:17:12 +0200codaraxis(~codaraxis@user/codaraxis)
2023-03-30 06:18:01 +0200 <energizer> just found https://ro-che.info/articles/2017-04-25-generic-zipWith
2023-03-30 06:19:09 +0200 <ski> also found <https://hackage.haskell.org/package/semialign-1.3/docs/Data-Zip.html>
2023-03-30 06:19:56 +0200mbuf(~Shakthi@49.207.178.186)
2023-03-30 06:20:04 +0200 <jade[m]> ski: This introduces the notion of alignment as I mentioned above with 'pairing'
2023-03-30 06:21:20 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au)
2023-03-30 06:22:22 +0200 <ski> (`exists a . c a => a' in that blag ought to be `exists a . c a *> a')
2023-03-30 06:24:21 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 06:34:36 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl)
2023-03-30 06:38:06 +0200jakalx(~jakalx@base.jakalx.net)
2023-03-30 06:41:01 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds)
2023-03-30 06:47:51 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 06:53:12 +0200 <jackdk> energizer: https://hackage.haskell.org/package/semialign-1.3/docs/Data-Zip.html perhaps?
2023-03-30 06:53:40 +0200 <energizer> jackdk: that's what ski said
2023-03-30 06:53:53 +0200 <jackdk> oh yeah
2023-03-30 07:04:15 +0200krei-se(~krei-se@p50874388.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
2023-03-30 07:04:16 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2023-03-30 07:05:35 +0200krei-se(~krei-se@31.6.9.221)
2023-03-30 07:08:19 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-03-30 07:10:34 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 07:12:06 +0200euandreh(~Thunderbi@189.6.18.7) (Remote host closed the connection)
2023-03-30 07:28:26 +0200chomwitt(~chomwitt@2a02:587:7a0f:e00:1ac0:4dff:fedb:a3f1)
2023-03-30 07:29:54 +0200opticblast(~Thunderbi@172.58.84.111) (Ping timeout: 255 seconds)
2023-03-30 07:33:56 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 07:36:01 +0200Square2(~Square4@user/square)
2023-03-30 07:36:05 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net)
2023-03-30 07:37:06 +0200dcoutts_(~duncan@host86-175-140-3.range86-175.btcentralplus.com)
2023-03-30 07:40:10 +0200dcoutts(~duncan@host86-175-140-3.range86-175.btcentralplus.com) (Ping timeout: 276 seconds)
2023-03-30 07:41:16 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 07:43:44 +0200msavoritias(cb716af6b3@irc.cheogram.com)
2023-03-30 07:46:05 +0200dcoutts(~duncan@host86-153-135-84.range86-153.btcentralplus.com)
2023-03-30 07:48:43 +0200dcoutts_(~duncan@host86-175-140-3.range86-175.btcentralplus.com) (Ping timeout: 252 seconds)
2023-03-30 07:52:34 +0200dcoutts(~duncan@host86-153-135-84.range86-153.btcentralplus.com) (Ping timeout: 252 seconds)
2023-03-30 07:52:43 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au) (Ping timeout: 248 seconds)
2023-03-30 07:58:20 +0200freeside(~mengwong@103.252.202.85) (Ping timeout: 265 seconds)
2023-03-30 08:00:31 +0200freeside(~mengwong@103.252.202.85)
2023-03-30 08:00:41 +0200taupiqueur(~taupiqueu@2a02-842a-8180-4601-61e9-795d-69be-482f.rev.sfr.net)
2023-03-30 08:05:00 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-03-30 08:05:31 +0200freeside(~mengwong@103.252.202.85) (Ping timeout: 276 seconds)
2023-03-30 08:10:19 +0200merijn(~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 248 seconds)
2023-03-30 08:11:38 +0200michalz(~michalz@185.246.207.203)
2023-03-30 08:12:07 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au)
2023-03-30 08:22:19 +0200freeside(~mengwong@202.161.55.11)
2023-03-30 08:24:13 +0200purlingstream(~godfibrat@178.70.110.196)
2023-03-30 08:34:14 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl)
2023-03-30 08:39:13 +0200mncheck(~mncheck@193.224.205.254)
2023-03-30 08:42:37 +0200merijn(~merijn@c-001-002-013.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2023-03-30 08:45:47 +0200krei-se(~krei-se@31.6.9.221) (Ping timeout: 250 seconds)
2023-03-30 08:47:31 +0200krei-se(~krei-se@p50874388.dip0.t-ipconnect.de)
2023-03-30 08:48:34 +0200shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 268 seconds)
2023-03-30 08:58:04 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de)
2023-03-30 09:00:22 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:a603:c2ac:ec03:9509)
2023-03-30 09:02:10 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-30 09:06:07 +0200inversed(~inversed@bcdcac82.skybroadband.com) (Ping timeout: 260 seconds)
2023-03-30 09:09:50 +0200inversed(~inversed@bcdcac82.skybroadband.com)
2023-03-30 09:11:13 +0200thegeekinside(~thegeekin@189.141.115.134) (Ping timeout: 252 seconds)
2023-03-30 09:15:25 +0200Square2Square
2023-03-30 09:20:30 +0200chanceyan(~chanceyan@user/chanceyan)
2023-03-30 09:24:05 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 246 seconds)
2023-03-30 09:30:57 +0200acidjnk(~acidjnk@p200300d6e715c4190569bb5c5405c3ef.dip0.t-ipconnect.de)
2023-03-30 09:33:07 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-30 09:34:23 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 09:36:20 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 09:36:50 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 09:40:45 +0200jade[m]uploaded an image: (36KiB) < https://libera.ems.host/_matrix/media/v3/download/the-apothecary.club/8196f607543d7de6e00488261ad4… >
2023-03-30 09:40:47 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-30 09:40:52 +0200 <jade[m]> hm I found a ghc error
2023-03-30 09:41:27 +0200AlexNoo(~AlexNoo@178.34.150.148) (Read error: Connection reset by peer)
2023-03-30 09:41:59 +0200 <Hecate> jade[m]: nice
2023-03-30 09:42:05 +0200AlexNoo(~AlexNoo@178.34.150.148)
2023-03-30 09:42:36 +0200jade[m]uploaded an image: (137KiB) < https://libera.ems.host/_matrix/media/v3/download/the-apothecary.club/79582c7632dc4e1701999391859b… >
2023-03-30 09:42:42 +0200 <jade[m]> Seems to happen for every hole
2023-03-30 09:42:53 +0200 <jade[m]> Not sure how I caused it
2023-03-30 09:43:08 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-03-30 09:43:54 +0200AlexNoo(~AlexNoo@178.34.150.148) (Read error: Connection reset by peer)
2023-03-30 09:45:23 +0200AlexNoo(~AlexNoo@178.34.150.148)
2023-03-30 09:46:00 +0200jmorris(uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2023-03-30 09:46:34 +0200merijn(~merijn@c-001-001-010.client.esciencecenter.eduvpn.nl)
2023-03-30 09:47:33 +0200 <Hecate> jade[m]: interesting, I don't have that with my local installation of 9.6
2023-03-30 09:48:30 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-03-30 09:55:53 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-30 09:56:18 +0200gensyst(~gensyst@user/gensyst)
2023-03-30 09:57:18 +0200chanceyan(~chanceyan@user/chanceyan) (Quit: Client closed)
2023-03-30 09:59:12 +0200 <gensyst> Nix/Haskell question: Where do I put system libraries? For the devShell ("nix develop") it's clear, I put it into nativeBuildInputs (line 45). But what about for "nix build"?
2023-03-30 09:59:13 +0200 <gensyst> https://github.com/cdepillabout/example-haskell-nix-flake/blob/8c5d1de69f215e43fa224ea6ef9bf4e77de…
2023-03-30 09:59:21 +0200 <gensyst> I'm confused but you can probably spot the answer immediately.
2023-03-30 10:04:55 +0200ski(~ski@remote12.chalmers.se) (Ping timeout: 260 seconds)
2023-03-30 10:08:50 +0200ski(~ski@remote12.chalmers.se)
2023-03-30 10:11:06 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 10:13:47 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 10:19:05 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Remote host closed the connection)
2023-03-30 10:22:54 +0200[Leary](~Leary]@user/Leary/x-0910699)
2023-03-30 10:26:46 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:f50d:2c7d:3d65:e75)
2023-03-30 10:29:08 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de) (Quit: leaving)
2023-03-30 10:32:14 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-30 10:33:27 +0200gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2023-03-30 10:34:13 +0200gehmehgeh(~user@user/gehmehgeh)
2023-03-30 10:34:33 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-30 10:36:12 +0200comerijn(~merijn@195.114.232.94)
2023-03-30 10:39:21 +0200merijn(~merijn@c-001-001-010.client.esciencecenter.eduvpn.nl) (Ping timeout: 255 seconds)
2023-03-30 10:41:29 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 10:41:47 +0200__monty__(~toonn@user/toonn)
2023-03-30 10:42:24 +0200ccapndave(~ccapndave@xcpe-62-167-164-99.cgn.res.adslplus.ch)
2023-03-30 10:44:27 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 10:53:00 +0200cryptosopher666(~cryptosop@2a01:5ec0:1808:1ea6:5918:a57a:6ed0:4239)
2023-03-30 10:54:19 +0200ccapndave(~ccapndave@xcpe-62-167-164-99.cgn.res.adslplus.ch) (Quit: Textual IRC Client: www.textualapp.com)
2023-03-30 10:54:25 +0200mncheck(~mncheck@193.224.205.254) (Read error: Connection reset by peer)
2023-03-30 10:54:58 +0200cryptosopher6666(~cryptosop@2a01:4f8:1c1c:7c03::1)
2023-03-30 10:55:04 +0200 <cryptosopher6666> hi im trying to solve a practice from book, here are my codes:
2023-03-30 10:55:30 +0200ubert(~Thunderbi@2a02:8109:abc0:6434:ca5b:76ff:fe29:f233)
2023-03-30 10:55:36 +0200 <cryptosopher6666> module Curry where
2023-03-30 10:55:36 +0200 <cryptosopher6666> curry :: String
2023-03-30 10:55:37 +0200 <cryptosopher6666> curry = "curry is awesome!"
2023-03-30 10:55:37 +0200 <cryptosopher6666> main :: IO ()
2023-03-30 10:55:38 +0200 <cryptosopher6666> main = do
2023-03-30 10:55:38 +0200 <cryptosopher6666>  putStrLn curry
2023-03-30 10:55:39 +0200 <cryptosopher6666>     where curry = "curry is awesome!" !! 4
2023-03-30 10:55:59 +0200 <cryptosopher6666> but im recieving this error on ghci
2023-03-30 10:56:24 +0200 <cryptosopher6666> practice.hs:8:11: error:
2023-03-30 10:56:25 +0200 <cryptosopher6666>     * Couldn't match type `Char' with `[Char]'
2023-03-30 10:56:25 +0200 <cryptosopher6666>       Expected: String
2023-03-30 10:56:26 +0200 <cryptosopher6666>         Actual: Char
2023-03-30 10:56:26 +0200 <cryptosopher6666>     * In the first argument of `putStrLn', namely `curry'
2023-03-30 10:56:27 +0200 <cryptosopher6666>       In a stmt of a 'do' block: putStrLn curry
2023-03-30 10:56:27 +0200 <cryptosopher6666>       In the expression: do putStrLn curry
2023-03-30 10:56:28 +0200 <cryptosopher6666>   |
2023-03-30 10:56:28 +0200 <cryptosopher6666> 8 | putStrLn curry
2023-03-30 10:56:29 +0200 <cryptosopher6666>   | ^^^^^
2023-03-30 10:56:29 +0200 <cryptosopher6666> Failed, no modules loaded.
2023-03-30 10:56:51 +0200 <mauke> what did you expect to happen?
2023-03-30 10:56:51 +0200 <gensyst> cryptosopher6666, please don't flood (it's not how things are done on IRC) - use e.g. dpaste.com instead
2023-03-30 10:57:03 +0200 <mauke> and yeah, pasting into IRC is not a great idea
2023-03-30 10:57:19 +0200 <cryptosopher6666> sorry im new here
2023-03-30 10:57:33 +0200cryptosopher666(~cryptosop@2a01:5ec0:1808:1ea6:5918:a57a:6ed0:4239) (Ping timeout: 260 seconds)
2023-03-30 10:57:59 +0200 <cryptosopher6666> just wanna print "y" from "curry is awesome!"
2023-03-30 10:58:17 +0200 <mauke> ah
2023-03-30 10:58:39 +0200 <mauke> as the error message says, "curry" !! 4 is a Char, not a String
2023-03-30 10:58:47 +0200 <mauke> and putStrLn takes a String
2023-03-30 10:59:28 +0200 <cryptosopher6666> so whats the solution?
2023-03-30 10:59:32 +0200 <mauke> (String is defined as [Char], i.e. a list of Char, which is why you see both String and [Char] in the message)
2023-03-30 11:00:03 +0200tjnhxmzhmqgytuwt(~tjnhxmzhm@2001:470:69fc:105::3:70e) (Quit: You have been kicked for being idle)
2023-03-30 11:00:15 +0200 <mauke> either use putChar to output a Char, or wrap the character in a list, so you get a String again
2023-03-30 11:01:08 +0200 <mauke> so: main = do { putChar curry; putChar '\n' } where curry = "curry is awewsome" !! 4
2023-03-30 11:01:33 +0200 <mauke> or: main = putStrLn [curry] where curry = "curry is awesome" !! 4
2023-03-30 11:01:47 +0200 <mauke> or: main = putStrLn curry where curry = ["cury is awesome" !! 4]
2023-03-30 11:02:05 +0200 <cryptosopher6666> i got that
2023-03-30 11:02:09 +0200 <cryptosopher6666> thanks
2023-03-30 11:02:37 +0200 <mauke> dang, the last one should say "curry", not "cury" :-)
2023-03-30 11:03:26 +0200 <cryptosopher6666> yeah it worked as i didnt copy and just edited my code
2023-03-30 11:04:02 +0200 <cryptosopher6666> im using Atom which other free editor you guys recommend?
2023-03-30 11:06:17 +0200 <mauke> not sure I would recommend it, but I use vim
2023-03-30 11:06:51 +0200 <probie> Most people seem to use either emacs, vim, neovim, or vscod{e,ium}
2023-03-30 11:10:26 +0200`2jt(~user@static-64-183-27-46.ipcom.comunitel.net)
2023-03-30 11:15:18 +0200NiceBird(~NiceBird@185.133.111.196)
2023-03-30 11:16:56 +0200nate4(~nate@98.45.169.16)
2023-03-30 11:19:02 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de) (Ping timeout: 268 seconds)
2023-03-30 11:19:35 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-30 11:20:47 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de)
2023-03-30 11:21:55 +0200nate4(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2023-03-30 11:24:14 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Ping timeout: 265 seconds)
2023-03-30 11:24:45 +0200dcoutts(~duncan@cpc116374-oxfd27-2-0-cust191.4-3.cable.virginm.net)
2023-03-30 11:27:12 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de) (Ping timeout: 252 seconds)
2023-03-30 11:30:19 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 11:31:03 +0200 <absence> why does this contrived test case result in a type mismatch? https://play.haskell.org/saved/PjNIVJU5
2023-03-30 11:33:38 +0200jinsun__(~jinsun@user/jinsun)
2023-03-30 11:33:38 +0200jinsunGuest6247
2023-03-30 11:33:38 +0200Guest6247(~jinsun@user/jinsun) (Killed (zinc.libera.chat (Nickname regained by services)))
2023-03-30 11:33:38 +0200jinsun__jinsun
2023-03-30 11:33:49 +0200AndreiDuma(~textual@84.117.11.64)
2023-03-30 11:34:15 +0200jinsun(~jinsun@user/jinsun) (Read error: Connection reset by peer)
2023-03-30 11:34:30 +0200jinsun(~jinsun@user/jinsun)
2023-03-30 11:36:11 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com) (Ping timeout: 248 seconds)
2023-03-30 11:37:23 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Quit: Textual IRC Client: www.textualapp.com)
2023-03-30 11:37:56 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com)
2023-03-30 11:38:17 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-03-30 11:39:05 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-30 11:39:18 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de)
2023-03-30 11:39:18 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2023-03-30 11:43:53 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 11:44:50 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net)
2023-03-30 11:45:57 +0200gehmehgehgmg
2023-03-30 11:52:11 +0200chomwitt(~chomwitt@2a02:587:7a0f:e00:1ac0:4dff:fedb:a3f1) (Ping timeout: 248 seconds)
2023-03-30 11:54:11 +0200 <probie> absence: How can it know if `x` is an `A` or not?
2023-03-30 11:54:12 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 265 seconds)
2023-03-30 11:54:58 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au) (Ping timeout: 255 seconds)
2023-03-30 11:56:34 +0200 <probie> It'd need to reason about the type class `Test2` and know there's an instance for `A -> y` and deduce that `x is not an A`, which I'm fairly sure it's not allowed to do
2023-03-30 11:58:24 +0200titibandit(~titibandi@user/titibandit)
2023-03-30 12:02:32 +0200 <absence> probie: i thought that if x was A, it wouldn't be in that instance to begin with, but the other one instead?
2023-03-30 12:06:12 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 255 seconds)
2023-03-30 12:08:08 +0200 <probie> What it's typechecking is `test :: C -> (x -> y) -> Test (x -> y)`. That `x` isn't `A` simply isn't in the type signature so it can't work out what to rewrite `Test (x -> y)` to
2023-03-30 12:09:15 +0200`2jt(~user@static-64-183-27-46.ipcom.comunitel.net) (Remote host closed the connection)
2023-03-30 12:09:35 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 12:16:54 +0200 <absence> probie: i see. is there a different way to do one thing for a specific type, and something else otherwise?
2023-03-30 12:18:28 +0200cryptosopher6666(~cryptosop@2a01:4f8:1c1c:7c03::1) (Quit: Client closed)
2023-03-30 12:19:55 +0200gensyst(~gensyst@user/gensyst) (Ping timeout: 248 seconds)
2023-03-30 12:20:10 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2023-03-30 12:21:33 +0200 <tomsmeding> absence: that's hard to do in a predictable and sound way
2023-03-30 12:23:17 +0200 <tomsmeding> what must happen you're trying to call "foo :: Test2 (x -> y) => Int", but you yourself only have an 'a -> b'
2023-03-30 12:23:29 +0200 <tomsmeding> you'd need to do some sort of type-level case on that 'a' to be able to call foo
2023-03-30 12:23:41 +0200 <tomsmeding> haskell doesn't have type-level case :p
2023-03-30 12:24:32 +0200freeside(~mengwong@202.161.55.11) (Ping timeout: 248 seconds)
2023-03-30 12:27:04 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de) (Ping timeout: 265 seconds)
2023-03-30 12:28:20 +0200 <tomsmeding> in general haskell doesn't really support making an instance for "all types that are _not_ T"
2023-03-30 12:31:55 +0200titibandit(~titibandi@user/titibandit) (Ping timeout: 260 seconds)
2023-03-30 12:32:53 +0200vpan(~0@212.117.1.172)
2023-03-30 12:33:29 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de)
2023-03-30 12:41:57 +0200zer0bitz(~zer0bitz@2001:2003:f443:d600:b94a:fdf5:9dc3:ac65)
2023-03-30 12:47:41 +0200cryptosopher666(~cryptosop@2a01:4f8:1c1c:7c03::1)
2023-03-30 12:48:06 +0200oneeyedalien(~oneeyedal@125-63-26-49.ip4.superloop.au) (Quit: Leaving)
2023-03-30 12:48:27 +0200 <absence> tomsmeding: that makes sense, but it seems to be possible to work around that in certain cases, for example when filtering a hetrogenous list by type: https://stackoverflow.com/questions/9396023/haskell-filtering-a-heterogenous-list-by-type
2023-03-30 12:49:24 +0200 <cryptosopher666> how will you complete that i i wanna it to pick 3rd charracter in as sentence? https://paste.tomsmeding.com/VQwXOH2M
2023-03-30 12:49:27 +0200 <absence> tomsmeding: that example is only removing something though, while i want to replace something, so that might be different enough for it to be difficult
2023-03-30 12:51:54 +0200chomwitt(~chomwitt@ppp-94-69-24-223.home.otenet.gr)
2023-03-30 12:52:41 +0200mikoto-chan(~mikoto-ch@2001:999:504:226f:5637:bb9d:1573:3be6)
2023-03-30 12:52:42 +0200 <cryptosopher666> im stucked at this exercise
2023-03-30 12:53:20 +0200 <absence> cryptosopher666: i'm not sure if it's a rendering issue, but it looks like there's nothing there to complete? just the name of the function?
2023-03-30 12:54:24 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de) (Ping timeout: 248 seconds)
2023-03-30 12:55:09 +0200 <hippoid> I have two exposed modules in the library stanza of my .cabal file. when I do `cabal repl`, only the top level binding from the first exposed module are available. how do I get all of the bindings from the exposed modules auto loaded in a cabal repl session?
2023-03-30 12:56:05 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de)
2023-03-30 12:56:27 +0200 <cryptosopher666> absence i made this like this but still doesnt do the work i want https://paste.tomsmeding.com/VEgArItK
2023-03-30 12:57:13 +0200AndreiDuma(~textual@84.117.11.64) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2023-03-30 12:57:42 +0200AndreiDuma(~textual@84.117.11.64)
2023-03-30 12:58:08 +0200vpan(~0@212.117.1.172) (Ping timeout: 248 seconds)
2023-03-30 12:58:36 +0200 <absence> cryptosopher666: that certainly looks like it would return the third character (or crash if the string is short)
2023-03-30 12:59:22 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de)
2023-03-30 12:59:25 +0200AndreiDuma(~textual@84.117.11.64) (Read error: Connection reset by peer)
2023-03-30 12:59:27 +0200 <absence> what are you seeing, and what do you expect to see?
2023-03-30 13:00:23 +0200 <cryptosopher666> absence but it doesnt work for letters and when i put numbers it print the whole number let me send you the error i get when i put charracters
2023-03-30 13:00:43 +0200 <cryptosopher666> i wanna just pick 3rd charracter
2023-03-30 13:02:50 +0200 <cryptosopher666> absence  https://paste.tomsmeding.com/DJ8flah0
2023-03-30 13:03:26 +0200mjacob(~mjacob@adrastea.uberspace.de) (Read error: Connection reset by peer)
2023-03-30 13:04:13 +0200 <absence> :t curry
2023-03-30 13:04:13 +0200feliix42(~felix@gibbs.uberspace.de) (Read error: Connection reset by peer)
2023-03-30 13:04:14 +0200AWizzArd(~code@user/awizzard) (Read error: Connection reset by peer)
2023-03-30 13:04:14 +0200 <lambdabot> ((a, b) -> c) -> a -> b -> c
2023-03-30 13:04:28 +0200 <absence> the curry function takes several parameters
2023-03-30 13:05:35 +0200 <cryptosopher666> ok then when i put it into "" it print the whole word
2023-03-30 13:05:48 +0200 <absence> the error message you get is because ghci tries to "print" the resulting values of what you type in, and functions can't be printed (as the technical error message says, they don't have an instance of the "Show" typeclass)
2023-03-30 13:05:51 +0200 <cryptosopher666> i just wanna 3rd letter
2023-03-30 13:06:20 +0200 <absence> > "12345" !! 2
2023-03-30 13:06:21 +0200 <lambdabot> '3'
2023-03-30 13:06:26 +0200 <absence> you already had something like this, right?
2023-03-30 13:06:44 +0200 <absence> in the thirdLetter function
2023-03-30 13:06:56 +0200 <absence> so i'm not sure what the problem is
2023-03-30 13:06:57 +0200 <tomsmeding> absence: https://play.haskell.org/saved/S94XYNUC
2023-03-30 13:07:23 +0200feliix42(~felix@gibbs.uberspace.de)
2023-03-30 13:07:44 +0200xff0x(~xff0x@2405:6580:b080:900:4737:f344:4be5:fdc7)
2023-03-30 13:08:12 +0200 <cryptosopher666> absence i wanna make this code to work like if i type "absence" it print s
2023-03-30 13:09:26 +0200mjacob(~mjacob@adrastea.uberspace.de)
2023-03-30 13:10:11 +0200AWizzArd(~code@gehrels.uberspace.de)
2023-03-30 13:10:18 +0200 <absence> tomsmeding: oh wow, is putting the return type in the constraint the trick that lets the type checker see what's going on?
2023-03-30 13:10:40 +0200 <absence> cryptosopher666: what do you want it to print?
2023-03-30 13:10:57 +0200 <tomsmeding> absence: well you needed the superclass constraint anyway, with your current code you'd be getting 'Test y y' constraints from the recursive calls
2023-03-30 13:11:05 +0200 <tomsmeding> so that's why the y y' was necessary
2023-03-30 13:11:38 +0200 <tomsmeding> the actual trick was using MultiParamTypeClasses instead of type families, because you wanted overlapping instances and having the type family work with that
2023-03-30 13:12:09 +0200 <tomsmeding> closed type families and overlapping instances both give a sort of most-specific-first behaviour, but independently -- using multiparam TCs they have that behaviour together
2023-03-30 13:12:14 +0200 <cryptosopher666> absence i wanna it return 3rd letter in every sentence i write
2023-03-30 13:12:22 +0200phma_(~phma@host-67-44-208-13.hnremote.net)
2023-03-30 13:13:51 +0200phma(phma@2001:5b0:215d:c628:9b19:4f9d:931f:c02e) (Read error: Connection reset by peer)
2023-03-30 13:14:24 +0200CiaoSen(~Jura@p200300c9571fe6002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2023-03-30 13:15:16 +0200 <absence> tomsmeding: ahh, i did get some strange "can't match x with x0" or similar errors while trying different solutions, and that sounds like it could be due to the independence you mention. that's a very helpful explanation regardless, thanks!
2023-03-30 13:16:06 +0200 <tomsmeding> absence: I tried putting the type family as an associated type family instead, but that didn't work either because then it becomes an open type family, not inheriting the overlapping behaviour of the enclosing type class
2023-03-30 13:16:27 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com) (Ping timeout: 248 seconds)
2023-03-30 13:16:34 +0200 <tomsmeding> absence: are you sure those "x with x0" errors wouldn't be because of the missing y'?
2023-03-30 13:16:49 +0200 <tomsmeding> oh wait you didn't _have_ a missing y'
2023-03-30 13:16:59 +0200 <tomsmeding> my intermediate code did :P
2023-03-30 13:17:01 +0200 <tomsmeding> ignore that
2023-03-30 13:18:52 +0200 <absence> tomsmeding: i started with an associated one as well, and ran into the same problem :)
2023-03-30 13:20:00 +0200 <mauke> cryptosopher666: curry is the name of a function from the standard library
2023-03-30 13:20:27 +0200 <mauke> as for the rest, I can't tell what your actual issue or question is
2023-03-30 13:20:34 +0200euandreh(~Thunderbi@189.6.18.7)
2023-03-30 13:21:26 +0200 <absence> cryptosopher666: i think i understand. you want a loop that continuously asks the user for input, and prints the third letter? check out functions like "getLine", and "print" or "putStrLn"
2023-03-30 13:22:15 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de) (Ping timeout: 255 seconds)
2023-03-30 13:22:56 +0200phma_phma
2023-03-30 13:23:06 +0200 <[Leary]> They probably want `putChar`.
2023-03-30 13:23:20 +0200 <cryptosopher666> absence thats exactly what i want, its a beginner practice from a book that im learning from that, i tried to write with "putStrLn" many time and failed
2023-03-30 13:23:53 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de)
2023-03-30 13:24:00 +0200 <cryptosopher666> [Leary] havent learn "putChar" yet
2023-03-30 13:24:06 +0200euandreh(~Thunderbi@189.6.18.7) (Remote host closed the connection)
2023-03-30 13:24:17 +0200 <[Leary]> % print 'c'; putStrLn "c"; putChar 'c'
2023-03-30 13:24:17 +0200 <yahb2> <interactive>:6:1: error: ; Parse error: module header, import declaration ; or top-level declaration expected.
2023-03-30 13:24:31 +0200 <[Leary]> % do { print 'c'; putStrLn "c"; putChar 'c' }
2023-03-30 13:24:31 +0200 <yahb2> 'c' ; c ; c
2023-03-30 13:25:42 +0200 <mauke> % putStrLn ['c']
2023-03-30 13:25:42 +0200 <yahb2> c
2023-03-30 13:25:53 +0200 <cryptosopher666> i dont understand what you say maybe i should pass this and try later
2023-03-30 13:25:55 +0200euandreh(~Thunderbi@189.6.18.7)
2023-03-30 13:26:13 +0200 <mauke> % do { putStrLn ["hello" !! 2] }
2023-03-30 13:26:13 +0200 <yahb2> l
2023-03-30 13:27:07 +0200 <mauke> :t interact (unlines . map (take 1 . drop 2) . lines)
2023-03-30 13:27:08 +0200 <lambdabot> IO ()
2023-03-30 13:28:14 +0200 <absence> cryptosopher666: you say you tried to use putStrLn many times and failed, but we can't help you unless you say what you tried, and how it failed
2023-03-30 13:28:24 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com)
2023-03-30 13:31:21 +0200 <cryptosopher666> absence i tried this https://paste.tomsmeding.com/z0kf3YlD and got this error https://paste.tomsmeding.com/dAIF456F
2023-03-30 13:33:07 +0200 <mauke> that's because you can't just put expressions in modules
2023-03-30 13:33:18 +0200 <mauke> also, if you could, 'x' would be undefined
2023-03-30 13:33:50 +0200 <mauke> % putStrLn x
2023-03-30 13:33:50 +0200 <yahb2> <interactive>:18:10: error: Variable not in scope: x :: String
2023-03-30 13:38:15 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl)
2023-03-30 13:38:23 +0200paddymahoney(~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com)
2023-03-30 13:38:27 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au)
2023-03-30 13:39:24 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl) (Client Quit)
2023-03-30 13:39:30 +0200 <absence> cryptosopher666: in haskell you can't call functions at the top level, like in scripting languages. do you have a "main" function? that's probably where you should call it
2023-03-30 13:40:56 +0200noctux(~noctux@user/noctux) (Read error: Connection reset by peer)
2023-03-30 13:41:13 +0200noctux(~noctux@user/noctux)
2023-03-30 13:41:19 +0200comerijn(~merijn@195.114.232.94) (Ping timeout: 250 seconds)
2023-03-30 13:45:05 +0200 <cryptosopher666> absence i tried this too https://paste.tomsmeding.com/p3LDcRfN and got this error https://paste.tomsmeding.com/N7URnQaY
2023-03-30 13:46:17 +0200lyle(~lyle@104.246.145.237)
2023-03-30 13:47:53 +0200CiaoSen(~Jura@p200300c9571fe6002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Quit: CiaoSen)
2023-03-30 13:52:06 +0200 <absence> cryptosopher666: you are setting the value "x" to "main", so essentially your code says "putStrLn main". that doesn't work, because main is a function, and putStrLn expects a string
2023-03-30 13:52:39 +0200titibandit(~titibandi@user/titibandit)
2023-03-30 13:52:40 +0200 <absence> cryptosopher666: just to get the ball rolling, try putStrLn "hello"
2023-03-30 13:52:47 +0200AndreiDuma(~textual@84.117.11.64)
2023-03-30 13:54:43 +0200 <cryptosopher666> absence it worked without error but nothing that i was expected, when i write main it print hello
2023-03-30 13:55:13 +0200 <cryptosopher666> https://paste.tomsmeding.com/q8aAEwgd
2023-03-30 13:55:20 +0200mikoto-chan(~mikoto-ch@2001:999:504:226f:5637:bb9d:1573:3be6) (Quit: WeeChat 3.7.1)
2023-03-30 13:59:22 +0200gurkenglas(~gurkengla@dynamic-046-114-181-214.46.114.pool.telefonica.de) (Ping timeout: 268 seconds)
2023-03-30 14:02:07 +0200 <absence> cryptosopher666: did you look into the "getLine" function i mentioned earlier? it reads input from the user
2023-03-30 14:03:47 +0200 <cryptosopher666> absence nope i think i should do this practice with all i learned, i should write a function to do that
2023-03-30 14:05:15 +0200 <absence> i don't know what you have learned, but if you want to act on user input, you need some way of getting user input. if you have learned something else that does that, you can use it instead
2023-03-30 14:07:52 +0200 <cryptosopher666> ok thanks buddy
2023-03-30 14:09:11 +0200`2jt(~user@static-64-183-27-46.ipcom.comunitel.net)
2023-03-30 14:09:39 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 14:09:53 +0200cryptosopher666(~cryptosop@2a01:4f8:1c1c:7c03::1) (Quit: Client closed)
2023-03-30 14:12:31 +0200titibandit(~titibandi@user/titibandit) (Quit: Lost terminal)
2023-03-30 14:14:59 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-03-30 14:21:06 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-03-30 14:21:10 +0200vpan(~0@212.117.1.172)
2023-03-30 14:21:34 +0200vpanGuest3400
2023-03-30 14:22:09 +0200Guest3400vpan
2023-03-30 14:22:57 +0200 <Profpatsch> Can I have a boolean enum which is something like data NamedBool = B1 (l :: Symbol) | B2 (l :: Symbol) ?
2023-03-30 14:23:43 +0200 <zzz> is ImportQualifiedPost standard with recent versions of ghc or did i dream this?
2023-03-30 14:24:45 +0200 <Profpatsch> zzz: I don’t think so
2023-03-30 14:24:53 +0200 <Axman6> 9Sadly
2023-03-30 14:25:11 +0200 <Profpatsch> It would be a pretty useless breaking change
2023-03-30 14:25:25 +0200 <Profpatsch> GIven that people can just enable it with low overhead in their project
2023-03-30 14:25:26 +0200 <geekosaur> GHC2021 includes it, actually
2023-03-30 14:25:31 +0200 <Profpatsch> geekosaur: Ah!
2023-03-30 14:25:33 +0200 <Profpatsch> that’s cool
2023-03-30 14:25:39 +0200 <Axman6> how is it a breaking change?
2023-03-30 14:25:49 +0200 <geekosaur> which means it'll be default if a different language level isn't specified
2023-03-30 14:25:56 +0200 <Axman6> it doesn't prevent the older syntax right?
2023-03-30 14:25:57 +0200 <Profpatsch> Axman6: Is leading qualified still allowed with QualifiedPost?
2023-03-30 14:26:03 +0200 <Axman6> yes
2023-03-30 14:26:03 +0200 <Profpatsch> Axman6: Okay, then nvm :P
2023-03-30 14:26:05 +0200 <Axman6> afair
2023-03-30 14:28:07 +0200 <zzz> geekosaur: thanks that was it
2023-03-30 14:31:56 +0200fr33domlover(~fr33domlo@towards.vision) (Quit: The Lounge - https://thelounge.chat)
2023-03-30 14:32:00 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
2023-03-30 14:32:45 +0200 <Profpatsch> Okay back to my question; I have an Either-isomorphic type like data E2 (l1 :: Symbol) t2 (l2 :: Symbol t2 = E21 t1 | E22 t2
2023-03-30 14:32:53 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 14:33:25 +0200 <Profpatsch> And I’d like to create a boolean discriminator function, which can ideally take a Symbol on the type level
2023-03-30 14:33:59 +0200 <Profpatsch> So if I have an e2 :: E2 "foo" Int "bar" Char I’d like to be able to say something like e2Was @"foo" e2 :: Bool
2023-03-30 14:34:09 +0200 <Profpatsch> But idk if that’s possible
2023-03-30 14:34:23 +0200 <Profpatsch> Maybe via kind-level either?
2023-03-30 14:34:32 +0200fr33domlover(~fr33domlo@towards.vision)
2023-03-30 14:34:36 +0200 <Profpatsch> e2Was (Left @"foo") e2 :: Bool
2023-03-30 14:35:11 +0200 <zzz> Profpatsch: i think you have a typo in your data declaration
2023-03-30 14:35:24 +0200 <Profpatsch> zzz: yeah the paren needs to be closed ofc
2023-03-30 14:35:50 +0200 <Profpatsch> fwiw the full definition is in https://gist.github.com/Profpatsch/c1992885fd28294968c549e2237ced3f
2023-03-30 14:37:00 +0200 <Profpatsch> these labelled ADTs have an amazing cost/benefit ratio
2023-03-30 14:38:31 +0200 <zzz> how exactly are these labels useful to you?
2023-03-30 14:40:04 +0200 <Profpatsch> zzz: Either Text Text vs E2 "failedMsg" Text "result" Text
2023-03-30 14:41:13 +0200 <zzz> i'm not sure you should be listening to me but is this something you can't do with GADTs and pgantom types?
2023-03-30 14:41:26 +0200 <Profpatsch> zzz: Yeah, I’m thinking something along those lines
2023-03-30 14:41:42 +0200 <Profpatsch> Because this is really getting into dependent territorry
2023-03-30 14:42:43 +0200gingin(~eugen@66.23.87.252)
2023-03-30 14:43:37 +0200 <Profpatsch> I think I’m gonna go for a triumvirate of functions instead
2023-03-30 14:44:01 +0200 <Profpatsch> Which is the nice part about being specfic instead of going full type level list (which gets unergonomic real fast in Haskell)
2023-03-30 14:45:30 +0200 <Profpatsch> getE21 :: E2 l1 t1 l2 t2 -> Maybe t1, getE22 :: …, wasE21 :: … -> Bool and wasE22 :: … -> Bool
2023-03-30 14:46:19 +0200rburkholder(~blurb@96.45.2.121)
2023-03-30 14:48:32 +0200`2jt(~user@static-64-183-27-46.ipcom.comunitel.net) (Ping timeout: 246 seconds)
2023-03-30 14:49:03 +0200 <[Leary]> Profpatsch: You can write something like `eq :: forall a b. (Typeable a, Typeable b) => Bool` with Data.Type.Equality and AllowAmbiguousTypes.
2023-03-30 14:49:05 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2023-03-30 14:49:40 +0200 <[Leary]> Something similar would give you what you want, I think.
2023-03-30 14:49:58 +0200SelenaSilverstep(~SelenaSil@2405:4802:9012:c660:dd99:c721:1d93:2b1c)
2023-03-30 14:51:28 +0200 <tomsmeding> Profpatsch: is the thing you're stuck on your e2Was?
2023-03-30 14:51:33 +0200 <[Leary]> Or something simpler with `KnownSymbol`.
2023-03-30 14:51:56 +0200SelenaSilverstep(~SelenaSil@2405:4802:9012:c660:dd99:c721:1d93:2b1c) (Client Quit)
2023-03-30 14:52:42 +0200 <Profpatsch> tomsmeding: Basically I want to be able to convert (isomorphically) Either a b to (Bool, Maybe a, Maybe b)
2023-03-30 14:53:13 +0200 <tomsmeding> Profpatsch: I'm not sure that helps me much, because those are not isomorphic -- what about (False, Nothing, Nothing)
2023-03-30 14:53:35 +0200 <Profpatsch> tomsmeding: yes, but I’m going into untyped-land here (postgres)
2023-03-30 14:54:21 +0200npmania(~Thunderbi@138.199.21.242) (Quit: npmania)
2023-03-30 14:54:40 +0200 <Profpatsch> so I convert to something like CASE WHEN wasA THEN somethingWithA ELSE somethingWithB END
2023-03-30 14:55:05 +0200 <Profpatsch> but getting the wasA is a little dangerous, cause there’s a chance that the boolean values get confused
2023-03-30 14:55:36 +0200 <Profpatsch> Which would be less if I could say was @(Left "foo") e2 :: Bool
2023-03-30 14:56:00 +0200 <Profpatsch> The labels help with confusion and make the code obviously right/wrong
2023-03-30 14:56:24 +0200 <Profpatsch> But I guess it’s moot, I’m just gonna go with a matrix of helper functions
2023-03-30 14:56:40 +0200 <Profpatsch> Since I have only E2 and E3, which makes for 4 and 6 helpers respectively
2023-03-30 14:57:15 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-30 14:58:28 +0200 <tomsmeding> Profpatsch: https://play.haskell.org/saved/j9NHxOd6 ?
2023-03-30 14:58:46 +0200 <tomsmeding> using labels and not @"foo" type application to avoid having to enable AllowAmbiguousTypes
2023-03-30 14:59:00 +0200AndreiDuma(~textual@84.117.11.64) (Quit: Textual IRC Client: www.textualapp.com)
2023-03-30 14:59:14 +0200 <tomsmeding> you could replace WasLabel s by Proxy s without any problem, and you could remove that argument to 'was' entirely if you AllowAmbiguousTypes
2023-03-30 15:00:00 +0200 <Profpatsch> tomsmeding: ah yeah, something like that
2023-03-30 15:00:28 +0200 <Profpatsch> I don’t like labels very much, I tend to use pure type applications (relying on convention to use them).
2023-03-30 15:00:37 +0200 <Profpatsch> Maybe once the label syntax gets loosened
2023-03-30 15:00:40 +0200 <tomsmeding> I detest AllowAmbiguousTypes
2023-03-30 15:00:43 +0200 <tomsmeding> but you do you :p
2023-03-30 15:00:52 +0200 <Profpatsch> tomsmeding: what’s the reason?
2023-03-30 15:01:05 +0200 <Profpatsch> You only have to enable them in the module you define the thing, no?
2023-03-30 15:01:07 +0200 <tomsmeding> it makes it very easy to shoot yourself in the foot and make an almost-uncallable function
2023-03-30 15:01:12 +0200 <tomsmeding> yes
2023-03-30 15:01:14 +0200 <Profpatsch> Ah yeah
2023-03-30 15:01:16 +0200 <Profpatsch> I guess
2023-03-30 15:01:18 +0200 <tomsmeding> but I'd want to enable it on the function level
2023-03-30 15:01:21 +0200 <tomsmeding> then I'd be okay with it
2023-03-30 15:01:46 +0200 <tomsmeding> _actually_, what I want is visible quantifiers
2023-03-30 15:01:48 +0200 <Profpatsch> The good thing about working on a … work codebase is that you don’t have to guess what you need
2023-03-30 15:01:55 +0200 <Profpatsch> cause you only implement it when you actually need to call it :P
2023-03-30 15:02:05 +0200 <tomsmeding> was :: forall (s :: Symbol) -> forall a b l1 l2. Ei l1 a l2 b -> Bool
2023-03-30 15:02:23 +0200 <tomsmeding> there's a ghc proposal for that iirc but it isn't yet implemented (not sure if accepted, even)
2023-03-30 15:02:25 +0200 <Profpatsch> But I guess how library authors feel the pain of accidentally exporting something that’s not callable
2023-03-30 15:02:31 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-30 15:02:58 +0200 <Profpatsch> tomsmeding: I think that’s a DependentHaskell proposal by Richard Eisenberg iirc
2023-03-30 15:03:03 +0200 <tomsmeding> a friend of mine used AllowAmbiguousTypes in a personal codebase once (not a library context) and they could for the life of them figure out how to call their stuff
2023-03-30 15:03:20 +0200 <tomsmeding> I removed AllowAmbiguousTypes, added some Proxy, and suddenly all was clear
2023-03-30 15:03:22 +0200 <Profpatsch> tomsmeding: I’m guessing that was pre-TypeApplications?
2023-03-30 15:03:24 +0200 <tomsmeding> no
2023-03-30 15:03:28 +0200 <Profpatsch> weird
2023-03-30 15:03:29 +0200 <tomsmeding> the types involved were just weird
2023-03-30 15:03:59 +0200 <tomsmeding> of course there was a proper type variable declaration order and proper insertion of type applications that would've made it work too
2023-03-30 15:04:12 +0200 <tomsmeding> but with Proxy, at least the compiler shows you precisely which type application you forgot
2023-03-30 15:04:28 +0200 <tomsmeding> whereas without, you just get a random ambiguous type error 10 lines away from where the actual issue is
2023-03-30 15:04:37 +0200 <Profpatsch> Proxies are so clunky, but better label support is gonna fix this
2023-03-30 15:04:48 +0200 <tomsmeding> Proxies are super clunky, hence I want 'forall s ->' :p
2023-03-30 15:04:55 +0200 <Profpatsch> or that
2023-03-30 15:06:47 +0200shriekingnoise(~shrieking@186.137.175.87)
2023-03-30 15:07:28 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl)
2023-03-30 15:11:01 +0200 <tomsmeding> Profpatsch: the tantalising thing is that the ghc parser already supports it :p
2023-03-30 15:15:07 +0200dsrt^(~dsrt@c-24-30-76-89.hsd1.ga.comcast.net) (Remote host closed the connection)
2023-03-30 15:15:08 +0200 <lortabac> not only the parser, it already works in type families
2023-03-30 15:17:17 +0200 <lortabac> in fact you can already write stuff like: type Replicate :: forall (a :: Type). forall (n :: Nat) -> a -> Vec n a
2023-03-30 15:18:27 +0200nate4(~nate@98.45.169.16)
2023-03-30 15:19:34 +0200 <tomsmeding> lortabac: how is that different from just writing (n :: Nat) -> a -> Vec n a?
2023-03-30 15:19:45 +0200 <tomsmeding> oh wait very
2023-03-30 15:20:00 +0200 <tomsmeding> ok that's cool
2023-03-30 15:21:06 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 15:22:02 +0200mncheck(~mncheck@193.224.205.254)
2023-03-30 15:22:45 +0200 <lortabac> by the way, is '(n :: Nat) -> a -> Vec n a' even possible? 'n :: Nat' doesn't have inhabitants, right?
2023-03-30 15:23:18 +0200nate4(~nate@98.45.169.16) (Ping timeout: 255 seconds)
2023-03-30 15:23:51 +0200 <tomsmeding> if you replace the :: by : it's a valid Agda type ;p
2023-03-30 15:24:05 +0200 <tomsmeding> but yeah not what I meant
2023-03-30 15:24:10 +0200 <lortabac> maybe, but it would be a type without inhabitants
2023-03-30 15:24:21 +0200 <tomsmeding> so the 'forall a ->' syntax works for kinds a, basically?
2023-03-30 15:24:56 +0200 <tomsmeding> lortabac: that's not how agda syntax works, in agda that would define a dependent function that does precisely what you want: take a 'Nat' and an 'a' and return a vector of n a's, where n is that first argument
2023-03-30 15:25:16 +0200 <tomsmeding> in agda it's equivalent to Nat -> a -> Vec n a, except you're calling that first argument 'n'
2023-03-30 15:25:54 +0200 <lortabac> well, that's exactly what 'forall (n :: Nat)' -> does in Haskell
2023-03-30 15:26:02 +0200 <tomsmeding> yes
2023-03-30 15:26:05 +0200 <tomsmeding> except it doesn't yet :p
2023-03-30 15:26:11 +0200 <tomsmeding> well, only on the type level
2023-03-30 15:26:20 +0200 <lortabac> I was surprised when I discovered that
2023-03-30 15:26:29 +0200 <lortabac> I tried for fun and it worked :)
2023-03-30 15:28:40 +0200 <lortabac> isn't the Agda syntax a little misleading? I would expect (n : Nat) to mean "an n of type Nat" whereas it means "a Nat named n"
2023-03-30 15:28:54 +0200 <tomsmeding> I guess
2023-03-30 15:29:54 +0200 <tomsmeding> (a : A) -> B is shorthand syntax for Π A (λa -> B)
2023-03-30 15:30:17 +0200 <tomsmeding> but indeed it's incompatible with haskell syntax in that way
2023-03-30 15:33:38 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 265 seconds)
2023-03-30 15:41:32 +0200 <jean-paul[m]> Do ghc and ghci not share a parser? I ask because it seems I can create programs that run under ghci but ghc rejects with syntax errors.
2023-03-30 15:41:40 +0200 <tomsmeding> jean-paul[m]: example?
2023-03-30 15:42:32 +0200 <jean-paul[m]> Here's a change that fixed a source file for ghc, https://whetstone.private.storage/privatestorage/privatestoragemobile/-/commit/a7b9577357e944813e5…
2023-03-30 15:43:02 +0200 <tomsmeding> is it the location of the haddock comments?
2023-03-30 15:43:18 +0200 <tomsmeding> I guess ghc tries to parse haddock comments and ghci does not
2023-03-30 15:43:25 +0200 <jean-paul[m]> Your guess is probably better than mine.
2023-03-30 15:43:30 +0200 <tomsmeding> jean-paul[m]: the correct syntax there is to use ^ instead of | for your initial version
2023-03-30 15:43:32 +0200 <jean-paul[m]> The error was "parse error on input ‘deriving’"
2023-03-30 15:43:47 +0200 <tomsmeding> '-- |' haddock comments refer to what comes after the comment, '-- ^' comments refer to what comes before the comment
2023-03-30 15:44:03 +0200 <tomsmeding> so your second doc comment expected something to be a doc comment of, but it saw "deriving"
2023-03-30 15:44:15 +0200 <jean-paul[m]> Okay - so it is the case that they parse differently (though maybe they mostly share a parser, but ghc parses more stuff)?
2023-03-30 15:44:21 +0200 <jean-paul[m]> okay, that makes sense
2023-03-30 15:44:30 +0200 <tomsmeding> they certainly share a parser, but apparently ghci is configured differently
2023-03-30 15:44:40 +0200 <tomsmeding> there's probably a flag one can set to make ghc behave like that too :p
2023-03-30 15:53:48 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2023-03-30 15:55:40 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-30 16:15:40 +0200thegeekinside(~thegeekin@189.141.115.134)
2023-03-30 16:18:14 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 16:18:26 +0200freeside(~mengwong@103.252.202.85)
2023-03-30 16:20:43 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-30 16:22:08 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-30 16:24:06 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-30 16:28:02 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2023-03-30 16:28:27 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Ping timeout: 248 seconds)
2023-03-30 16:28:30 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:f50d:2c7d:3d65:e75) (Remote host closed the connection)
2023-03-30 16:28:49 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:f50d:2c7d:3d65:e75)
2023-03-30 16:34:09 +0200dipper(~dipper@117.61.126.31) (Ping timeout: 268 seconds)
2023-03-30 16:35:17 +0200smallville7123(~Android@cpe-172-193-178-179.qld.foxtel.net.au) (Ping timeout: 246 seconds)
2023-03-30 16:37:43 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-30 16:39:05 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-30 16:41:13 +0200lagash(lagash@lagash.shelltalk.net) (Quit: ZNC - https://znc.in)
2023-03-30 16:42:06 +0200todi(~snuckls@p5dca57c0.dip0.t-ipconnect.de)
2023-03-30 16:48:03 +0200Sgeo(~Sgeo@user/sgeo)
2023-03-30 16:52:33 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:a603:c2ac:ec03:9509) (Quit: WeeChat 2.8)
2023-03-30 16:54:35 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:49e7:aefc:bdd2:1773)
2023-03-30 17:03:18 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-30 17:05:01 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-30 17:08:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 17:08:56 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 252 seconds)
2023-03-30 17:10:45 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-30 17:14:00 +0200Anon512(~AdminUser@68.203.99.38) (Ping timeout: 255 seconds)
2023-03-30 17:18:00 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:49e7:aefc:bdd2:1773) (Quit: WeeChat 2.8)
2023-03-30 17:23:52 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 276 seconds)
2023-03-30 17:27:39 +0200infinity0(~infinity0@pwned.gg) (Ping timeout: 248 seconds)
2023-03-30 17:27:49 +0200ec(~ec@gateway/tor-sasl/ec)
2023-03-30 17:28:29 +0200infinity0(~infinity0@pwned.gg)
2023-03-30 17:30:36 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 265 seconds)
2023-03-30 17:30:51 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:f50d:2c7d:3d65:e75) (Remote host closed the connection)
2023-03-30 17:31:11 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:f50d:2c7d:3d65:e75)
2023-03-30 17:31:54 +0200lagash(lagash@lagash.shelltalk.net)
2023-03-30 17:36:11 +0200mikoto-chan(~mikoto-ch@2001:999:784:fcdc:388b:946e:4fb0:2189)
2023-03-30 17:40:31 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 250 seconds)
2023-03-30 17:42:54 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2023-03-30 17:43:09 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2023-03-30 17:43:17 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2023-03-30 17:43:39 +0200codaraxis(~codaraxis@user/codaraxis) (Ping timeout: 248 seconds)
2023-03-30 17:44:10 +0200danso(~danso@user/danso) (Quit: ZNC - https://znc.in)
2023-03-30 17:45:13 +0200ec(~ec@gateway/tor-sasl/ec)
2023-03-30 17:45:36 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-30 17:45:41 +0200danso(~danso@user/danso)
2023-03-30 17:46:00 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
2023-03-30 17:50:31 +0200merijn(~merijn@c-001-001-009.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds)
2023-03-30 18:03:54 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2023-03-30 18:06:39 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-30 18:08:29 +0200codaraxis(~codaraxis@user/codaraxis)
2023-03-30 18:21:02 +0200_xor(~xor@74.215.46.17)
2023-03-30 18:24:11 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 255 seconds)
2023-03-30 18:24:32 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 248 seconds)
2023-03-30 18:26:29 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2023-03-30 18:26:38 +0200mbuf(~Shakthi@49.207.178.186) (Quit: Leaving)
2023-03-30 18:27:01 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Remote host closed the connection)
2023-03-30 18:27:04 +0200ec(~ec@gateway/tor-sasl/ec)
2023-03-30 18:30:22 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de)
2023-03-30 18:33:02 +0200Midjak(~Midjak@82.66.147.146)
2023-03-30 18:34:55 +0200econo(uid147250@user/econo)
2023-03-30 18:36:21 +0200werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Remote host closed the connection)
2023-03-30 18:37:40 +0200mikoto-chan(~mikoto-ch@2001:999:784:fcdc:388b:946e:4fb0:2189) (Ping timeout: 252 seconds)
2023-03-30 18:40:14 +0200acidjnk(~acidjnk@p200300d6e715c4190569bb5c5405c3ef.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-03-30 18:41:19 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-03-30 18:44:27 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2023-03-30 18:44:37 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-30 18:57:59 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 19:09:04 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 252 seconds)
2023-03-30 19:19:14 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-03-30 19:19:59 +0200nate4(~nate@98.45.169.16)
2023-03-30 19:21:09 +0200acidjnk(~acidjnk@p200300d6e715c42455b6277e522904ed.dip0.t-ipconnect.de)
2023-03-30 19:22:41 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-30 19:23:00 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2023-03-30 19:24:08 +0200vpan(~0@212.117.1.172) (Quit: Leaving.)
2023-03-30 19:24:33 +0200kmein(~weechat@user/kmein) (Quit: ciao kakao)
2023-03-30 19:24:56 +0200kmein(~weechat@user/kmein)
2023-03-30 19:25:25 +0200nate4(~nate@98.45.169.16) (Ping timeout: 276 seconds)
2023-03-30 19:28:44 +0200vlad(~vlad@2a00:23c6:9822:4c01:6474:de59:1ca6:6b44)
2023-03-30 19:33:31 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 248 seconds)
2023-03-30 19:41:25 +0200hugo(znc@verdigris.lysator.liu.se) (Ping timeout: 250 seconds)
2023-03-30 19:50:55 +0200hugo(znc@verdigris.lysator.liu.se)
2023-03-30 20:07:45 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-30 20:09:37 +0200shailangsa(~shailangs@host165-120-169-78.range165-120.btcentralplus.com) (Ping timeout: 276 seconds)
2023-03-30 20:10:41 +0200Teacup(~teacup@user/teacup) (Quit: No Ping reply in 180 seconds.)
2023-03-30 20:11:35 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de) (Ping timeout: 246 seconds)
2023-03-30 20:11:49 +0200opticblast(~Thunderbi@172.58.84.111)
2023-03-30 20:11:50 +0200Teacup(~teacup@user/teacup)
2023-03-30 20:13:54 +0200jero98772(~jero98772@190.158.28.44)
2023-03-30 20:15:38 +0200 <Athas> I have intermittent issues where 'cabal build' will fail with:
2023-03-30 20:15:38 +0200 <Athas> /home/.../dist-newstyle/tmp/package-registration--811774
2023-03-30 20:15:38 +0200 <Athas> removeDirectoryRecursive:removeContentsRecursive:removeDirectory: unsatisfied constraints (Directory not empty)
2023-03-30 20:16:04 +0200 <Athas> 'cabal build' will make progress every time, so I can just keep re-running it until it succeeds. The issue only seems to occur while building dependencies.
2023-03-30 20:16:40 +0200 <Athas> I am working on a networked file system, so it's very likely that some part of the POSIX semantics are being violated. But has anyone here seen something like it, or have a suggestion for how to make some part of this more robust?
2023-03-30 20:18:21 +0200 <sclv> Athas: looks like there's a ticket discussing this issue here https://github.com/haskell/directory/issues/110
2023-03-30 20:18:48 +0200 <Athas> This isn't on Windows.
2023-03-30 20:19:06 +0200 <Athas> There is of course the remote chance that the network filesystem server is Windows, but that is almost too horrible to contemplate...
2023-03-30 20:21:24 +0200 <monochrom> With confirmation bias, my guess is that "Deletion is effectively asynchronous on Windows" can be safely extended to "Deletion is effectively asynchronous on Windows as well as basically every network file system" so it doesn't just affect Windows-based file servers.
2023-03-30 20:22:00 +0200 <davean> ell it depends on the config of the filesystem
2023-03-30 20:22:07 +0200 <davean> what network filesystem is this?
2023-03-30 20:22:23 +0200 <Athas> I'm guessing NFS, but let me see.
2023-03-30 20:22:32 +0200 <davean> It matters, semanticly
2023-03-30 20:22:40 +0200 <Athas> (This is the kind of question I entered academia so I would never have to answer again!)
2023-03-30 20:23:01 +0200 <Athas> It's 'nfs' in the 'mount' output, but there are many NFS versions, right?
2023-03-30 20:23:08 +0200 <Athas> mountvers=3... does that mean NFS3?
2023-03-30 20:23:09 +0200 <monochrom> Ah but if you entered the Systems area... >:)
2023-03-30 20:23:59 +0200ph88(~ph88@ip5b426553.dynamic.kabel-deutschland.de)
2023-03-30 20:24:14 +0200 <monochrom> "I entered formal methods so I don't have to help my relatives with anti-virus" :)
2023-03-30 20:24:38 +0200 <geekosaur> …they ask anyway
2023-03-30 20:24:57 +0200 <davean> I just added having anti-virus to your predicate
2023-03-30 20:25:05 +0200 <darkling> Athas: I think so, yes.
2023-03-30 20:25:26 +0200 <Athas> My family stopped asking me for computer help after we were on vacation together and they saw on my laptop screen what my life is like. Just three columns of full screen text-only Emacs windows.
2023-03-30 20:25:53 +0200 <davean> Huh! I haven't seen v3 in a while ... like decades, I don't recall its semantics but I thoguht all of them exposed POSIX
2023-03-30 20:26:27 +0200 <geekosaur> Athas, lucky you, that just cinvinced my sister I was obviously a computer expert
2023-03-30 20:26:34 +0200 <darkling> Yeah, I've been using NFSv3 for decades and haven't spotted anything non-POSIXy about it yet.
2023-03-30 20:26:35 +0200 <davean> I'm not sure I'm old enough I ever used v3 actually
2023-03-30 20:26:49 +0200 <geekosaur> next thing I knew I was debugging a bluescreen 30 seconds after her desktop came up
2023-03-30 20:28:07 +0200 <Athas> There's a "Dell Isilon" on the other end of the NFS mount, but I think that's as far as I'm going to investigate this.
2023-03-30 20:28:43 +0200 <Athas> I'm not in systems research; so I fix distributed consistency bugs by putting a retry-loop on top of my shell command.
2023-03-30 20:29:15 +0200ddellacosta(~ddellacos@143.244.47.100) (Quit: WeeChat 3.8)
2023-03-30 20:29:54 +0200 <davean> Thats a FreeBSD variant, so definately a head scratcher
2023-03-30 20:30:07 +0200 <davean> though its their scale out thing, so anything could be happening
2023-03-30 20:30:54 +0200ddellacosta(~ddellacos@143.244.47.81)
2023-03-30 20:31:40 +0200 <tusko> what is more worthwhile to learn ocaml or haskell serious inquiries only
2023-03-30 20:33:01 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-03-30 20:33:48 +0200 <monochrom> I think equally worthwhile learn. Serious answers only.
2023-03-30 20:33:48 +0200slack1256(~slack1256@186.11.118.107)
2023-03-30 20:34:29 +0200 <monochrom> OCaml does statically-typed OO justice. Haskell does statically-type FP justice.
2023-03-30 20:34:55 +0200 <EvanR> learn all the things
2023-03-30 20:35:13 +0200merijn(~merijn@c-001-002-016.client.esciencecenter.eduvpn.nl)
2023-03-30 20:35:50 +0200 <EvanR> if it works for AI it's good enough for me
2023-03-30 20:36:39 +0200 <EvanR> I went as far as buying a windows box to learn windows recently
2023-03-30 20:36:46 +0200 <EvanR> shocking
2023-03-30 20:37:25 +0200 <monochrom> On the bright side, it's also good for gaming. :)
2023-03-30 20:38:45 +0200opticblast(~Thunderbi@172.58.84.111) (Ping timeout: 255 seconds)
2023-03-30 20:39:26 +0200 <EvanR> I mean people were shocked when I told them I was learning windows
2023-03-30 20:39:46 +0200 <EvanR> the shock of working on windows is another story
2023-03-30 20:39:57 +0200briandaed(~briandaed@185.234.210.211)
2023-03-30 20:40:49 +0200merijn(~merijn@c-001-002-016.client.esciencecenter.eduvpn.nl) (Ping timeout: 276 seconds)
2023-03-30 20:41:16 +0200fr33domloverperelev
2023-03-30 20:41:30 +0200perelevfr33domlover
2023-03-30 20:42:11 +0200 <briandaed> Does stack has any option for checking deprecated packages in used LTS?
2023-03-30 20:42:41 +0200 <tusko> I would never work on Windows. I've been forced to at some jobs and I usually quit on the spot
2023-03-30 20:42:51 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2023-03-30 20:45:33 +0200 <briandaed> tusko: if you have comfort to find job with Haskell and *nix then OK, companies still love windows
2023-03-30 20:48:29 +0200 <tusko> They do, but it won't stop me from pointing out that we're supposed to be technically proficient. Why should we use anythjing but the best tools.
2023-03-30 20:49:14 +0200 <tusko> Using Windows is like working in construction but using Fischer-Price tools and, like, play-doh to seal joints n shit
2023-03-30 20:49:33 +0200 <tusko> You can do it, but it doesn't mean its a good idea.
2023-03-30 20:51:10 +0200shailangsa_(~shailangs@host165-120-169-78.range165-120.btcentralplus.com)
2023-03-30 20:51:30 +0200ddellacosta(~ddellacos@143.244.47.81) (Ping timeout: 260 seconds)
2023-03-30 20:51:53 +0200 <briandaed> tusko: nah, me using it (windows) only to render vscode, rest of the work is done in the terminal (ssh plugin/bash). Yeah I miss xmonad but I frequently switch to my personal deck, so no great harm.
2023-03-30 20:52:45 +0200 <tusko> OMG this is another thing vscode. People rave about vscode like its an amazing editor and all it does is stuff other editors already do.
2023-03-30 20:53:03 +0200 <tusko> What I mean is people talk as though not using vscode is the exception.
2023-03-30 20:53:14 +0200 <tusko> Its not even a good editor
2023-03-30 20:53:56 +0200 <briandaed> tusk: yes and no, aforementioned ssh support - I haven't found comparable support in other editors, be it (n)vi(m) or emacs
2023-03-30 20:54:18 +0200 <briandaed> tusko: so what is your dream dev env?
2023-03-30 20:54:33 +0200 <tusko> sh + ed
2023-03-30 20:55:00 +0200 <tusko> although ed might be bloat, jury is still out
2023-03-30 20:55:16 +0200opticblast(~Thunderbi@172.58.84.111)
2023-03-30 20:55:24 +0200 <briandaed> yeah ed is famous for it's hls support
2023-03-30 20:55:47 +0200 <tusko> Nah, if I'm being serious with you what irks me is the same people who use these tools I associate with not really getting into any depth with their tools.
2023-03-30 20:56:27 +0200 <briandaed> tusko: you can say that not only in regards to tools
2023-03-30 20:57:04 +0200 <tusko> Sure, 'they' seem to me to stay at surface level and not get into the weeds with anything.
2023-03-30 20:57:32 +0200 <tusko> A result is a bunch of unknown and undefined bugs and edge cases, semantic errors and the like.
2023-03-30 20:57:48 +0200 <tusko> Because appearing to work is good enough to that kind of person.
2023-03-30 20:58:22 +0200 <mauke> oh, is it trolling hour again?
2023-03-30 20:58:24 +0200 <briandaed> tusko: you're full of grief, let it go :)
2023-03-30 20:58:36 +0200pavonia(~user@user/siracusa)
2023-03-30 20:58:39 +0200 <tusko> You're right. I've been carrying that around a while.
2023-03-30 20:58:58 +0200 <monochrom> Oh w00t ghcup has updated "recommended" to GHC 9.2.7. This re-compiles everything, again. :D
2023-03-30 20:59:43 +0200 <tusko> briandaed, But imagine you work on something and you care a lot about your craft and some kid openly brags about 'just asking GPT questions until it gives me something that works'.
2023-03-30 21:00:17 +0200 <tusko> And your name is associated with your company or what you guys produce.
2023-03-30 21:01:42 +0200 <monochrom> I have long grown out of complaining about "programmers speak like using Haskell/SML/Lisp/Scheme/Ada is the exception".
2023-03-30 21:02:18 +0200 <monochrom> And programmers are damn hell right. Using Haskell/SML/Lisp/Scheme/Ada is the exception.
2023-03-30 21:02:18 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Read error: Connection reset by peer)
2023-03-30 21:02:20 +0200sammelweis_(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-30 21:02:41 +0200 <xerox> both synchronous and asynchronous
2023-03-30 21:03:14 +0200 <monochrom> Networking effect always trumps technical merits. You can either accept it or broadly fault human nature altogether. (If you complain, at least complain big.)
2023-03-30 21:03:54 +0200 <monochrom> Like, even IRC could be argued to be technically better than Twitter and Facebook. But look who side is dying.
2023-03-30 21:04:38 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-30 21:05:40 +0200 <[Leary]> I bet facebook dies first.
2023-03-30 21:05:48 +0200 <[Leary]> IRC is zombie technology.
2023-03-30 21:05:53 +0200 <monochrom> haha
2023-03-30 21:06:02 +0200 <briandaed> I bet on Zuckerberg, he is so pale..
2023-03-30 21:06:03 +0200 <Rembane> /braaaaaaaaaaaaaaaaaaaaaaaains
2023-03-30 21:06:39 +0200B-J(~BenziJuni@88-149-66-52.du.xdsl.is) (Ping timeout: 265 seconds)
2023-03-30 21:06:48 +0200 <yushyin> on that matter, i dislike when open source projects only have a discord guild
2023-03-30 21:07:14 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-30 21:10:20 +0200Guest|63(~Guest|63@190.192.22.176)
2023-03-30 21:10:41 +0200jero98772(~jero98772@190.158.28.44) (Ping timeout: 250 seconds)
2023-03-30 21:10:45 +0200 <Guest|63> Heyy
2023-03-30 21:11:04 +0200 <Guest|63> i've been trying to install haskell on windows
2023-03-30 21:11:24 +0200 <Guest|63> but having some issues with system FilePath
2023-03-30 21:11:37 +0200 <Guest|63> Can anyone help me out?
2023-03-30 21:11:42 +0200sammelweis_(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2023-03-30 21:11:49 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2023-03-30 21:11:52 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9)
2023-03-30 21:12:19 +0200 <briandaed> guest: how did you do that? using ghcup?
2023-03-30 21:12:30 +0200 <Guest|63> yea
2023-03-30 21:12:43 +0200zeenk(~zeenk@2a02:2f04:a307:2300::7fe)
2023-03-30 21:13:03 +0200 <Guest|63> everything works until i try to import the file path
2023-03-30 21:13:19 +0200 <briandaed> guest: import file path? what do you mean by that?
2023-03-30 21:13:32 +0200opticblast(~Thunderbi@172.58.84.111) (Quit: opticblast)
2023-03-30 21:13:35 +0200 <Guest|63> windows 10
2023-03-30 21:13:56 +0200 <Guest|63> https://www.youtube.com/watch?v=bB4fmQiUYPw i found this video
2023-03-30 21:14:21 +0200 <Guest|63> seemed like the easiest way to install haskell enviorment
2023-03-30 21:15:22 +0200 <Guest|63> he tries the command import system.filepath at minute 2.18
2023-03-30 21:15:35 +0200 <Guest|63> i get some kind of error
2023-03-30 21:16:07 +0200 <briandaed> guest: so it looks you have ghc(i) installed
2023-03-30 21:16:21 +0200 <briandaed> guest: what is your error message?
2023-03-30 21:19:49 +0200 <Guest|63> i think i solved the issue
2023-03-30 21:20:05 +0200 <Guest|63> i'll check if it works in vs code
2023-03-30 21:20:09 +0200 <mauke> ...
2023-03-30 21:21:30 +0200stackdroid18(14094@de1.hashbang.sh)
2023-03-30 21:22:44 +0200lyle(~lyle@104.246.145.237) (Quit: WeeChat 3.8)
2023-03-30 21:23:57 +0200 <tusko> lol
2023-03-30 21:25:28 +0200ft(~ft@p4fc2a88b.dip0.t-ipconnect.de)
2023-03-30 21:31:57 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Remote host closed the connection)
2023-03-30 21:32:45 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com) (Ping timeout: 265 seconds)
2023-03-30 21:32:58 +0200briandaed(~briandaed@185.234.210.211) (Remote host closed the connection)
2023-03-30 21:34:14 +0200Vq(~vq@90-227-192-206-no77.tbcn.telia.com)
2023-03-30 21:41:58 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2023-03-30 21:42:48 +0200Benzi-Junior(~BenziJuni@88-149-67-225.du.xdsl.is)
2023-03-30 21:46:32 +0200 <ph88> how can i get any of these parsing functions as an Either variant ? https://hackage.haskell.org/package/time-1.12.2/docs/Data-Time-Format.html#g:2
2023-03-30 21:47:10 +0200purlingstream(~godfibrat@178.70.110.196) (Read error: Connection reset by peer)
2023-03-30 21:47:22 +0200purlingstream(~godfibrat@178.70.110.196)
2023-03-30 21:48:29 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 21:49:00 +0200 <monochrom> Can you settle for Maybe? Setting m=Maybe will work because Maybe is an instance of MonadFail.
2023-03-30 21:50:33 +0200chomwitt(~chomwitt@ppp-94-69-24-223.home.otenet.gr) (Ping timeout: 250 seconds)
2023-03-30 21:50:37 +0200 <jade[m]> https://github.com/haskell/core-libraries-committee/issues/28
2023-03-30 21:50:37 +0200 <jade[m]> Not a solution to your question, but maybe some helpful information
2023-03-30 21:51:33 +0200 <monochrom> Yeah I was wondering about "instance MonadFail (Either String)" as well
2023-03-30 21:52:01 +0200 <ph88> thanks for the infos, i will try with Maybe for now
2023-03-30 22:01:08 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection)
2023-03-30 22:03:26 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 22:04:51 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be) (Ping timeout: 250 seconds)
2023-03-30 22:06:44 +0200m1dnight(~christoph@78-22-4-67.access.telenet.be)
2023-03-30 22:08:03 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-03-30 22:12:44 +0200pavonia(~user@user/siracusa) (Read error: Connection reset by peer)
2023-03-30 22:15:59 +0200pavonia(~user@user/siracusa)
2023-03-30 22:27:01 +0200trev(~trev@user/trev) (Remote host closed the connection)
2023-03-30 22:27:59 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 22:30:43 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 22:32:26 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1)
2023-03-30 22:35:26 +0200michalz(~michalz@185.246.207.203) (Remote host closed the connection)
2023-03-30 22:37:05 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:6908:d35e:582:c0e1) (Ping timeout: 260 seconds)
2023-03-30 22:39:49 +0200 <Guest|63> i'm trying to run my first program in haskell
2023-03-30 22:40:06 +0200 <Guest|63> but i keep getiing this error
2023-03-30 22:40:10 +0200 <Guest|63> lexical error in string/character literal at character 'U'
2023-03-30 22:41:48 +0200 <darkling> What's the code look like, and how are you trying to compile and run it?
2023-03-30 22:42:21 +0200 <Guest|63> module HelloWorld where
2023-03-30 22:42:28 +0200 <Guest|63> main :: IO ()
2023-03-30 22:42:43 +0200 <Guest|63> main = putStrLn "Hello, World"
2023-03-30 22:43:21 +0200 <Guest|63> with the run button in vscode
2023-03-30 22:46:19 +0200jero98772(~jero98772@2800:484:1d80:d8ce:d9f7:bed9:104f:8b9) (Ping timeout: 252 seconds)
2023-03-30 22:47:13 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 265 seconds)
2023-03-30 22:47:39 +0200 <darkling> Well, that compiles OK for me, and there isn't a 'U' in it at all, so I'd say there's some problem with the VSCode installation. Can't help with that, I'm afraid.
2023-03-30 22:48:10 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-30 22:48:14 +0200MacSlow(~MacSlow@p57bb2fc5.dip0.t-ipconnect.de)
2023-03-30 22:48:28 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Remote host closed the connection)
2023-03-30 22:48:57 +0200 <Guest|63> hmm
2023-03-30 22:49:06 +0200jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2023-03-30 22:49:08 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba)
2023-03-30 22:49:12 +0200 <Guest|63> i dont know what seems to be the issue
2023-03-30 22:49:26 +0200 <Guest|63> the ghci works perfectly
2023-03-30 22:49:50 +0200zmt01(~zmt00@user/zmt00)
2023-03-30 22:51:30 +0200lbseale(~quassel@user/ep1ctetus) (Ping timeout: 255 seconds)
2023-03-30 22:52:37 +0200titibandit(~titibandi@user/titibandit)
2023-03-30 22:52:57 +0200Guest|63(~Guest|63@190.192.22.176) (Quit: Connection closed)
2023-03-30 22:53:16 +0200lbseale(~quassel@user/ep1ctetus)
2023-03-30 22:53:17 +0200zmt00(~zmt00@user/zmt00) (Ping timeout: 246 seconds)
2023-03-30 22:58:23 +0200wagle(~wagle@quassel.wagle.io) (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.)
2023-03-30 23:00:10 +0200adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com)
2023-03-30 23:06:00 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-03-30 23:06:19 +0200fr33domlover5(~fr33domlo@towards.vision)
2023-03-30 23:08:12 +0200fr33domlover(~fr33domlo@towards.vision) (Ping timeout: 268 seconds)
2023-03-30 23:08:13 +0200fr33domlover5fr33domlover
2023-03-30 23:10:20 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-03-30 23:11:32 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-03-30 23:12:13 +0200elevenkb(~elevenkb@105.186.233.148)
2023-03-30 23:13:57 +0200wagle(~wagle@quassel.wagle.io)
2023-03-30 23:16:33 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-03-30 23:17:20 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 248 seconds)
2023-03-30 23:21:25 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.8)
2023-03-30 23:21:27 +0200nate4(~nate@98.45.169.16)
2023-03-30 23:26:34 +0200nate4(~nate@98.45.169.16) (Ping timeout: 276 seconds)
2023-03-30 23:26:34 +0200lbseale(~quassel@user/ep1ctetus) (Ping timeout: 276 seconds)
2023-03-30 23:26:36 +0200NiceBird(~NiceBird@185.133.111.196) (Ping timeout: 252 seconds)
2023-03-30 23:27:46 +0200lbseale(~quassel@user/ep1ctetus)
2023-03-30 23:32:38 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:f50d:2c7d:3d65:e75) (Remote host closed the connection)
2023-03-30 23:32:57 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:75c2:a71f:beaa:29bf)
2023-03-30 23:33:31 +0200Square(~Square4@user/square) (Ping timeout: 248 seconds)
2023-03-30 23:44:44 +0200coot(~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot)
2023-03-30 23:47:38 +0200 <sm> Guest|63: what if you remove the module HelloWorld line
2023-03-30 23:48:44 +0200elevenkb(~elevenkb@105.186.233.148) (Quit: Client closed)
2023-03-30 23:48:45 +0200MacSlow(~MacSlow@p57bb2fc5.dip0.t-ipconnect.de) (Quit: leaving)
2023-03-30 23:51:03 +0200gingin(~eugen@66.23.87.252) (Quit: Konversation terminated!)
2023-03-30 23:51:42 +0200 <sm> also, be aware that most people here don't use the VS Code run button to run haskell, even if it seems like they would - you are off the beaten path here
2023-03-30 23:52:31 +0200 <sm> ie, it might be something that does not work in general
2023-03-30 23:52:43 +0200 <yushyin> sm: they left a long time ago
2023-03-30 23:52:58 +0200 <sm> argh. Thank you :)
2023-03-30 23:53:35 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds)
2023-03-30 23:53:44 +0200 <sm> for a "Guest", I should always check
2023-03-30 23:55:54 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection)
2023-03-30 23:56:16 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-03-30 23:57:29 +0200 <yushyin> my client recolors the nickname in such cases to gray