2023/10/26

2023-10-26 00:00:35 +0000 <Axman6> I love coming across cool packages you've hever heard of, replace-attoparsec looks amazing, I love (and am also terrified by) this example: streamEditT (char '{' *> manyTill anyChar (char '}')) (fmap T.pack . getEnv) "- {HOME} -" ==> "- /home/jbrock -"
2023-10-26 00:01:31 +0000hpc(~juzz@ip98-169-35-163.dc.dc.cox.net) (Quit: Lost terminal)
2023-10-26 00:03:41 +0000juri_(~juri@84-19-175-187.pool.ovpn.com) (Ping timeout: 255 seconds)
2023-10-26 00:05:42 +0000juri_(~juri@84-19-175-187.pool.ovpn.com)
2023-10-26 00:08:08 +0000tessier(~treed@ec2-184-72-149-67.compute-1.amazonaws.com)
2023-10-26 00:15:45 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Ping timeout: 258 seconds)
2023-10-26 00:16:14 +0000 <yin> is MVar really needed in the websockets sample server example? https://github.com/jaspervdj/websockets/blob/master/example/server.lhs
2023-10-26 00:16:19 +0000Inst_(~Inst@120.244.192.250) (Ping timeout: 245 seconds)
2023-10-26 00:17:39 +0000 <yin> my understanding is that withPingThread is concurrent but I'm not sure (only today i started looking into concurrent haskell)
2023-10-26 00:20:08 +0000 <EvanR> you really need multiple threads to handle simultaneous client dialogs
2023-10-26 00:20:29 +0000 <EvanR> you can do any concurrent set of tasks with 1 thread by interleaving manually but it's a pain in the ass
2023-10-26 00:21:03 +0000 <EvanR> splitting it into dedicated threads spawned on client connect simplifies it a lot
2023-10-26 00:22:02 +0000 <EvanR> if the threads need to coordinate at all you need something like MVar, or TVar, or sometimes just an IORef will work
2023-10-26 00:24:50 +0000[_](~itchyjunk@user/itchyjunk/x-7353470)
2023-10-26 00:28:51 +0000[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds)
2023-10-26 00:36:32 +0000 <jackdk> Axman6 often raves about the `atomicModifyIORef'` trick in place of using `MVar`
2023-10-26 00:46:03 +0000 <geekosaur> if that's all you need, sure
2023-10-26 00:47:04 +0000ryanbooker(uid4340@id-4340.hampstead.irccloud.com)
2023-10-26 00:49:05 +0000Square3(~Square4@user/square) (Ping timeout: 240 seconds)
2023-10-26 00:50:17 +0000_leo___(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-10-26 00:50:32 +0000_leo___(~emmanuelu@user/emmanuelux)
2023-10-26 01:00:15 +0000_leo___(~emmanuelu@user/emmanuelux) (Read error: Connection reset by peer)
2023-10-26 01:02:31 +0000Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 258 seconds)
2023-10-26 01:02:37 +0000Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2023-10-26 01:03:58 +0000Lord_of_Life_Lord_of_Life
2023-10-26 01:05:07 +0000otto_s(~user@p5b044b0d.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
2023-10-26 01:06:39 +0000otto_s(~user@p5b044b15.dip0.t-ipconnect.de)
2023-10-26 01:09:28 +0000Noinia(~Frank@77-162-168-71.fixed.kpn.net)
2023-10-26 01:11:15 +0000puke(~puke@user/puke) (Quit: puke)
2023-10-26 01:12:48 +0000puke(~puke@user/puke)
2023-10-26 01:13:31 +0000chomwitt(~chomwitt@2a02:587:7a01:8f00:1ac0:4dff:fedb:a3f1) (Ping timeout: 264 seconds)
2023-10-26 01:17:48 +0000 <c_wraith> they have really different operational semantics under write load. it's important to have both options available depending on your use cases
2023-10-26 01:22:41 +0000emmanuelux(~emmanuelu@user/emmanuelux)
2023-10-26 01:25:12 +0000accord(uid568320@id-568320.hampstead.irccloud.com)
2023-10-26 01:42:40 +0000[_](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2023-10-26 01:50:43 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 252 seconds)
2023-10-26 02:02:03 +0000 <[Leary]> nyc: In principle, Data.IntSet should be generalised to sets of arbitrary bit strings (there may be a package for this; data-inttrie looks promising), but in practice you can perhaps get away with `IntMap (IntMap (IntMap IntSet))`. If you want to represent dense regions compactly, a finger tree of dense intervals (membership bit arrays with offsets) is extremely efficient.
2023-10-26 02:03:10 +0000otto_s(~user@p5b044b15.dip0.t-ipconnect.de) (Ping timeout: 255 seconds)
2023-10-26 02:04:20 +0000eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-10-26 02:04:46 +0000otto_s(~user@p4ff2729b.dip0.t-ipconnect.de)
2023-10-26 02:05:56 +0000jinsun_(~jinsun@user/jinsun)
2023-10-26 02:05:56 +0000jinsun(~jinsun@user/jinsun) (Killed (zinc.libera.chat (Nickname regained by services)))
2023-10-26 02:05:56 +0000jinsun_jinsun
2023-10-26 02:06:25 +0000Inst_(~Inst@120.244.192.250)
2023-10-26 02:06:44 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-10-26 02:06:44 +0000finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-10-26 02:06:44 +0000finn_elijaFinnElija
2023-10-26 02:18:15 +0000GoldsteinQ(~goldstein@goldstein.rs) (Ping timeout: 240 seconds)
2023-10-26 02:25:04 +0000emmanuelux_(~emmanuelu@user/emmanuelux)
2023-10-26 02:25:14 +0000emmanuelux_(~emmanuelu@user/emmanuelux) (Client Quit)
2023-10-26 02:27:35 +0000emmanuelux(~emmanuelu@user/emmanuelux) (Ping timeout: 240 seconds)
2023-10-26 02:29:13 +0000xff0x(~xff0x@ai101218.d.east.v6connect.net) (Ping timeout: 252 seconds)
2023-10-26 02:34:51 +0000Ascension(~Ascension@176.254.244.83) (Ping timeout: 260 seconds)
2023-10-26 02:37:25 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-10-26 02:43:40 +0000td_(~td@i5387090F.versanet.de) (Ping timeout: 255 seconds)
2023-10-26 02:44:02 +0000whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2023-10-26 02:45:06 +0000GoldsteinQ(~goldstein@goldstein.rs)
2023-10-26 02:45:32 +0000td_(~td@i53870935.versanet.de)
2023-10-26 02:59:27 +0000sm(~sm@plaintextaccounting/sm)
2023-10-26 03:01:50 +0000sm(~sm@plaintextaccounting/sm) (Client Quit)
2023-10-26 03:04:34 +0000 <Axman6> My preference for the single atomically modified IORef thing came form a paper looking at implementing concurrent data structures in Haskell using all the usual tricks you'd see in imperative languages, and the highest performing implementation IIRC across the board was just using an immutable structure in an IORef, because the contention on that ref is much cheaper to deal with than pretty much any opther scheme that usually needs multiple atomic variables
2023-10-26 03:06:17 +0000kilolympus(~kilolympu@31.205.200.235)
2023-10-26 03:08:59 +0000 <lockywolf> Is there a way to not make cabal hardcode paths when building/installing?
2023-10-26 03:10:41 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com)
2023-10-26 03:10:43 +0000ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2023-10-26 03:10:58 +0000aforemny(~aforemny@2001:9e8:6cce:d400:a4f1:e7f8:9aed:6739)
2023-10-26 03:12:07 +0000aforemny_(~aforemny@2001:9e8:6ce8:9900:f5fb:12e8:3754:e64f) (Ping timeout: 252 seconds)
2023-10-26 03:14:25 +0000xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-10-26 03:25:47 +0000srk_(~sorki@user/srk)
2023-10-26 03:27:45 +0000pixelmonk(~pixelmonk@173.46.79.26)
2023-10-26 03:27:53 +0000pixelmonk(~pixelmonk@173.46.79.26) (Client Quit)
2023-10-26 03:27:55 +0000srk|(~sorki@user/srk)
2023-10-26 03:27:59 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-10-26 03:28:53 +0000srk(~sorki@user/srk) (Ping timeout: 255 seconds)
2023-10-26 03:30:20 +0000srk_(~sorki@user/srk) (Ping timeout: 255 seconds)
2023-10-26 03:31:13 +0000srk|srk
2023-10-26 03:32:01 +0000ddellacosta(~ddellacos@ool-44c738de.dyn.optonline.net) (Ping timeout: 258 seconds)
2023-10-26 03:33:02 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds)
2023-10-26 03:33:55 +0000ddellacosta(~ddellacos@ool-44c738de.dyn.optonline.net)
2023-10-26 03:34:38 +0000 <monochrom> lockywolf: No. But there is a way to set environment variables at run time to change them.
2023-10-26 03:38:44 +0000srk_(~sorki@user/srk)
2023-10-26 03:40:47 +0000 <lockywolf> hackage server
2023-10-26 03:41:17 +0000 <lockywolf> issues
2023-10-26 03:41:26 +0000srk(~sorki@user/srk) (Ping timeout: 272 seconds)
2023-10-26 03:41:38 +0000srk_srk
2023-10-26 03:55:49 +0000 <lockywolf> sorry, wrong window
2023-10-26 04:00:52 +0000 <lockywolf> If I may ask someone to cosider this issue, it would be great: https://github.com/haskell/hackage-server/issues/1261
2023-10-26 04:03:45 +0000 <Axman6> Finally found the paper for the concurrent data structures/IORef stuff above: http://simonmar.github.io/bib/papers/concurrent-data.pdf
2023-10-26 04:04:16 +0000_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-10-26 04:04:34 +0000 <Axman6> lockywolf: this probably isn't the best place to get the attention of the hackage developers, #hackage or #haskell-infrastructure might be better places
2023-10-26 04:08:05 +0000accord(uid568320@id-568320.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2023-10-26 04:09:27 +0000Lycurgus(~georg@user/Lycurgus)
2023-10-26 04:09:28 +0000Lycurgus(~georg@user/Lycurgus) (Client Quit)
2023-10-26 04:09:56 +0000fryguybob(~fryguybob@cpe-24-94-50-22.stny.res.rr.com) (Ping timeout: 255 seconds)
2023-10-26 04:10:46 +0000Lycurgus(~georg@li1192-118.members.linode.com)
2023-10-26 04:10:46 +0000Lycurgus(~georg@li1192-118.members.linode.com) (Changing host)
2023-10-26 04:10:46 +0000Lycurgus(~georg@user/Lycurgus)
2023-10-26 04:11:49 +0000fryguybob(~fryguybob@cpe-24-94-50-22.stny.res.rr.com)
2023-10-26 04:12:28 +0000xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 272 seconds)
2023-10-26 04:13:03 +0000rosco(~rosco@yp-150-69.tm.net.my)
2023-10-26 04:13:55 +0000rosco(~rosco@yp-150-69.tm.net.my) (Client Quit)
2023-10-26 04:14:10 +0000rosco(~rosco@yp-150-69.tm.net.my)
2023-10-26 04:18:11 +0000pixelmonk(~pixelmonk@173.46.79.26)
2023-10-26 04:19:44 +0000michalz(~michalz@185.246.207.218)
2023-10-26 04:21:57 +0000liamzy__(~Inst@120.244.192.250)
2023-10-26 04:24:43 +0000Inst_(~Inst@120.244.192.250) (Ping timeout: 252 seconds)
2023-10-26 04:25:45 +0000srk_(~sorki@user/srk)
2023-10-26 04:26:49 +0000ryanbooker(uid4340@id-4340.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2023-10-26 04:27:13 +0000srk|(~sorki@user/srk)
2023-10-26 04:28:47 +0000xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2023-10-26 04:28:58 +0000srk(~sorki@user/srk) (Ping timeout: 255 seconds)
2023-10-26 04:30:31 +0000srk|srk
2023-10-26 04:30:54 +0000pixelmonk(~pixelmonk@173.46.79.26) (Quit: WeeChat 4.1.0)
2023-10-26 04:31:28 +0000srk_(~sorki@user/srk) (Ping timeout: 272 seconds)
2023-10-26 04:39:44 +0000srk_(~sorki@user/srk)
2023-10-26 04:41:42 +0000srk(~sorki@user/srk) (Ping timeout: 255 seconds)
2023-10-26 04:42:34 +0000srk_srk
2023-10-26 04:45:10 +0000 <c_wraith> Axman6: I've had highly concurrent services fall over on the thundering herd caused by atomic CAS retries on a single hyper-overloaded IORef. admittedly, pushing everything through one IOref was a bad design, but the quick fix of changing it to an MVar worked to keep the service from collapsing in those conditions.
2023-10-26 04:46:19 +0000kantokuen(~kantokuen@user/kantokuen) (Ping timeout: 245 seconds)
2023-10-26 04:49:34 +0000qqq(~qqq@92.43.167.61)
2023-10-26 04:50:10 +0000kantokuen(~kantokuen@user/kantokuen)
2023-10-26 04:50:29 +0000 <Axman6> Yeah there are definitely situations where it makes sense - I feel that if your updates to ther IORef are relatively expensive, you might be able to spread out that contention (particularly when using atomicModifyIORef')
2023-10-26 04:50:51 +0000random-jellyfish(~tiber@2a02:2f04:11e:c600:3081:413f:53c6:da60)
2023-10-26 04:50:52 +0000random-jellyfish(~tiber@2a02:2f04:11e:c600:3081:413f:53c6:da60) (Changing host)
2023-10-26 04:50:52 +0000random-jellyfish(~tiber@user/random-jellyfish)
2023-10-26 04:52:22 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 272 seconds)
2023-10-26 04:53:18 +0000rosco(~rosco@yp-150-69.tm.net.my) (Quit: Lost terminal)
2023-10-26 04:53:38 +0000Lycurgus(~georg@user/Lycurgus) (Quit: leaving)
2023-10-26 04:54:20 +0000 <lockywolf> I think this patch should be more or less what is needed: https://github.com/haskell/hackage-server/issues/1261#issuecomment-1780412728
2023-10-26 04:56:04 +0000rgw(~R@2605:a601:a0df:5600:e03b:6bd1:41db:b9ff) (Read error: Connection reset by peer)
2023-10-26 04:56:27 +0000euleritian(~euleritia@dynamic-046-114-224-087.46.114.pool.telefonica.de)
2023-10-26 04:59:16 +0000oo_miguel(~Thunderbi@78-11-179-96.static.ip.netia.com.pl)
2023-10-26 05:07:13 +0000machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds)
2023-10-26 05:08:16 +0000yoyofreeman(~yoyofreem@176.97.76.178) (Read error: Connection reset by peer)
2023-10-26 05:08:45 +0000euleritian(~euleritia@dynamic-046-114-224-087.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 05:09:02 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 05:09:28 +0000yoyofreeman(~yoyofreem@176.97.76.178)
2023-10-26 05:09:33 +0000rosco(~rosco@yp-150-69.tm.net.my)
2023-10-26 05:09:45 +0000billchenchina(~billchenc@113.57.152.160)
2023-10-26 05:11:27 +0000billchenchina-(~billchenc@113.57.152.160)
2023-10-26 05:14:25 +0000billchenchina(~billchenc@113.57.152.160) (Ping timeout: 255 seconds)
2023-10-26 05:17:51 +0000takuan(~takuan@178-116-218-225.access.telenet.be)
2023-10-26 05:18:08 +0000harveypwca(~harveypwc@2601:246:c280:6a90:837d:db39:3eea:f7db)
2023-10-26 05:20:02 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
2023-10-26 05:20:22 +0000euleritian(~euleritia@dynamic-046-114-224-087.46.114.pool.telefonica.de)
2023-10-26 05:23:38 +0000Katarushisu1(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net) (Ping timeout: 246 seconds)
2023-10-26 05:24:01 +0000cheater_(~Username@user/cheater)
2023-10-26 05:25:07 +0000Katarushisu1(~Katarushi@cpc147790-finc20-2-0-cust502.4-2.cable.virginm.net)
2023-10-26 05:25:18 +0000cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2023-10-26 05:25:27 +0000cheater_cheater
2023-10-26 05:25:28 +0000cheater(~Username@user/cheater) (Read error: Connection reset by peer)
2023-10-26 05:25:53 +0000billchenchina(~billchenc@2a0c:b641:7a2:230::10)
2023-10-26 05:26:13 +0000cheater_(~Username@user/cheater)
2023-10-26 05:26:13 +0000cheater_cheater
2023-10-26 05:27:28 +0000billchenchina-(~billchenc@113.57.152.160) (Ping timeout: 255 seconds)
2023-10-26 05:29:08 +0000Ascension(~Ascension@176.254.244.83)
2023-10-26 05:38:26 +0000_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
2023-10-26 05:48:10 +0000kantokuen(~kantokuen@user/kantokuen) (Ping timeout: 255 seconds)
2023-10-26 05:49:46 +0000yoyofreeman(~yoyofreem@176.97.76.178) (Read error: Connection reset by peer)
2023-10-26 05:50:18 +0000 <liamzy__> tomsmeding: what happened to your mergesort?
2023-10-26 05:59:20 +0000simendsjo(~user@84.211.91.241)
2023-10-26 06:04:54 +0000billchenchina(~billchenc@2a0c:b641:7a2:230::10) (Remote host closed the connection)
2023-10-26 06:11:44 +0000Jackneill(~Jackneill@20014C4E1E03D800C98411028F718695.dsl.pool.telekom.hu)
2023-10-26 06:11:56 +0000rosco_(~rosco@yp-150-69.tm.net.my)
2023-10-26 06:15:50 +0000rosco(~rosco@yp-150-69.tm.net.my) (Ping timeout: 255 seconds)
2023-10-26 06:20:54 +0000tzh(~tzh@c-71-193-181-0.hsd1.or.comcast.net) (Quit: zzz)
2023-10-26 06:23:38 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2023-10-26 06:23:59 +0000srk_(~sorki@user/srk)
2023-10-26 06:24:52 +0000euleritian(~euleritia@dynamic-046-114-224-087.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 06:25:09 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 06:27:58 +0000srk(~sorki@user/srk) (Ping timeout: 258 seconds)
2023-10-26 06:28:00 +0000srk|(~sorki@user/srk)
2023-10-26 06:29:00 +0000srk_(~sorki@user/srk) (Ping timeout: 248 seconds)
2023-10-26 06:30:54 +0000srk|srk
2023-10-26 06:31:48 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 258 seconds)
2023-10-26 06:32:47 +0000euleritian(~euleritia@dynamic-046-114-224-087.46.114.pool.telefonica.de)
2023-10-26 06:37:03 +0000srk_(~sorki@user/srk)
2023-10-26 06:40:12 +0000srk(~sorki@user/srk) (Ping timeout: 248 seconds)
2023-10-26 06:40:13 +0000srk_srk
2023-10-26 06:44:25 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-10-26 06:46:46 +0000jtza8(~user@165.255.63.194)
2023-10-26 06:47:19 +0000chomwitt(~chomwitt@2a02:587:7a01:8f00:1ac0:4dff:fedb:a3f1)
2023-10-26 06:50:20 +0000coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-10-26 07:02:05 +0000Vajb(~Vajb@2001:999:785:c11e:a1b8:59fa:dee7:e490) (Ping timeout: 240 seconds)
2023-10-26 07:02:59 +0000idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-10-26 07:03:37 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:23f2:3a68:9e37:e105)
2023-10-26 07:04:39 +0000Jackneill(~Jackneill@20014C4E1E03D800C98411028F718695.dsl.pool.telekom.hu) (Ping timeout: 240 seconds)
2023-10-26 07:05:12 +0000euleritian(~euleritia@dynamic-046-114-224-087.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 07:05:28 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 07:06:09 +0000liamzy__(~Inst@120.244.192.250) (Ping timeout: 255 seconds)
2023-10-26 07:06:15 +0000fendor(~fendor@2a02:8388:1640:be00:dc89:8d8:5d44:854b)
2023-10-26 07:12:56 +0000billchenchina(~billchenc@113.57.152.160)
2023-10-26 07:14:38 +0000billchenchina-(~billchenc@113.57.152.160)
2023-10-26 07:17:24 +0000billchenchina(~billchenc@113.57.152.160) (Ping timeout: 240 seconds)
2023-10-26 07:20:42 +0000ubert(~Thunderbi@178.115.66.131.wireless.dyn.drei.com)
2023-10-26 07:23:28 +0000L29Ah(~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
2023-10-26 07:24:36 +0000billchenchina-(~billchenc@113.57.152.160) (Ping timeout: 240 seconds)
2023-10-26 07:24:38 +0000billchenchina(~billchenc@2a0c:b641:7a2:230::10)
2023-10-26 07:29:30 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-10-26 07:30:09 +0000eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-10-26 07:32:53 +0000Lycurgus(~georg@li1192-118.members.linode.com)
2023-10-26 07:32:53 +0000Lycurgus(~georg@li1192-118.members.linode.com) (Changing host)
2023-10-26 07:32:53 +0000Lycurgus(~georg@user/Lycurgus)
2023-10-26 07:34:04 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 248 seconds)
2023-10-26 07:34:37 +0000kiriakos(~kiriakos@p57b651b6.dip0.t-ipconnect.de)
2023-10-26 07:41:08 +0000Lycurgus(~georg@user/Lycurgus) (Quit: leaving)
2023-10-26 07:45:51 +0000billchenchina(~billchenc@2a0c:b641:7a2:230::10) (Remote host closed the connection)
2023-10-26 07:47:33 +0000jinsun_(~jinsun@user/jinsun)
2023-10-26 07:47:33 +0000jinsunGuest3908
2023-10-26 07:47:33 +0000Guest3908(~jinsun@user/jinsun) (Killed (osmium.libera.chat (Nickname regained by services)))
2023-10-26 07:47:33 +0000jinsun_jinsun
2023-10-26 07:55:23 +0000simendsjo(~user@84.211.91.241) (Ping timeout: 255 seconds)
2023-10-26 07:57:45 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-10-26 08:00:23 +0000jtza8(~user@165.255.63.194) (Changing host)
2023-10-26 08:00:23 +0000jtza8(~user@user/jtza8)
2023-10-26 08:01:33 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 08:02:42 +0000idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.5)
2023-10-26 08:04:30 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-10-26 08:06:32 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 08:09:02 +0000vglfr(~vglfr@88.155.140.136) (Remote host closed the connection)
2023-10-26 08:09:38 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 08:17:19 +0000vglfr(~vglfr@88.155.140.136) (Remote host closed the connection)
2023-10-26 08:17:46 +0000econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2023-10-26 08:17:55 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 08:19:07 +0000vglfr(~vglfr@88.155.140.136) (Remote host closed the connection)
2023-10-26 08:19:28 +0000chele(~chele@user/chele)
2023-10-26 08:19:42 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 08:22:10 +0000vglfr(~vglfr@88.155.140.136) (Remote host closed the connection)
2023-10-26 08:22:56 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 08:23:08 +0000Lycurgus(~georg@user/Lycurgus)
2023-10-26 08:25:40 +0000Lycurgus(~georg@user/Lycurgus) (Client Quit)
2023-10-26 08:30:52 +0000harveypwca(~harveypwc@2601:246:c280:6a90:837d:db39:3eea:f7db) (Quit: Leaving)
2023-10-26 08:49:35 +0000fendor(~fendor@2a02:8388:1640:be00:dc89:8d8:5d44:854b) (Remote host closed the connection)
2023-10-26 08:49:55 +0000fendor(~fendor@2a02:8388:1640:be00:8798:5fe9:9ffe:940c)
2023-10-26 08:55:23 +0000srk_(~sorki@user/srk)
2023-10-26 08:56:34 +0000Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-10-26 08:56:47 +0000srk|(~sorki@user/srk)
2023-10-26 08:59:00 +0000srk(~sorki@user/srk) (Ping timeout: 258 seconds)
2023-10-26 09:00:04 +0000srk|srk
2023-10-26 09:00:32 +0000srk_(~sorki@user/srk) (Ping timeout: 258 seconds)
2023-10-26 09:03:42 +0000danse-nr3(~francesco@151.47.64.199)
2023-10-26 09:05:03 +0000CiaoSen(~Jura@2a05:5800:2bd:b300:664b:f0ff:fe37:9ef)
2023-10-26 09:10:16 +0000srk_(~sorki@user/srk)
2023-10-26 09:12:55 +0000Pickchea(~private@user/pickchea)
2023-10-26 09:13:14 +0000srk(~sorki@user/srk) (Ping timeout: 255 seconds)
2023-10-26 09:13:14 +0000srk_srk
2023-10-26 09:17:22 +0000Jackneill(~Jackneill@20014C4E1E03D800B8A91DB512DFB3F0.dsl.pool.telekom.hu)
2023-10-26 09:24:48 +0000mmhat(~mmh@p200300f1c719070fee086bfffe095315.dip0.t-ipconnect.de)
2023-10-26 09:25:01 +0000accord(uid568320@id-568320.hampstead.irccloud.com)
2023-10-26 09:25:34 +0000mmhat(~mmh@p200300f1c719070fee086bfffe095315.dip0.t-ipconnect.de) (Client Quit)
2023-10-26 09:31:16 +0000sm(~sm@plaintextaccounting/sm)
2023-10-26 09:34:58 +0000kantokuen(~kantokuen@user/kantokuen)
2023-10-26 09:39:22 +0000billchenchina(~billchenc@113.57.152.160)
2023-10-26 09:44:02 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Ping timeout: 246 seconds)
2023-10-26 09:47:39 +0000xigua(~xigua@user/xigua) (Remote host closed the connection)
2023-10-26 09:48:14 +0000xigua(~xigua@user/xigua)
2023-10-26 09:50:29 +0000sm_(~sm@plaintextaccounting/sm)
2023-10-26 09:53:07 +0000sm(~sm@plaintextaccounting/sm) (Ping timeout: 264 seconds)
2023-10-26 09:53:12 +0000billchenchina-(~billchenc@2408:844f:1540:3a14:66f7:dd31:6474:1bb6)
2023-10-26 09:54:48 +0000ubert(~Thunderbi@178.115.66.131.wireless.dyn.drei.com) (Ping timeout: 260 seconds)
2023-10-26 09:55:32 +0000billchenchina(~billchenc@113.57.152.160) (Ping timeout: 255 seconds)
2023-10-26 09:58:43 +0000billchenchina-(~billchenc@2408:844f:1540:3a14:66f7:dd31:6474:1bb6) (Remote host closed the connection)
2023-10-26 09:59:11 +0000billchenchina-(~billchenc@2408:844f:1540:3a14:66f7:dd31:6474:1bb6)
2023-10-26 10:00:08 +0000arahael(~arahael@119-18-2-212.771202.syd.nbn.aussiebb.net)
2023-10-26 10:05:24 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2023-10-26 10:05:43 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 264 seconds)
2023-10-26 10:06:09 +0000euleritian(~euleritia@dynamic-046-114-201-209.46.114.pool.telefonica.de)
2023-10-26 10:12:59 +0000califax(~califax@user/califx) (Remote host closed the connection)
2023-10-26 10:14:12 +0000califax(~califax@user/califx)
2023-10-26 10:16:00 +0000jjhoo(~jahakala@user/jjhoo) (Ping timeout: 272 seconds)
2023-10-26 10:16:07 +0000 <danse-nr3> runtime system crashes always shock me a bit
2023-10-26 10:17:31 +0000jjhoo(~jahakala@user/jjhoo)
2023-10-26 10:21:32 +0000CiaoSen(~Jura@2a05:5800:2bd:b300:664b:f0ff:fe37:9ef) (Ping timeout: 255 seconds)
2023-10-26 10:23:00 +0000xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 240 seconds)
2023-10-26 10:26:14 +0000rosco_(~rosco@yp-150-69.tm.net.my) (Quit: Lost terminal)
2023-10-26 10:27:56 +0000ft(~ft@p4fc2a529.dip0.t-ipconnect.de) (Quit: leaving)
2023-10-26 10:32:50 +0000vglfr(~vglfr@88.155.140.136) (Read error: Connection reset by peer)
2023-10-26 10:32:59 +0000sm_(~sm@plaintextaccounting/sm) (Quit: sm_)
2023-10-26 10:33:34 +0000sm(~sm@plaintextaccounting/sm)
2023-10-26 10:33:35 +0000L29Ah(~L29Ah@wikipedia/L29Ah)
2023-10-26 10:35:25 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2023-10-26 10:35:43 +0000sm(~sm@plaintextaccounting/sm) (Client Quit)
2023-10-26 10:42:34 +0000billchenchina-(~billchenc@2408:844f:1540:3a14:66f7:dd31:6474:1bb6) (Remote host closed the connection)
2023-10-26 10:51:33 +0000euleritian(~euleritia@dynamic-046-114-201-209.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 10:51:34 +0000Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-10-26 10:51:50 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 10:56:36 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 11:01:25 +0000_xor(~xor@72.49.199.93)
2023-10-26 11:02:26 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2023-10-26 11:02:51 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2023-10-26 11:05:20 +0000__monty__(~toonn@user/toonn)
2023-10-26 11:06:28 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 11:07:42 +0000falafel(~falafel@62.175.113.194.dyn.user.ono.com)
2023-10-26 11:08:45 +0000_xor(~xor@72.49.199.93)
2023-10-26 11:11:03 +0000danse-nr3(~francesco@151.47.64.199) (Ping timeout: 240 seconds)
2023-10-26 11:11:08 +0000random-jellyfish(~tiber@user/random-jellyfish) (Ping timeout: 248 seconds)
2023-10-26 11:12:14 +0000random-jellyfish(~tiber@user/random-jellyfish)
2023-10-26 11:12:39 +0000CiaoSen(~Jura@2a05:5800:2bd:b300:664b:f0ff:fe37:9ef)
2023-10-26 11:12:45 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 11:14:52 +0000_xor(~xor@72.49.199.93)
2023-10-26 11:15:33 +0000arahael(~arahael@119-18-2-212.771202.syd.nbn.aussiebb.net) (Quit: leaving)
2023-10-26 11:15:48 +0000arahael(~arahael@119-18-2-212.771202.syd.nbn.aussiebb.net)
2023-10-26 11:17:27 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 11:19:52 +0000_xor(~xor@72.49.199.93)
2023-10-26 11:20:45 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 11:21:20 +0000xff0x(~xff0x@ai101218.d.east.v6connect.net)
2023-10-26 11:23:03 +0000_xor(~xor@72.49.199.93)
2023-10-26 11:24:28 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 11:25:29 +0000 <srk> I've managed to produce one today using unsafeCoerce. I wonder it this is a valid use for it https://paste.rs/3jD0W.hs and if it is possible to rewrite it using just coerce. (it seems to work currently, unsafeCoerce seems fine for a testsuite only instance but still)
2023-10-26 11:26:44 +0000_xor(~xor@72.49.199.93)
2023-10-26 11:26:50 +0000 <srk> (forall is redundant, leftover from previous attempts)
2023-10-26 11:30:14 +0000lisbeths(uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-10-26 11:30:59 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-10-26 11:35:24 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2023-10-26 11:41:40 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 11:42:42 +0000Square3(~Square4@user/square)
2023-10-26 11:45:26 +0000kilolympus(~kilolympu@31.205.200.235) (Quit: See you later! :))
2023-10-26 11:48:28 +0000random-jellyfish(~tiber@user/random-jellyfish) (Ping timeout: 272 seconds)
2023-10-26 11:51:07 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Ping timeout: 258 seconds)
2023-10-26 11:57:55 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2023-10-26 11:58:18 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 12:00:05 +0000simendsjo(~user@84.209.170.3)
2023-10-26 12:01:38 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-10-26 12:03:14 +0000falafel(~falafel@62.175.113.194.dyn.user.ono.com) (Ping timeout: 255 seconds)
2023-10-26 12:03:59 +0000coco(~user@p5dd9a20e.dip0.t-ipconnect.de)
2023-10-26 12:04:03 +0000 <coco> hi
2023-10-26 12:04:34 +0000 <coco> I'm passing --no-install-ghc to stack, but it still downloads ghc. What am I doing wrong?
2023-10-26 12:06:30 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2023-10-26 12:18:24 +0000danse-nr3(~francesco@151.47.64.198)
2023-10-26 12:23:21 +0000 <danse-nr3> srk, which type of crash was that? Segmentation fault?
2023-10-26 12:24:55 +0000coco(~user@p5dd9a20e.dip0.t-ipconnect.de) (Remote host closed the connection)
2023-10-26 12:25:16 +0000vpan(~vpan@212.117.1.172)
2023-10-26 12:25:35 +0000vpanGuest2756
2023-10-26 12:25:53 +0000Guest2756vpan
2023-10-26 12:28:27 +0000danse-nr3(~francesco@151.47.64.198) (Read error: Connection reset by peer)
2023-10-26 12:28:42 +0000danse-nr3(~francesco@151.44.128.52)
2023-10-26 12:30:06 +0000 <srk> danse-nr3: yes, but that's kind-of expected when you mis-use unsafe* stuff
2023-10-26 12:31:17 +0000random-jellyfish(~tiber@2a02:2f04:11e:c600:3458:8bb4:861c:95b2)
2023-10-26 12:31:17 +0000random-jellyfish(~tiber@2a02:2f04:11e:c600:3458:8bb4:861c:95b2) (Changing host)
2023-10-26 12:31:17 +0000random-jellyfish(~tiber@user/random-jellyfish)
2023-10-26 12:46:10 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2023-10-26 12:55:42 +0000danse-nr3_(~francesco@151.43.173.25)
2023-10-26 12:58:26 +0000danse-nr3(~francesco@151.44.128.52) (Ping timeout: 260 seconds)
2023-10-26 12:59:03 +0000dcoutts_(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Remote host closed the connection)
2023-10-26 13:00:50 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 255 seconds)
2023-10-26 13:02:14 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-10-26 13:02:15 +0000dcoutts_(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-10-26 13:02:15 +0000dcoutts_(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Remote host closed the connection)
2023-10-26 13:02:44 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2023-10-26 13:03:18 +0000danse-nr3_(~francesco@151.43.173.25) (Remote host closed the connection)
2023-10-26 13:03:41 +0000danse-nr3_(~francesco@151.43.173.25)
2023-10-26 13:13:46 +0000pavonia(~user@user/siracusa) (Quit: Bye!)
2023-10-26 13:17:24 +0000lambdap2371(~lambdap@static.167.190.119.168.clients.your-server.de) (Quit: lambdap2371)
2023-10-26 13:17:41 +0000lambdap2371(~lambdap@static.167.190.119.168.clients.your-server.de)
2023-10-26 13:21:18 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds)
2023-10-26 13:30:46 +0000Maxdamantus(~Maxdamant@user/maxdamantus) (Ping timeout: 255 seconds)
2023-10-26 13:32:24 +0000Maxdamantus(~Maxdamant@user/maxdamantus)
2023-10-26 13:34:26 +0000kupi(uid212005@id-212005.hampstead.irccloud.com)
2023-10-26 13:40:30 +0000Pickchea(~private@user/pickchea)
2023-10-26 13:48:25 +0000simendsjo(~user@84.209.170.3) (Ping timeout: 258 seconds)
2023-10-26 13:54:59 +0000kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2023-10-26 13:57:50 +0000CO2(CO2@gateway/vpn/protonvpn/co2) (Quit: WeeChat 4.1.0)
2023-10-26 13:58:14 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 13:59:43 +0000Pickchea(~private@user/pickchea) (Ping timeout: 255 seconds)
2023-10-26 14:07:40 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds)
2023-10-26 14:08:18 +0000euleritian(~euleritia@dynamic-046-114-206-102.46.114.pool.telefonica.de)
2023-10-26 14:08:58 +0000_xor(~xor@72.49.199.93) (Read error: Connection reset by peer)
2023-10-26 14:09:17 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 14:09:52 +0000_xor(~xor@72.49.199.93)
2023-10-26 14:12:08 +0000Lycurgus(~georg@user/Lycurgus)
2023-10-26 14:13:06 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
2023-10-26 14:14:44 +0000jtza8(~user@user/jtza8) (Ping timeout: 255 seconds)
2023-10-26 14:16:46 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-10-26 14:19:02 +0000euleritian(~euleritia@dynamic-046-114-206-102.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 14:19:19 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 14:26:43 +0000machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-10-26 14:27:33 +0000billchenchina(~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe)
2023-10-26 14:28:14 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
2023-10-26 14:28:36 +0000euleritian(~euleritia@dynamic-046-114-206-102.46.114.pool.telefonica.de)
2023-10-26 14:29:52 +0000terrorjack(~terrorjac@2a01:4f8:c17:87f8::) (Quit: The Lounge - https://thelounge.chat)
2023-10-26 14:31:13 +0000mc47(~mc47@xmonad/TheMC47)
2023-10-26 14:31:26 +0000billchenchina(~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe) (Remote host closed the connection)
2023-10-26 14:31:30 +0000euleritian(~euleritia@dynamic-046-114-206-102.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 14:31:41 +0000billchenchina(~billchenc@2408:824e:d25:b11:d040:81bb:144:724d)
2023-10-26 14:31:49 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 14:32:21 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 260 seconds)
2023-10-26 14:33:54 +0000terrorjack(~terrorjac@2a01:4f8:c17:87f8::)
2023-10-26 14:34:27 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2023-10-26 14:34:40 +0000aljazmc(~aljazmc@user/aljazmc)
2023-10-26 14:35:01 +0000Lycurgus(~georg@user/Lycurgus) (Quit: leaving)
2023-10-26 14:38:24 +0000Sgeo(~Sgeo@user/sgeo)
2023-10-26 14:38:31 +0000John_Ivan_(~John_Ivan@user/john-ivan/x-1515935) (Read error: Connection reset by peer)
2023-10-26 14:38:40 +0000John_Ivan_(~John_Ivan@user/john-ivan/x-1515935)
2023-10-26 14:41:22 +0000CiaoSen(~Jura@2a05:5800:2bd:b300:664b:f0ff:fe37:9ef) (Ping timeout: 272 seconds)
2023-10-26 14:41:22 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2023-10-26 14:42:11 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 14:45:14 +0000econo_(uid147250@id-147250.tinside.irccloud.com)
2023-10-26 14:48:43 +0000aljazmc(~aljazmc@user/aljazmc) (Remote host closed the connection)
2023-10-26 14:49:04 +0000sabino(~sabino@user/sabino)
2023-10-26 14:50:39 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-10-26 14:55:27 +0000rgw(~R@2605:a601:a0df:5600:589:1f53:7d7d:df53)
2023-10-26 15:00:42 +0000billchenchina-(~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe)
2023-10-26 15:00:54 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 245 seconds)
2023-10-26 15:01:20 +0000euleritian(~euleritia@dynamic-046-114-206-102.46.114.pool.telefonica.de)
2023-10-26 15:03:10 +0000billchenchina(~billchenc@2408:824e:d25:b11:d040:81bb:144:724d) (Ping timeout: 258 seconds)
2023-10-26 15:03:21 +0000billchenchina-(~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe) (Remote host closed the connection)
2023-10-26 15:03:47 +0000billchenchina-(~billchenc@103.152.35.21)
2023-10-26 15:06:10 +0000haskellbridge(~haskellbr@069-135-003-034.biz.spectrum.com) (Ping timeout: 255 seconds)
2023-10-26 15:11:10 +0000CO2(CO2@gateway/vpn/protonvpn/co2)
2023-10-26 15:12:14 +0000ski(~ski@88.131.7.247)
2023-10-26 15:14:24 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-10-26 15:14:55 +0000danse-nr3_(~francesco@151.43.173.25) (Remote host closed the connection)
2023-10-26 15:15:20 +0000danse-nr3_(~francesco@151.43.173.25)
2023-10-26 15:15:31 +0000arahael(~arahael@119-18-2-212.771202.syd.nbn.aussiebb.net) (Ping timeout: 260 seconds)
2023-10-26 15:15:59 +0000billchenchina-(~billchenc@103.152.35.21) (Read error: Connection reset by peer)
2023-10-26 15:17:16 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Remote host closed the connection)
2023-10-26 15:17:33 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 15:17:35 +0000billchenchina(~billchenc@103.152.35.21)
2023-10-26 15:19:03 +0000lortabac(~lortabac@2a01:e0a:541:b8f0:23f2:3a68:9e37:e105) (Quit: WeeChat 2.8)
2023-10-26 15:19:24 +0000euleritian(~euleritia@dynamic-046-114-206-102.46.114.pool.telefonica.de) (Read error: Connection reset by peer)
2023-10-26 15:19:41 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 15:30:37 +0000haveo(~haveo@sl35.iuwt.fr) (Ping timeout: 255 seconds)
2023-10-26 15:32:31 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-10-26 15:33:13 +0000tiber_(~tiber@213.233.108.178)
2023-10-26 15:33:19 +0000random-jellyfish(~tiber@user/random-jellyfish) (Ping timeout: 264 seconds)
2023-10-26 15:35:07 +0000haveo(~haveo@sl35.iuwt.fr)
2023-10-26 15:37:44 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 272 seconds)
2023-10-26 15:38:08 +0000haskellbridge(~haskellbr@069-135-003-034.biz.spectrum.com)
2023-10-26 15:38:08 +0000ChanServ+v haskellbridge
2023-10-26 15:38:09 +0000haskellbridge(~haskellbr@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
2023-10-26 15:38:33 +0000haskellbridge(~haskellbr@069-135-003-034.biz.spectrum.com)
2023-10-26 15:38:33 +0000ChanServ+v haskellbridge
2023-10-26 15:39:24 +0000notzmv(~zmv@user/notzmv)
2023-10-26 15:45:19 +0000ski(~ski@88.131.7.247) (Ping timeout: 255 seconds)
2023-10-26 15:48:04 +0000califax(~califax@user/califx) (Ping timeout: 256 seconds)
2023-10-26 15:50:28 +0000gmg(~user@user/gehmehgeh)
2023-10-26 15:52:25 +0000califax(~califax@user/califx)
2023-10-26 15:53:46 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2023-10-26 15:54:37 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 16:00:44 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2023-10-26 16:01:25 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 16:02:07 +0000machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 255 seconds)
2023-10-26 16:02:40 +0000tiber__(~tiber@2a02:2f04:11e:c600:895a:e128:f425:deba)
2023-10-26 16:03:35 +0000tiber_(~tiber@213.233.108.178) (Ping timeout: 240 seconds)
2023-10-26 16:05:38 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 256 seconds)
2023-10-26 16:06:15 +0000chele(~chele@user/chele) (Remote host closed the connection)
2023-10-26 16:07:18 +0000FinnElija(~finn_elij@user/finn-elija/x-0085643)
2023-10-26 16:08:02 +0000fendor(~fendor@2a02:8388:1640:be00:8798:5fe9:9ffe:940c) (Ping timeout: 255 seconds)
2023-10-26 16:09:08 +0000lbseale(~quassel@user/ep1ctetus) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2023-10-26 16:09:39 +0000lbseale(~quassel@user/ep1ctetus)
2023-10-26 16:10:01 +0000pixelmonk(~pixelmonk@50.205.76.66)
2023-10-26 16:10:28 +0000kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2023-10-26 16:16:07 +0000 <danse-nr3_> what is the term of part of a module path as in Term1.Term2.Module?
2023-10-26 16:16:51 +0000 <c_wraith> as far as Haskell-the-language is concerned, it's all just the module name.
2023-10-26 16:17:06 +0000lbseale(~quassel@user/ep1ctetus) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2023-10-26 16:17:15 +0000 <danse-nr3_> yeah did not find anything more specific in haskell.org/onlinereport/modules.html. Cheers
2023-10-26 16:17:15 +0000 <c_wraith> module names may contain dots. those dots do not imply any sort of hierarchy or relationship, internally
2023-10-26 16:18:00 +0000lbseale(~quassel@user/ep1ctetus)
2023-10-26 16:19:09 +0000 <EvanR> I don't understand the context-free grammar for that
2023-10-26 16:19:18 +0000 <EvanR> modid
2023-10-26 16:19:36 +0000 <EvanR> it's defined as a conid, but those don't have periods?
2023-10-26 16:20:29 +0000 <c_wraith> err. I'm seeing "modid → {conid .} conid"
2023-10-26 16:21:06 +0000 <EvanR> ok I was looking at haskell 98
2023-10-26 16:21:19 +0000 <c_wraith> ah, yes. Haskell98 did not allow . in module names
2023-10-26 16:21:35 +0000Square3(~Square4@user/square) (Ping timeout: 240 seconds)
2023-10-26 16:21:48 +0000 <c_wraith> Though that was added very shortly thereafter
2023-10-26 16:21:48 +0000 <EvanR> a simpler time!
2023-10-26 16:22:14 +0000 <danse-nr3_> my fault had that link in my history ...
2023-10-26 16:22:56 +0000 <c_wraith> "Because they are allowed to be mutually recursive, modules allow a program to be partitioned freely without regard to dependencies"
2023-10-26 16:23:15 +0000 <c_wraith> Oh, if only that were practically true in GHC....
2023-10-26 16:24:05 +0000vpan(~vpan@212.117.1.172) (Quit: Leaving.)
2023-10-26 16:26:03 +0000 <EvanR> GHC is imperfect, my code runs on platonic haskell
2023-10-26 16:26:14 +0000 <EvanR> in the platonic realm
2023-10-26 16:26:41 +0000fendor(~fendor@2a02:8388:1640:be00:8798:5fe9:9ffe:940c)
2023-10-26 16:34:36 +0000tzh(~tzh@c-71-193-181-0.hsd1.or.comcast.net)
2023-10-26 16:37:41 +0000 <carbolymer> a nix related question, how can I add tools to my devshell here: https://gitlab.com/carbolymer/haskell-sandbox/-/blob/master/flake.nix?ref_type=heads#L45 ?
2023-10-26 16:37:58 +0000danse-nr3_(~francesco@151.43.173.25) (Ping timeout: 255 seconds)
2023-10-26 16:42:03 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2023-10-26 16:42:45 +0000euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2023-10-26 16:43:47 +0000 <srk> carbolymer: mkShell
2023-10-26 16:44:46 +0000 <tomsmeding> @tell liamzy__ https://github.com/haskell/play-haskell/issues/25
2023-10-26 16:44:47 +0000 <lambdabot> Consider it noted.
2023-10-26 16:45:03 +0000 <tomsmeding> not that I think they'll take that nick again, but perhaps
2023-10-26 16:47:26 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 258 seconds)
2023-10-26 16:52:10 +0000 <carbolymer> srk: doesn't seem to be exactly what I need - it tries to recompile packages: https://bpa.st/ABIA
2023-10-26 16:54:33 +0000 <[Leary]> carbolymer: Try `devShells.default = pkgs.haskellPackages.shellFor { packages = hp: [ hp.haskellSandbox ]; nativeBuildInputs = [ tool1 tool2 ... ]; };`
2023-10-26 16:54:44 +0000Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-10-26 16:57:07 +0000 <carbolymer> [Leary]: seems to be it, thanks!
2023-10-26 17:02:25 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-10-26 17:04:58 +0000WzC(~Frank@77-162-168-71.fixed.kpn.net)
2023-10-26 17:06:35 +0000vglfr(~vglfr@88.155.140.136) (Read error: Connection reset by peer)
2023-10-26 17:06:46 +0000Noinia(~Frank@77-162-168-71.fixed.kpn.net) (Ping timeout: 255 seconds)
2023-10-26 17:07:59 +0000AlexZenon(~alzenon@178.34.162.116) (Ping timeout: 255 seconds)
2023-10-26 17:12:10 +0000 <srk> carbolymer: I think it would work using inputsFrom = [ pkgs.haskellPackages.haskellSandbox.env.buildInputs ]; but [Leary]s solution is better for sure
2023-10-26 17:17:07 +0000tiber__(~tiber@2a02:2f04:11e:c600:895a:e128:f425:deba) (Ping timeout: 264 seconds)
2023-10-26 17:18:57 +0000kilolympus(~kilolympu@31.205.200.235)
2023-10-26 17:20:50 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-10-26 17:21:13 +0000 <carbolymer> srk: what's the advantage of shellFor?
2023-10-26 17:28:30 +0000 <dostoyevsky2> Beginner question: When you look at code like <<ParseSuccess r' s'' n' m' → ParseSuccess r' s'' (n + n') (furthest m (offset n . m'))>> -- how do you know what's a string? (This is from geordi's source code, #c++ eval bot)
2023-10-26 17:28:57 +0000AlexZenon(~alzenon@178.34.162.116)
2023-10-26 17:29:33 +0000 <EvanR> is that actual haskell
2023-10-26 17:29:54 +0000 <geekosaur> with UnicodeSyntax
2023-10-26 17:30:28 +0000 <EvanR> is it type level or term level
2023-10-26 17:30:36 +0000 <EvanR> I can't read it
2023-10-26 17:30:57 +0000 <carbolymer> is there a type level dot?
2023-10-26 17:30:57 +0000 <EvanR> I am skeptical of this being a beginner question
2023-10-26 17:31:10 +0000 <dostoyevsky2> EvanR: https://github.com/Eelis/geordi/tree/master <- github says it's Haskell 78.6%
2023-10-26 17:31:32 +0000 <ghoulguy> That looks like a case branch
2023-10-26 17:32:00 +0000 <EvanR> oh, is << and >> quotation marks in your language
2023-10-26 17:32:13 +0000 <geekosaur> yeh
2023-10-26 17:32:22 +0000 <geekosaur> «»
2023-10-26 17:33:22 +0000 <dostoyevsky2> EvanR: Normally I'd quote LaTeX-style `' but that's confusing if the code itself contains '
2023-10-26 17:33:23 +0000 <EvanR> dostoyevsky2, it's very helpful to look around for type signatures to help you identify what is what type
2023-10-26 17:34:17 +0000 <EvanR> hopefully they put type signatures
2023-10-26 17:34:41 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Remote host closed the connection)
2023-10-26 17:34:52 +0000 <dostoyevsky2> > if before' == before then mzero else return $ before' ++ (if c == ']' then "" else " [with")
2023-10-26 17:34:53 +0000 <lambdabot> error: Variable not in scope: before'error: Variable not in scope: beforeerr...
2023-10-26 17:35:19 +0000 <dostoyevsky2> I can guess that before' is probably a derived variable and ']' is a char... but not sure what the actual syntax rules are here
2023-10-26 17:35:44 +0000 <EvanR> before' and before are variables, ']' is a Char literal
2023-10-26 17:36:20 +0000 <EvanR> that they are being compared for equality doesn't narrow down the types much
2023-10-26 17:36:52 +0000 <EvanR> > [3.14 == 7.3, 'a' == 'a', False == True]
2023-10-26 17:36:53 +0000 <lambdabot> [False,True,False]
2023-10-26 17:37:02 +0000 <mauke> before' is being concatenated with a String, which helps
2023-10-26 17:37:10 +0000 <dostoyevsky2> https://github.com/Eelis/geordi/blob/master/src/ErrorFilters.hs <- it mentions String a lot (since it's cleaning up gcc error messages) so I guess they are Strings
2023-10-26 17:37:13 +0000 <geekosaur> but the rest does; absent OverloadedTypes it looks like before' and therefore before are String
2023-10-26 17:37:42 +0000 <mauke> also, it's using ++ to do so, which nails down the type to [a] in any case
2023-10-26 17:37:57 +0000 <geekosaur> true
2023-10-26 17:39:13 +0000 <mauke> dostoyevsky2: in your original question, nothing is a string
2023-10-26 17:39:13 +0000 <EvanR> dostoyevsky2, 94 is where before is introduced, and comes from manyTill, which produces a list, anyChar is a parser which produces a Char, so you have [Char]. Which String is a synonym of
2023-10-26 17:39:21 +0000 <mauke> it's pretty generic code
2023-10-26 17:48:20 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-10-26 17:51:26 +0000L29Ah(~L29Ah@wikipedia/L29Ah) ()
2023-10-26 17:51:52 +0000L29Ah(~L29Ah@wikipedia/L29Ah)
2023-10-26 17:57:53 +0000tabemann__(~tabemann@2600:1700:7990:24e0:a299:50e0:47de:b82a)
2023-10-26 17:58:48 +0000tabemann_(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Read error: Connection reset by peer)
2023-10-26 18:01:59 +0000Cale(~cale@cpe80d04ade0a03-cm80d04ade0a01.cpe.net.cable.rogers.com) (Read error: Connection reset by peer)
2023-10-26 18:02:01 +0000Inst(~Inst@120.244.192.250)
2023-10-26 18:02:07 +0000 <Inst> what does ghc --info do?
2023-10-26 18:02:17 +0000 <Inst> https://downloads.haskell.org/ghc/latest/docs/users_guide/using.html#ghc-flag---info
2023-10-26 18:02:48 +0000 <geekosaur> dumps the settings with which ghc was built
2023-10-26 18:03:40 +0000falafel(~falafel@62.175.113.194.dyn.user.ono.com)
2023-10-26 18:05:04 +0000 <geekosaur> https://paste.tomsmeding.com/k0bDPZjI
2023-10-26 18:06:53 +0000 <srk> carbolymer: just a shorthand, you could even ditch shellFor or mkShell for mkDerivation like this https://github.com/HaskellEmbedded/ivory-tower-nix/blob/master/makeshell.nix
2023-10-26 18:10:45 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 18:20:53 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Remote host closed the connection)
2023-10-26 18:21:08 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 18:23:28 +0000pixelmonk(~pixelmonk@50.205.76.66) (Ping timeout: 252 seconds)
2023-10-26 18:26:14 +0000pixelmonk(~pixelmonk@50.205.76.66)
2023-10-26 18:30:50 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 18:32:39 +0000CO2(CO2@gateway/vpn/protonvpn/co2) (Quit: WeeChat 4.1.0)
2023-10-26 18:34:12 +0000CO2(CO2@gateway/vpn/protonvpn/co2)
2023-10-26 18:35:38 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds)
2023-10-26 18:46:02 +0000billchenchina(~billchenc@103.152.35.21) (Remote host closed the connection)
2023-10-26 18:46:30 +0000stuu22(~stuuu@2a01:c23:94c4:1800:3884:9c63:e0:2f3)
2023-10-26 18:46:46 +0000stuu22(~stuuu@2a01:c23:94c4:1800:3884:9c63:e0:2f3) (Client Quit)
2023-10-26 18:48:55 +0000falafel(~falafel@62.175.113.194.dyn.user.ono.com) (Ping timeout: 255 seconds)
2023-10-26 18:49:35 +0000chomwitt(~chomwitt@2a02:587:7a01:8f00:1ac0:4dff:fedb:a3f1) (Ping timeout: 240 seconds)
2023-10-26 18:52:42 +0000ash3en(~ash3en@2a01:c23:94c4:1800:3884:9c63:e0:2f3)
2023-10-26 18:54:15 +0000 <ash3en> hi, me again: anyone got ld.lld errors when trying to compile for windows? error started to show up when i added aeson to my code. something about undefined symbol. on mac it helped to update to ghc 9.6.2, but no luck on windows with that..
2023-10-26 18:57:36 +0000accord(uid568320@id-568320.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2023-10-26 18:59:40 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-10-26 19:07:33 +0000tiber__(~tiber@2a02:2f04:11e:c600:895a:e128:f425:deba)
2023-10-26 19:08:42 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Remote host closed the connection)
2023-10-26 19:09:55 +0000_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-10-26 19:16:36 +0000Pickchea(~private@user/pickchea)
2023-10-26 19:20:11 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 255 seconds)
2023-10-26 19:20:29 +0000ash3en(~ash3en@2a01:c23:94c4:1800:3884:9c63:e0:2f3) (Ping timeout: 245 seconds)
2023-10-26 19:20:56 +0000dcoutts(~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
2023-10-26 19:28:22 +0000chomwitt(~chomwitt@2a02:587:7a01:8f00:1ac0:4dff:fedb:a3f1)
2023-10-26 19:28:22 +0000vglfr(~vglfr@88.155.140.136) (Read error: Connection reset by peer)
2023-10-26 19:34:00 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-10-26 19:34:36 +0000chomwitt(~chomwitt@2a02:587:7a01:8f00:1ac0:4dff:fedb:a3f1) (Ping timeout: 272 seconds)
2023-10-26 19:35:16 +0000ash3en(~ash3en@2a01:c23:94c4:1800:3884:9c63:e0:2f3)
2023-10-26 19:38:09 +0000gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2023-10-26 19:38:47 +0000pixelmonk(~pixelmonk@50.205.76.66) (Ping timeout: 258 seconds)
2023-10-26 19:38:52 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds)
2023-10-26 19:41:05 +0000ash3en(~ash3en@2a01:c23:94c4:1800:3884:9c63:e0:2f3) (Ping timeout: 258 seconds)
2023-10-26 19:42:01 +0000idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-10-26 19:43:28 +0000tiber__(~tiber@2a02:2f04:11e:c600:895a:e128:f425:deba) (Ping timeout: 272 seconds)
2023-10-26 19:43:51 +0000megaTherion(~therion@unix.io) (Ping timeout: 240 seconds)
2023-10-26 19:44:07 +0000megaTherion(~therion@unix.io)
2023-10-26 19:44:14 +0000fweht(uid404746@id-404746.lymington.irccloud.com)
2023-10-26 19:44:17 +0000gmg(~user@user/gehmehgeh)
2023-10-26 19:45:18 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2)
2023-10-26 19:45:56 +0000Square(~Square@user/square)
2023-10-26 19:50:19 +0000 <Inst> performance wise, what does having a phantom type do with regard to performance?
2023-10-26 19:50:58 +0000masterbuilder(~masterbui@user/masterbuilder) (Ping timeout: 260 seconds)
2023-10-26 19:51:32 +0000 <EvanR> nothing, types don't exist at runtime
2023-10-26 19:51:47 +0000 <monochrom> Bayesianly I could claim that 90% of phantom types don't add any cost because 90% of phantom types I've seen don't add any cost.
2023-10-26 19:52:30 +0000 <monochrom> But honestly you should just look at how a specific phantom type is actually defined, then it is obvious because you already know how "data" works and how "newtype" works.
2023-10-26 19:52:55 +0000 <Inst> i'm assuming phantom type parameters affect optimization
2023-10-26 19:52:56 +0000 <monochrom> Proxy is the other 10%.
2023-10-26 19:53:40 +0000 <EvanR> if proxy is costing something, it's not because of phantom types
2023-10-26 19:53:57 +0000sm(~sm@plaintextaccounting/sm)
2023-10-26 19:53:58 +0000 <EvanR> but because of type class and ad hoc polymorphism
2023-10-26 19:54:11 +0000 <EvanR> which is something at runtime
2023-10-26 19:54:16 +0000 <monochrom> Well, Proxy is the other 9%, :~: is the remaining 1%. Or something.
2023-10-26 19:55:05 +0000 <EvanR> Inst, care to elaborate
2023-10-26 19:55:45 +0000 <Inst> 斯塔特# 佛日instanceis泼了一抹热平衡ic, 日光和他?
2023-10-26 19:55:51 +0000 <Inst> State for instance is polymorphic, right?
2023-10-26 19:55:58 +0000eggplant_(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-10-26 19:56:35 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:7473:6047:87f6:c0b2) (Ping timeout: 240 seconds)
2023-10-26 19:57:17 +0000 <Inst> State#, I mean
2023-10-26 19:57:26 +0000 <Inst> but it's all weird polymorphism tricks afaik
2023-10-26 19:58:21 +0000 <EvanR> newtypes don't exist at runtime, phantom type params or not
2023-10-26 19:58:56 +0000 <Inst> https://hackage.haskell.org/package/base-4.19.0.0/docs/GHC-Exts.html#t:State-35-
2023-10-26 19:59:20 +0000 <c_wraith> monochrom: I'm not sure I buy that the arguments to :~: are actually phantom, because the constructor *does* use them.
2023-10-26 19:59:28 +0000 <monochrom> Pretty sure this kind of qualitative reasoning gets you nowhere.
2023-10-26 19:59:34 +0000 <Inst> look at https://github.com/haskell/cabal/blame/master/Cabal/src/Distribution/GetOpt.hs
2023-10-26 20:00:00 +0000 <EvanR> what am I looking at
2023-10-26 20:00:01 +0000 <Inst> ArgOrder a, it had its polymorphic error type factored out
2023-10-26 20:00:20 +0000eggplant_(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 255 seconds)
2023-10-26 20:00:23 +0000 <Inst> so i'm surprised when that got factored out, no one thought to change it to ArgOrder instead of ArgOrder a, with a phantom
2023-10-26 20:00:38 +0000 <Inst> compare:
2023-10-26 20:00:39 +0000 <Inst> https://hackage.haskell.org/package/base-4.19.0.0/docs/src/System.Console.GetOpt.html#getOpt
2023-10-26 20:01:03 +0000 <monochrom> c_wraith: Fortunately under Bayesianism I have factored in an estimate of how many people consider it a phantom type in my total probability >:)
2023-10-26 20:01:47 +0000 <EvanR> removing the phantom from ArgOrder a only affects the type checking and that's it
2023-10-26 20:02:00 +0000pixelmonk(~pixelmonk@50.205.76.66)
2023-10-26 20:02:33 +0000 <EvanR> and then you can write more programs by mixing ArgOrders differently, affecting performance, I guess
2023-10-26 20:08:11 +0000mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2023-10-26 20:15:32 +0000ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 256 seconds)
2023-10-26 20:15:32 +0000_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
2023-10-26 20:17:27 +0000sansk(~sansk@user/sansk)
2023-10-26 20:17:55 +0000ec(~ec@gateway/tor-sasl/ec)
2023-10-26 20:18:29 +0000sm(~sm@plaintextaccounting/sm) (Quit: sm)
2023-10-26 20:19:58 +0000fendor(~fendor@2a02:8388:1640:be00:8798:5fe9:9ffe:940c) (Remote host closed the connection)
2023-10-26 20:22:34 +0000Inst_(~Inst@120.244.192.250)
2023-10-26 20:24:53 +0000Inst(~Inst@120.244.192.250) (Ping timeout: 246 seconds)
2023-10-26 20:28:55 +0000sm(~sm@plaintextaccounting/sm)
2023-10-26 20:29:30 +0000sm(~sm@plaintextaccounting/sm) (Client Quit)
2023-10-26 20:33:47 +0000Square3(~Square4@user/square)
2023-10-26 20:35:51 +0000Inst_(~Inst@120.244.192.250) (Read error: Connection reset by peer)
2023-10-26 20:36:03 +0000takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2023-10-26 20:36:19 +0000Square(~Square@user/square) (Ping timeout: 245 seconds)
2023-10-26 20:41:31 +0000machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-10-26 20:48:52 +0000Lycurgus(~georg@user/Lycurgus)
2023-10-26 20:49:02 +0000idgaen(~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.5)
2023-10-26 20:52:29 +0000masterbuilder(~masterbui@user/masterbuilder)
2023-10-26 20:57:28 +0000pixelmonk(~pixelmonk@50.205.76.66) (Ping timeout: 260 seconds)
2023-10-26 21:00:26 +0000Guest|62(~Guest|62@158.181.77.54)
2023-10-26 21:06:08 +0000__monty__(~toonn@user/toonn) (Quit: leaving)
2023-10-26 21:06:44 +0000Jackneill(~Jackneill@20014C4E1E03D800B8A91DB512DFB3F0.dsl.pool.telekom.hu) (Ping timeout: 245 seconds)
2023-10-26 21:10:46 +0000pavonia(~user@user/siracusa)
2023-10-26 21:11:55 +0000Lycurgus(~georg@user/Lycurgus) (Quit: leaving)
2023-10-26 21:14:34 +0000[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-10-26 21:22:11 +0000zero(~z@user/zero)
2023-10-26 21:25:21 +0000yin(~z@user/zero) (Ping timeout: 258 seconds)
2023-10-26 21:25:40 +0000pixelmonk(~pixelmonk@50.205.76.66)
2023-10-26 21:26:29 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-10-26 21:33:46 +0000vglfr(~vglfr@88.155.140.136)
2023-10-26 21:34:11 +0000sansk(~sansk@user/sansk) (Quit: WeeChat 4.0.4)
2023-10-26 21:35:22 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-10-26 21:36:34 +0000 <shapr> @quote tromp
2023-10-26 21:36:34 +0000 <lambdabot> tromp says: the number of legal 17x17 Go positions is 9895749638558742166 modulo 18446744073709551577 :)
2023-10-26 21:37:25 +0000 <tromp> @quote shapr
2023-10-26 21:37:25 +0000 <lambdabot> shapr says: I can has lambda now?
2023-10-26 21:37:29 +0000 <shapr> haha
2023-10-26 21:37:34 +0000 <shapr> howdy tromp, how's life?
2023-10-26 21:37:51 +0000 <tromp> jolly good, but missing the summer weather
2023-10-26 21:37:55 +0000 <shapr> yeah, same here
2023-10-26 21:38:19 +0000Inst_(~Inst@120.244.192.250)
2023-10-26 21:43:00 +0000coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-10-26 21:50:51 +0000liamzy__(~Inst@120.244.192.250)
2023-10-26 21:51:17 +0000michalz(~michalz@185.246.207.218) (Remote host closed the connection)
2023-10-26 21:53:17 +0000CiaoSen(~Jura@2a05:5800:2bd:b300:664b:f0ff:fe37:9ef)
2023-10-26 21:53:43 +0000Inst_(~Inst@120.244.192.250) (Ping timeout: 264 seconds)
2023-10-26 21:53:50 +0000Guest|62(~Guest|62@158.181.77.54) (Quit: Connection closed)
2023-10-26 21:56:56 +0000Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-10-26 21:58:47 +0000vglfr(~vglfr@88.155.140.136) (Read error: Connection reset by peer)
2023-10-26 21:59:58 +0000o-90(~o-90@gateway/tor-sasl/o-90)
2023-10-26 22:04:15 +0000tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-10-26 22:06:43 +0000falafel(~falafel@62.175.113.194.dyn.user.ono.com)
2023-10-26 22:10:59 +0000eggplantade(~Eggplanta@2600:1700:38c5:d800:a583:cfb:37b7:5112)
2023-10-26 22:12:37 +0000accord(uid568320@id-568320.hampstead.irccloud.com)
2023-10-26 22:13:58 +0000mekeor(~user@2001:a61:10c6:e601:550e:a048:6ed7:5ec4)
2023-10-26 22:15:18 +0000pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2023-10-26 22:19:03 +0000falafel_(~falafel@143.244.47.73)
2023-10-26 22:19:49 +0000falafel_(~falafel@143.244.47.73) (Remote host closed the connection)
2023-10-26 22:20:43 +0000falafel(~falafel@62.175.113.194.dyn.user.ono.com) (Ping timeout: 264 seconds)
2023-10-26 22:20:50 +0000Inst_(~Inst@120.244.192.250)
2023-10-26 22:21:54 +0000o-90(~o-90@gateway/tor-sasl/o-90) (Ping timeout: 256 seconds)
2023-10-26 22:23:20 +0000liamzy__(~Inst@120.244.192.250) (Ping timeout: 255 seconds)
2023-10-26 22:27:45 +0000ania123(~ania123@wl-pool2-ont-004.uni-muenster.de)
2023-10-26 22:29:39 +0000 <Inst_> playing around with DLists
2023-10-26 22:29:42 +0000 <Inst_> they're not functors, are they?
2023-10-26 22:29:46 +0000 <Inst_> they seem to be invariant functors?
2023-10-26 22:30:08 +0000 <EvanR> not functors?
2023-10-26 22:30:23 +0000 <EvanR> they're isomorphic to list
2023-10-26 22:30:54 +0000 <Inst_> a fmap on a dlist would be
2023-10-26 22:31:14 +0000 <Inst_> define a fmap on a dlist, then?
2023-10-26 22:31:56 +0000johnw(~johnw@69.62.242.138) (Quit: ZNC - http://znc.in)
2023-10-26 22:32:45 +0000 <int-e> :t \f xs -> (++) (f <$> xs [])
2023-10-26 22:32:46 +0000 <lambdabot> (a1 -> a2) -> ([a3] -> [a1]) -> [a2] -> [a2]
2023-10-26 22:33:01 +0000 <exarkun> which DList do you mean?
2023-10-26 22:35:38 +0000 <int-e> Inst_: note that DList isn't simply any function d :: [a] -> [a]; it also maintains the invariant that d xs = d [] ++ xs.
2023-10-26 22:36:07 +0000 <Inst_> fine, i saw the RWH implementation
2023-10-26 22:36:10 +0000 <Inst_> but that's O(n)
2023-10-26 22:36:10 +0000 <int-e> And that in turn allows you to define a functor instance by going via lists.
2023-10-26 22:36:11 +0000 <Inst_> yuck
2023-10-26 22:36:58 +0000 <int-e> you're going to apply the function for each list element anyway... and it is lazy
2023-10-26 22:36:59 +0000ski(~ski@c188-148-130-34.bredband.tele2.se)
2023-10-26 22:37:08 +0000 <Inst_> yeah, thinking it through
2023-10-26 22:38:02 +0000swamp_(~zmt00@user/zmt00)
2023-10-26 22:38:25 +0000 <Inst_> also, how do I get an analogue to replicate for DLists?
2023-10-26 22:38:42 +0000 <EvanR> @src replicate
2023-10-26 22:38:42 +0000 <lambdabot> replicate n x = take n (repeat x)
2023-10-26 22:38:52 +0000falafel_(~falafel@62.175.113.194.dyn.user.ono.com)
2023-10-26 22:39:00 +0000 <Inst_> i defined my own replicate, I thought replicateM would solve my problem, but nooope
2023-10-26 22:39:31 +0000 <Inst_> my hanoi program is too unperformant, partially because i'm defining the screens via lists
2023-10-26 22:39:32 +0000 <int-e> fromList (replicate n x) is just fine?
2023-10-26 22:39:36 +0000 <EvanR> well, just use replicate directly and ++ on DList should work
2023-10-26 22:40:05 +0000 <Inst_> well, it's probably because i'm calling SGR functions from Console.Terminal.ANSI on every print char
2023-10-26 22:40:15 +0000 <Inst_> ColoredChar = MkCC [SGR] Char
2023-10-26 22:41:05 +0000 <Inst_> putColoredChar (MkCC sgr char) = setSGR sgr >> putChar char >> setSGR defaults
2023-10-26 22:41:06 +0000 <EvanR> towers of hanoi uses stacks right, so normal lists are the best choice
2023-10-26 22:41:16 +0000 <int-e> In many cases, DList isn't really faster than plain lists... its main benefit is that it cures the quadratic blowup from left-associative list concatenation.
2023-10-26 22:41:33 +0000 <Inst_> yeah and I'm using that to define my lists trivially :(
2023-10-26 22:41:35 +0000 <int-e> So if your code doesn't suffer from that, DList won't help you much.
2023-10-26 22:42:04 +0000 <int-e> (And possibly even hurt? I don't really know.)
2023-10-26 22:42:04 +0000zmt01(~zmt00@user/zmt00) (Ping timeout: 272 seconds)
2023-10-26 22:42:46 +0000 <Inst_> three times I saw DLists, one, ben gamari dumped a dlist implementation for some lexer he was writing
2023-10-26 22:42:50 +0000 <Inst_> well, two times
2023-10-26 22:42:51 +0000 <int-e> Somehow my main use of DList (well, Endo [a]) is for the writer monad.
2023-10-26 22:42:52 +0000 <Inst_> second time, sort
2023-10-26 22:43:27 +0000 <int-e> (Which does suffer from left-biased nested concatenation.)
2023-10-26 22:44:23 +0000 <EvanR> if you only append 1 item at a time then finally start consuming from the beginning, you can use a prepend-then-reverse normal list
2023-10-26 22:44:39 +0000Friendship(~Friendshi@user/Friendship) (Ping timeout: 240 seconds)
2023-10-26 22:44:49 +0000 <EvanR> Endo [a] lets you append multiple items without having to pre-reverse them
2023-10-26 22:45:04 +0000 <EvanR> but in the end you still have to do something like a reverse on the thunks
2023-10-26 22:51:03 +0000falafel_(~falafel@62.175.113.194.dyn.user.ono.com) (Ping timeout: 240 seconds)
2023-10-26 22:52:33 +0000Square3(~Square4@user/square) (Remote host closed the connection)
2023-10-26 22:53:58 +0000 <Inst_> i'm annoyed, i have a much nicer tower of hanoi app than the py original, but i can't get it to be performant :(
2023-10-26 22:54:17 +0000gmg(~user@user/gehmehgeh) (Quit: Leaving)
2023-10-26 22:54:54 +0000 <Inst_> https://media.discordapp.net/attachments/968989726633779215/1167234894691307550/image.png?ex=654d6…
2023-10-26 22:55:51 +0000 <Inst_> https://media.discordapp.net/attachments/968989726633779215/1167235136258064434/image.png?ex=654d6…
2023-10-26 22:55:54 +0000 <EvanR> what does "performant" mean here
2023-10-26 22:56:18 +0000 <EvanR> and did you compare it with the python version
2023-10-26 22:57:23 +0000 <Inst_> i mean that every time the screen updates, i get some kind of flicker because it's not printing the output image fast enough :(
2023-10-26 23:02:00 +0000 <Inst_> https://media.discordapp.net/attachments/968989726633779215/1167236641723793418/image.png?ex=654d6…
2023-10-26 23:02:03 +0000 <Inst_> py original
2023-10-26 23:03:00 +0000 <EvanR> the performance implied by these screenshots is not apparent to me
2023-10-26 23:03:14 +0000 <Inst_> you can't see the performance issue with the haskell version, tbh
2023-10-26 23:03:29 +0000acidjnk(~acidjnk@p200300d6e72b93039c291881441b2222.dip0.t-ipconnect.de) (Ping timeout: 258 seconds)
2023-10-26 23:03:33 +0000 <Inst_> would need a screenshot, the problem is that it's updating the screen via clearScreen from Console.Terminal.ANSI, then prenting out new text
2023-10-26 23:03:41 +0000 <EvanR> can you like, quantify and measure the performance as you know a number or something
2023-10-26 23:05:48 +0000 <Inst_> do you know where cabal run dumps its profiler? ugh, this is going to suck
2023-10-26 23:06:38 +0000 <EvanR> even just timing how long it takes to run the program with the time command is better than what you've been presenting
2023-10-26 23:07:38 +0000 <geekosaur> is the python program clearing the screen between frames also?
2023-10-26 23:08:07 +0000 <geekosaur> or is it using something like ncurses?
2023-10-26 23:08:36 +0000ddellacosta(~ddellacos@ool-44c738de.dyn.optonline.net) (Ping timeout: 260 seconds)
2023-10-26 23:09:15 +0000ddellacosta(~ddellacos@ool-44c738de.dyn.optonline.net)
2023-10-26 23:10:23 +0000sansk(~sansk@user/sansk)
2023-10-26 23:10:35 +0000 <Inst_> it's not clearing the screen
2023-10-26 23:10:55 +0000 <geekosaur> I suspected not, because that *will* introduce flicker
2023-10-26 23:11:50 +0000 <Inst_> btw, just curious
2023-10-26 23:12:03 +0000 <geekosaur> I'm wondering if you would be better off using vty instead of raw ANSI
2023-10-26 23:12:06 +0000 <Inst_> with cabal, you can force the build-depends to follow -prof, right?
2023-10-26 23:12:17 +0000 <Inst_> well, at least the flicker version SHOULD work on windows
2023-10-26 23:12:26 +0000 <geekosaur> oh right, windows
2023-10-26 23:12:33 +0000 <Inst_> only thing, if you're somehow still on Billy Gates' antiquated moneymaker
2023-10-26 23:12:35 +0000Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Ping timeout: 240 seconds)
2023-10-26 23:12:40 +0000 <Inst_> what's the keypress result of up arrow?
2023-10-26 23:12:43 +0000 <geekosaur> I don't think the Windows compatible release has come out yet
2023-10-26 23:12:48 +0000 <Inst_> I think I need to code it to support windows up arrow presses
2023-10-26 23:12:53 +0000Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-10-26 23:13:19 +0000 <geekosaur> raw? "\27[A" as a Haskell string
2023-10-26 23:14:47 +0000 <geekosaur> (that is, ASCII ESC, left square bracket, capital A. three characters)
2023-10-26 23:15:31 +0000 <geekosaur> I don't know if this differs on Windows
2023-10-26 23:17:06 +0000 <EvanR> oh windows has this too https://learn.microsoft.com/en-us/windows/console/console-virtual-terminal-sequences
2023-10-26 23:17:16 +0000 <EvanR> ESC [ A, unless you reconfigured it
2023-10-26 23:18:19 +0000 <Inst_> ehhh, i guess i might as well reboot and see what windows returns on getChar
2023-10-26 23:18:40 +0000 <EvanR> it's documented right there
2023-10-26 23:19:03 +0000 <EvanR> but verifying IRL is good
2023-10-26 23:19:20 +0000 <EvanR> it would be 3 chars though not 1
2023-10-26 23:19:55 +0000 <Inst_> nah, my posix version is 3 chars
2023-10-26 23:21:01 +0000 <EvanR> no, it would be 3 actually
2023-10-26 23:21:10 +0000 <EvanR> there are 3 lights
2023-10-26 23:22:25 +0000 <Inst_> when did you jump off the Enterprise anyways?
2023-10-26 23:22:53 +0000 <Inst_> me? Picard, way too disappointing
2023-10-26 23:23:38 +0000bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-10-26 23:23:57 +0000ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2023-10-26 23:24:19 +0000ChaiTRex(~ChaiTRex@user/chaitrex)
2023-10-26 23:25:10 +0000ft(~ft@p4fc2a529.dip0.t-ipconnect.de)
2023-10-26 23:32:04 +0000mekeor(~user@2001:a61:10c6:e601:550e:a048:6ed7:5ec4) (Quit: i destroyed my erc. sorry, neverwas. gotta go to bed. ciao)
2023-10-26 23:32:32 +0000 <Inst_> yeah, i'm 100% sure it's an issue with how I'm constructing the display, maybe I've screwed up somewhere
2023-10-26 23:33:04 +0000 <Inst_> using the same clearScreen command in a different program, I don't see flicker
2023-10-26 23:34:17 +0000 <geekosaur> did you change output buffering in any way?
2023-10-26 23:34:44 +0000 <geekosaur> I would probably use BlockBuffering and hFlush after outputting a frame
2023-10-26 23:35:21 +0000 <Inst_> hmmm, this one is missing line buffering
2023-10-26 23:35:33 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-10-26 23:36:01 +0000arkeet(~arkeet@moriya.ca) (Quit: ZNC 1.8.2 - https://znc.in)
2023-10-26 23:36:05 +0000 <Inst_> okay, weirdness goes away with line buffering
2023-10-26 23:36:06 +0000 <Inst_> awesome
2023-10-26 23:36:43 +0000 <Inst_> thanks @geekosaur, for helping me to fix this weird flicker issue <3
2023-10-26 23:37:16 +0000 <EvanR> I presume there's no performance problem after all
2023-10-26 23:37:34 +0000 <Inst_> just bad config on output :(
2023-10-26 23:37:54 +0000 <geekosaur> well, there was, but not the usual one. character at a time terminal I/O is painfully slow even on modern machines
2023-10-26 23:38:08 +0000 <EvanR> if haskell can't beat python at towers of hanoi that's bad
2023-10-26 23:38:18 +0000waleee(~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
2023-10-26 23:38:26 +0000 <EvanR> seemed unlikely
2023-10-26 23:38:40 +0000 <EvanR> but printing things out can be tricky
2023-10-26 23:40:50 +0000nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 255 seconds)
2023-10-26 23:45:13 +0000 <Inst_> i mean the defaults seem questionable
2023-10-26 23:45:29 +0000 <Inst_> but w/e, being ultra-concise isn't a Haskell language goal, it's just a side effect of functional programming
2023-10-26 23:47:01 +0000 <geekosaur> LineBuffering is normally the default on POSIX, is something (maybe ansi-terminal) overriding it?
2023-10-26 23:50:03 +0000 <Inst_> weird
2023-10-26 23:50:39 +0000 <Inst_> probably ansi-terminal
2023-10-26 23:54:32 +0000 <Inst_> oh, it was a cockup on my part
2023-10-26 23:55:11 +0000 <Inst_> i turned it off for some reason
2023-10-26 23:59:03 +0000arkeet(~arkeet@moriya.ca)
2023-10-26 23:59:18 +0000 <geekosaur> make sure that's stdin instead of stdout
2023-10-26 23:59:42 +0000 <geekosaur> for key reads you want to disable buffering on stdin, but you want to leave it on stdout for output performance