2021/06/10

2021-06-10 00:01:18 +0200oxide_(~lambda@user/oxide)
2021-06-10 00:04:07 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-10 00:04:14 +0200P1RATEZ(piratez@cpe98524ab27125-cm98524ab27123.cpe.net.cable.rogers.com)
2021-06-10 00:04:30 +0200abraham(~abraham@173.239.198.148)
2021-06-10 00:04:34 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com)
2021-06-10 00:04:38 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 00:06:20 +0200dhil(~dhil@80.208.56.181) (Ping timeout: 264 seconds)
2021-06-10 00:06:49 +0200adinfinitum(~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f)
2021-06-10 00:07:14 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 00:07:24 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com) (Client Quit)
2021-06-10 00:09:14 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Ping timeout: 245 seconds)
2021-06-10 00:09:18 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net) (Ping timeout: 264 seconds)
2021-06-10 00:09:34 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-10 00:12:11 +0200hexfive(~eric@50.35.83.177)
2021-06-10 00:12:31 +0200hexfive(~eric@50.35.83.177) (Client Quit)
2021-06-10 00:15:17 +0200jakalx(~jakalx@base.jakalx.net)
2021-06-10 00:16:12 +0200Baloo_(~Baloo_@45.83.220.183) (Quit: Leaving)
2021-06-10 00:17:03 +0200gehmehgeh_(~user@user/gehmehgeh) (Quit: Leaving)
2021-06-10 00:17:08 +0200pierrot(~pi@user/pierrot) (Quit: ZNC 1.6.4 - http://znc.in)
2021-06-10 00:17:45 +0200pierrot(~pi@user/pierrot)
2021-06-10 00:18:20 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 00:18:30 +0200adinfinitum(~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) (Ping timeout: 244 seconds)
2021-06-10 00:19:51 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 00:21:39 +0200shapr(~user@pool-108-28-144-11.washdc.fios.verizon.net) (Ping timeout: 272 seconds)
2021-06-10 00:22:20 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se) (Quit: C-x C-c, Shutting down OS...)
2021-06-10 00:24:44 +0200pierrot(~pi@user/pierrot) (Quit: ZNC 1.6.4 - http://znc.in)
2021-06-10 00:25:19 +0200pierrot(~pi@user/pierrot)
2021-06-10 00:28:47 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2021-06-10 00:33:16 +0200 <xerox> anybody tried using ghcid on mac aarch64? something is broken and I can't figure out what
2021-06-10 00:33:35 +0200 <maerwald> you might be the first person
2021-06-10 00:35:05 +0200 <xerox> if I use ghcup to give me ghc and cabal for x64, install ghcid, and then switch to ghc and cabal for arm64, then if I have alias cabal="arch -arm64 cabal" it works, if I go ahead and cabal install ghcid from there, it always gets stuck when using it, in a couple different curious ways
2021-06-10 00:36:03 +0200 <xerox> --poll works but fsnotify, the default, doens't seem to... except if you run it with --verbose, then it does work with notifications! (except now it's unreadable because the output is very dense and meant for debugging) I'm stumped
2021-06-10 00:36:04 +0200 <maerwald> yeah, I'm working on native mac aarch64 support, but we don't even have enough CI runners
2021-06-10 00:37:41 +0200bmsk(~user@2001:19f0:5001:2f3b:5400:3ff:fe53:2d96) ()
2021-06-10 00:37:48 +0200 <xerox> I wish I was able to debug this more but I'm out of ideas
2021-06-10 00:42:07 +0200cactinoob(~cactinoob@adsl-64-237-237-9.prtc.net) (Quit: Client closed)
2021-06-10 00:45:41 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi) (Quit: Leaving.)
2021-06-10 00:46:19 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2021-06-10 00:49:04 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1)
2021-06-10 00:51:20 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-06-10 00:56:26 +0200mnrmnaugh(~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net) (Ping timeout: 272 seconds)
2021-06-10 00:59:14 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 01:00:57 +0200Deide(~Deide@user/deide) (Quit: Seeee yaaaa)
2021-06-10 01:01:32 +0200pierrot(~pi@user/pierrot) (Quit: ZNC 1.6.4 - http://znc.in)
2021-06-10 01:02:07 +0200pierrot(~pi@user/pierrot)
2021-06-10 01:03:05 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 01:05:00 +0200jespada(~jespada@90.254.242.55) (Ping timeout: 244 seconds)
2021-06-10 01:06:39 +0200delYsid(~user@84-115-55-45.cable.dynamic.surfer.at) (ERC (IRC client for Emacs 27.1.50))
2021-06-10 01:08:01 +0200jespada(~jespada@90.254.242.55)
2021-06-10 01:09:19 +0200fluffyballoon(~fluffybal@2620:72:0:6480::10f7) (Quit: Client closed)
2021-06-10 01:09:28 +0200xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf)
2021-06-10 01:09:54 +0200mnrmnaugh(~mnrmnaugh@pool-96-252-87-182.bstnma.fios.verizon.net)
2021-06-10 01:11:46 +0200orion(~orion@user/orion) (Remote host closed the connection)
2021-06-10 01:12:00 +0200orion(~orion@user/orion)
2021-06-10 01:17:28 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-10 01:19:38 +0200jakalx(~jakalx@base.jakalx.net)
2021-06-10 01:24:27 +0200infandum(~user@207.44.105.67.res-cmts.all2.ptd.net) (Remote host closed the connection)
2021-06-10 01:28:49 +0200xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf) (Ping timeout: 245 seconds)
2021-06-10 01:29:44 +0200MQ-17J(~MQ-17J@8.21.10.116) (Ping timeout: 252 seconds)
2021-06-10 01:34:27 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds)
2021-06-10 01:34:54 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-10 01:34:55 +0200 <juri_> anyone want to tell me i'm wrong? https://github.com/Haskell-Things/HSlice/pull/35#issuecomment-858158929
2021-06-10 01:36:02 +0200 <juri_> tl;dr: there's a class of warning that, when it covers code you maintain, you can do something about, and can make your code faster. when it's not your code it's warning about, there's nothing you can do about it.
2021-06-10 01:36:13 +0200 <juri_> the UX on this sucks.
2021-06-10 01:37:56 +0200xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf)
2021-06-10 01:39:02 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-10 01:46:26 +0200aerona(~aerona@2600:6c54:4600:f300:d2da:d7c1:1e2d:1a51)
2021-06-10 01:47:50 +0200 <glguy> juri_: isn't that just a case of "don't compile your dependencies with a bunch of warnings turned on"?
2021-06-10 01:48:15 +0200 <glguy> Oh, I guess it's your code, but referring to something outside your package?
2021-06-10 01:50:28 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 244 seconds)
2021-06-10 01:56:40 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 01:56:53 +0200blankhart(~blankhart@pool-72-88-174-206.nwrknj.fios.verizon.net)
2021-06-10 02:01:21 +0200yd502(~yd502@223.104.210.183)
2021-06-10 02:01:26 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 02:01:42 +0200xal(~xal@2604:3d08:9a80:4c18:2584:dda0:e5c4:dbaf) (Quit: Leaving)
2021-06-10 02:03:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 02:04:36 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
2021-06-10 02:04:56 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
2021-06-10 02:05:57 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-06-10 02:06:43 +0200dcoutts_(~duncan@94.186.125.91.dyn.plus.net)
2021-06-10 02:09:18 +0200dcoutts(~duncan@94.186.125.91.dyn.plus.net) (Ping timeout: 265 seconds)
2021-06-10 02:09:41 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-10 02:11:21 +0200nkatte_(~nkatte@2804:14c:7980:8c9a::3c66)
2021-06-10 02:14:07 +0200slashzero(~slashzero@pool-71-114-107-11.washdc.fios.verizon.net)
2021-06-10 02:16:24 +0200yd502(~yd502@223.104.210.183) (Ping timeout: 252 seconds)
2021-06-10 02:18:05 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2021-06-10 02:21:16 +0200renzhi(~xp@2607:fa49:6500:bc00::e7b)
2021-06-10 02:22:09 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 02:22:27 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 252 seconds)
2021-06-10 02:24:04 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 02:24:08 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-06-10 02:24:45 +0200 <slashzero> Hi, I'm working through the Simple Haskell Handbook and I'm trying to run `stack test` but for some reason ghc can't find `record-dot-preprocessor` even though it is in my PATH.
2021-06-10 02:25:16 +0200nkatte_(~nkatte@2804:14c:7980:8c9a::3c66) (Quit: nkatte_)
2021-06-10 02:26:45 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 02:28:51 +0200 <Axman6> what does that do? it may not be necessary
2021-06-10 02:32:10 +0200 <Axman6> slashzero: and what does `stack exec -- which record-dot-preprocessor` tell you?
2021-06-10 02:34:20 +0200asthasr(~asthasr@162.210.29.120)
2021-06-10 02:36:12 +0200 <slashzero> https://paste.tomsmeding.com/9mXEdawi
2021-06-10 02:36:50 +0200 <Axman6> ah. nix, yeah I don't know how to help you there, I';ve never used a unix system which doesn't have which...
2021-06-10 02:37:40 +0200P1RATEZ(piratez@cpe98524ab27125-cm98524ab27123.cpe.net.cable.rogers.com) ()
2021-06-10 02:37:57 +0200 <geekosaur> try using: stack exec -- sh -c 'type record-dot-preprocessor'
2021-06-10 02:38:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-10 02:39:02 +0200 <geekosaur> however it looks like it's haskell and its package (same name) should be a setup-depends entry
2021-06-10 02:39:22 +0200 <geekosaur> or whatever stack calls its setup-depends
2021-06-10 02:40:59 +0200 <Axman6> can you not just use the RecordDotSyntax language extension? (We use it all the time in DAML and it's great)
2021-06-10 02:43:20 +0200 <slashzero> I think this is the cause. That `stack exec -- whiich record-dot-preprocessor`command clued me into the fact that stack is building things in an pure environment https://docs.haskellstack.org/en/stable/nix_integration/#the-nix-shell
2021-06-10 02:43:34 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net)
2021-06-10 02:43:47 +0200 <slashzero> thanks Axman6
2021-06-10 02:44:41 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-10 02:45:25 +0200 <slashzero> that was definitely it. I ran `stack test --no-nix-pure` and it worked. Thanks for helping Axman6 and geekosaur
2021-06-10 02:45:44 +0200 <Axman6> Great
2021-06-10 02:52:25 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
2021-06-10 02:53:03 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-10 02:53:58 +0200tabemann_(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (Remote host closed the connection)
2021-06-10 02:55:15 +0200tabemann_(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net)
2021-06-10 02:55:44 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds)
2021-06-10 02:56:00 +0200tabemann_tabemann
2021-06-10 02:58:17 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 272 seconds)
2021-06-10 03:01:15 +0200Iryon(~Iryon@2a02:a31a:a045:3500:5c9:2f58:8faf:5e52) (Remote host closed the connection)
2021-06-10 03:02:45 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 03:06:59 +0200yd502(~yd502@180.168.212.6)
2021-06-10 03:07:00 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Ping timeout: 252 seconds)
2021-06-10 03:13:04 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-10 03:14:08 +0200sekun(~sekun@180.190.152.149)
2021-06-10 03:15:02 +0200xff0x_(~xff0x@2001:1a81:52c9:6b00:c9ec:1ec0:3ea4:2bb4) (Ping timeout: 266 seconds)
2021-06-10 03:16:15 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 03:16:32 +0200xff0x_(~xff0x@2001:1a81:5309:4200:6690:d1a3:e3e9:8847)
2021-06-10 03:21:38 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com)
2021-06-10 03:22:32 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 264 seconds)
2021-06-10 03:23:17 +0200slashzero(~slashzero@pool-71-114-107-11.washdc.fios.verizon.net) (Quit: Client closed)
2021-06-10 03:24:20 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 264 seconds)
2021-06-10 03:25:47 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2021-06-10 03:29:35 +0200bontaq(~user@ool-18e47f8d.dyn.optonline.net) (Read error: Connection reset by peer)
2021-06-10 03:29:38 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) (Ping timeout: 252 seconds)
2021-06-10 03:29:40 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 03:32:53 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-10 03:33:18 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 03:34:25 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 03:41:13 +0200yd502_(~yd502@180.168.212.6)
2021-06-10 03:41:15 +0200mpt(~tom@2a02:908:1862:49e0::5)
2021-06-10 03:41:28 +0200Lycurgus(~juan@cpe-45-46-140-49.buffalo.res.rr.com) (Quit: Exeunt)
2021-06-10 03:44:14 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 245 seconds)
2021-06-10 03:45:37 +0200 <Axman6> @where cph
2021-06-10 03:45:37 +0200 <lambdabot> I know nothing about cph.
2021-06-10 03:45:40 +0200 <Axman6> @where cphih
2021-06-10 03:45:40 +0200 <lambdabot> I know nothing about cphih.
2021-06-10 03:46:00 +0200 <Axman6> @where pacp
2021-06-10 03:46:00 +0200 <lambdabot> I know nothing about pacp.
2021-06-10 03:46:04 +0200 <Axman6> -_-
2021-06-10 03:46:48 +0200awth13(~user@user/awth13) (Remote host closed the connection)
2021-06-10 03:46:50 +0200 <Axman6> parallel and concurrent programming in Haskell, where art thou
2021-06-10 03:47:21 +0200 <Axman6> (https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/cover.html apparently)
2021-06-10 03:48:38 +0200 <Clint> so many fish
2021-06-10 03:51:02 +0200awth13(~user@185.209.196.143)
2021-06-10 03:52:57 +0200awth13(~user@185.209.196.143) (Changing host)
2021-06-10 03:52:57 +0200awth13(~user@user/awth13)
2021-06-10 03:53:10 +0200 <Axman6> There aren't enough fish in the C, so we use Haskell >=>
2021-06-10 03:54:06 +0200 <Clint> lambdabot: you should remember that
2021-06-10 03:54:13 +0200awth13(~user@user/awth13) (Client Quit)
2021-06-10 03:54:31 +0200 <Axman6> lambdabot can @remember whatever you want
2021-06-10 03:54:42 +0200awth13(~user@185.209.196.143)
2021-06-10 03:54:59 +0200 <Axman6> you might be the first person to use on the new network :o
2021-06-10 03:55:27 +0200awth13(~user@185.209.196.143) (Changing host)
2021-06-10 03:55:27 +0200awth13(~user@user/awth13)
2021-06-10 03:55:48 +0200 <ski> @where PCPH
2021-06-10 03:55:48 +0200 <lambdabot> "Parallel and Concurrent Programming in Haskell" by Simon Marlow in 2013 at <http://community.haskell.org/~simonmar/pcph/>,<http://chimera.labs.oreilly.com/books/1230000000929/>,<https://web.archive.
2021-06-10 03:55:48 +0200 <lambdabot> org/web/20180117194842/http://chimera.labs.oreilly.com/books/1230000000929>,<https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/>
2021-06-10 03:56:13 +0200 <Axman6> <3 ski
2021-06-10 03:58:46 +0200awth13(~user@user/awth13) (Client Quit)
2021-06-10 03:59:58 +0200awth13(~user@user/awth13)
2021-06-10 04:06:56 +0200hammock(~Hammock@2600:1700:19a1:3330::625)
2021-06-10 04:07:21 +0200adinfinitum(~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f)
2021-06-10 04:09:54 +0200derelict(~winter@2603-6011-f901-9e5b-78b5-8b2f-cdb2-4171.res6.spectrum.com) (Ping timeout: 264 seconds)
2021-06-10 04:10:25 +0200thyriaen(~thyriaen@45.178.73.238)
2021-06-10 04:10:42 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 04:12:06 +0200thyriaen(~thyriaen@45.178.73.238) (Client Quit)
2021-06-10 04:12:31 +0200thyriaen(~thyriaen@45.178.73.238)
2021-06-10 04:13:24 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2021-06-10 04:23:51 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2021-06-10 04:24:56 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 264 seconds)
2021-06-10 04:26:29 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 04:26:46 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 04:28:26 +0200derelict(~winter@2603-6011-f901-9e5b-78b5-8b2f-cdb2-4171.res6.spectrum.com)
2021-06-10 04:34:12 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 04:35:02 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2021-06-10 04:35:02 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (mercury.libera.chat (Nickname regained by services)))
2021-06-10 04:35:02 +0200finn_elijaFinnElija
2021-06-10 04:35:27 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-10 04:37:35 +0200ec(~ec@gateway/tor-sasl/ec)
2021-06-10 04:38:18 +0200haltux(~haltux@a89-154-181-47.cpe.netcabo.pt)
2021-06-10 04:41:22 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 04:44:53 +0200trent(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 268 seconds)
2021-06-10 04:45:49 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 252 seconds)
2021-06-10 04:49:26 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 04:49:52 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 04:53:13 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 04:53:22 +0200mpt(~tom@2a02:908:1862:49e0::5) (Ping timeout: 244 seconds)
2021-06-10 04:53:53 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Ping timeout: 244 seconds)
2021-06-10 04:57:05 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 04:57:45 +0200notzmv(~zmv@user/notzmv)
2021-06-10 04:59:31 +0200Toast52(~Toast52@151.192.167.120)
2021-06-10 05:05:35 +0200derelict(~winter@2603-6011-f901-9e5b-78b5-8b2f-cdb2-4171.res6.spectrum.com) (Quit: WeeChat 3.1)
2021-06-10 05:06:50 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-10 05:08:33 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 05:08:55 +0200Erutuon(~Erutuon@user/erutuon)
2021-06-10 05:19:31 +0200jackhill_jackhill
2021-06-10 05:19:55 +0200mra(~morgan@S0106383fb3f42be5.gv.shawcable.net)
2021-06-10 05:20:28 +0200adinfinitum(~user@2600:6c40:653f:5f00:a650:d8d7:fe0b:8c1f) (WeeChat 3.0.1)
2021-06-10 05:22:40 +0200thiross(~user@173.242.113.143.16clouds.com)
2021-06-10 05:22:42 +0200mra(~morgan@S0106383fb3f42be5.gv.shawcable.net) (Quit: WeeChat 3.1)
2021-06-10 05:26:42 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 252 seconds)
2021-06-10 05:27:15 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca) (Ping timeout: 252 seconds)
2021-06-10 05:27:25 +0200wei2912(~wei2912@112.199.250.21)
2021-06-10 05:28:00 +0200ozone(ozone@libera/bot/ozone) (Leaving the channel. /invite ozone again if needed)
2021-06-10 05:29:01 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-10 05:29:35 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-06-10 05:29:39 +0200P1RATEZ(piratez@cpe98524ab27125-cm98524ab27123.cpe.net.cable.rogers.com)
2021-06-10 05:30:22 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 265 seconds)
2021-06-10 05:30:49 +0200Lord_of_Life_Lord_of_Life
2021-06-10 05:31:06 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2021-06-10 05:31:16 +0200yd502(~yd502@180.168.212.6)
2021-06-10 05:33:51 +0200yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-10 05:35:44 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-10 05:42:47 +0200yd502__(~yd502@180.168.212.6)
2021-06-10 05:43:28 +0200beka(~beka@104.193.170-254.PUBLIC.monkeybrains.net) (Ping timeout: 268 seconds)
2021-06-10 05:43:38 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net)
2021-06-10 05:44:16 +0200lbseale(~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
2021-06-10 05:47:54 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 05:48:20 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 05:48:43 +0200siraben(~siraben@user/siraben) (Quit: Reconnecting)
2021-06-10 05:49:03 +0200siraben(~siraben@user/siraben)
2021-06-10 05:49:28 +0200lbseale(~lbseale@user/ep1ctetus)
2021-06-10 05:51:16 +0200nilof(~olofs@90-227-86-119-no542.tbcn.telia.com) (Read error: Connection reset by peer)
2021-06-10 05:51:25 +0200Toast52_(~Toast52@151.192.167.120)
2021-06-10 05:52:46 +0200slack1256(~slack1256@191.125.180.163)
2021-06-10 05:53:06 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Ping timeout: 264 seconds)
2021-06-10 05:54:20 +0200Toast52(~Toast52@151.192.167.120) (Ping timeout: 264 seconds)
2021-06-10 05:55:37 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 05:59:33 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 06:00:20 +0200yd502__(~yd502@180.168.212.6) (Ping timeout: 264 seconds)
2021-06-10 06:00:32 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
2021-06-10 06:00:36 +0200yd502__(~yd502@180.168.212.6)
2021-06-10 06:02:41 +0200sekun(~sekun@180.190.152.149) (Remote host closed the connection)
2021-06-10 06:03:03 +0200sekun(~sekun@180.190.152.149)
2021-06-10 06:03:31 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-10 06:03:44 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 06:12:18 +0200thiross(~user@173.242.113.143.16clouds.com) (Ping timeout: 264 seconds)
2021-06-10 06:16:11 +0200slack1256(~slack1256@191.125.180.163) (Remote host closed the connection)
2021-06-10 06:16:26 +0200slack1256(~slack1256@191.125.180.163)
2021-06-10 06:17:18 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 252 seconds)
2021-06-10 06:19:46 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 06:24:18 +0200renzhi(~xp@2607:fa49:6500:bc00::e7b) (Ping timeout: 244 seconds)
2021-06-10 06:24:45 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 06:24:56 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 264 seconds)
2021-06-10 06:24:56 +0200fresheyeball(~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net)
2021-06-10 06:29:24 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-10 06:31:01 +0200alarix(~alarix@59.88.30.217)
2021-06-10 06:32:03 +0200yd502__(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-10 06:34:57 +0200winircuser-254(~winircuse@170.250.221.149)
2021-06-10 06:35:57 +0200AgentM(~agentm@pool-162-83-130-212.nycmny.fios.verizon.net) (Read error: Connection reset by peer)
2021-06-10 06:37:00 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-10 06:41:37 +0200thyriaen(~thyriaen@45.178.73.238) (Quit: Leaving)
2021-06-10 06:42:13 +0200winircuser-254(~winircuse@170.250.221.149) (Read error: Connection reset by peer)
2021-06-10 06:44:27 +0200oxide_(~lambda@user/oxide) (Ping timeout: 244 seconds)
2021-06-10 06:47:11 +0200RohitGoswami[m](~rgoswamim@2001:470:69fc:105::16cc) (Remote host closed the connection)
2021-06-10 06:47:11 +0200siraben(~siraben@user/siraben) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200cdepillabout[m](~cdepillab@2001:470:69fc:105::3d3) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200Drezil(~drezilkif@2001:470:69fc:105::7f8) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200Soft(~soft-matr@2001:470:69fc:105::c75) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200marinelli[m](~marinelli@2001:470:69fc:105::2d8) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200tomferon[m](~tomferon@2001:470:69fc:105::268) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200eddiemundo(~eddiemund@2001:470:69fc:105::a9c) (Remote host closed the connection)
2021-06-10 06:47:11 +0200dualinverter[m](~dualinver@2001:470:69fc:105::16a7) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200bb010g(~bb010gmat@2001:470:69fc:105::9a5) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200hjulle[m](~hjullemat@2001:470:69fc:105::1dd) (Remote host closed the connection)
2021-06-10 06:47:11 +0200oak-(~oakuniver@2001:470:69fc:105::fcd) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200autrim64[m](~autrim64m@2001:470:69fc:105::16a1) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200cdsmith(~cdsmithma@2001:470:69fc:105::284) (Remote host closed the connection)
2021-06-10 06:47:11 +0200vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe) (Remote host closed the connection)
2021-06-10 06:47:11 +0200Las[m](~lasmatrix@2001:470:69fc:105::74e) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200Artem[m](~artemtype@2001:470:69fc:105::75b) (Remote host closed the connection)
2021-06-10 06:47:11 +0200psydroid(~psydroidm@2001:470:69fc:105::165) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200fabfianda[m](~fabfianda@2001:470:69fc:105::6db) (Remote host closed the connection)
2021-06-10 06:47:11 +0200maralorn(~maralorn@2001:470:69fc:105::251) (Remote host closed the connection)
2021-06-10 06:47:11 +0200fgaz(~fgaz@2001:470:69fc:105::842) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200thedward[m](~thedwardm@2001:470:69fc:105::f79) (Remote host closed the connection)
2021-06-10 06:47:11 +0200MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200kadoban(~kadoban@user/kadoban) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200bryan[m](~bchreekat@2001:470:69fc:105::16b5) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200sm[m](~sm@plaintextaccounting/sm) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200ac(~aloiscoch@2001:470:69fc:105::65) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200amesgen[m](~amesgenam@2001:470:69fc:105::82b) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200adziahel[m](~adziahelm@2001:470:69fc:105::b4d) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200kosmikus[m](~andresloe@2001:470:69fc:105::95d) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200Morrow[m](~morrowmma@2001:470:69fc:105::1d0) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200ServerStatsDisco(~serversta@2001:470:69fc:105::1a) (Write error: Connection reset by peer)
2021-06-10 06:47:11 +0200maerwald[m](~maerwaldm@2001:470:69fc:105::1ee) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200wallymathieu[m](~wallymath@2001:470:69fc:105::16ae) (Remote host closed the connection)
2021-06-10 06:47:11 +0200srid[m](~sridmatri@2001:470:69fc:105::1c2) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200jophish(~jophish@2001:470:69fc:105::670) (Read error: Connection reset by peer)
2021-06-10 06:47:11 +0200the-coot[m](~the-cootm@2001:470:69fc:105::95f) (Remote host closed the connection)
2021-06-10 06:47:11 +0200peddie(~peddie@2001:470:69fc:105::25d) (Remote host closed the connection)
2021-06-10 06:47:12 +0200jaror[m](~jaror@2001:470:69fc:105::265) (Remote host closed the connection)
2021-06-10 06:47:12 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2) (Read error: Connection reset by peer)
2021-06-10 06:47:45 +0200thedward[m](~thedwardm@2001:470:69fc:105::f79)
2021-06-10 06:48:28 +0200ac(~aloiscoch@2001:470:69fc:105::65)
2021-06-10 06:48:28 +0200sm[m](~sm@plaintextaccounting/sm)
2021-06-10 06:48:29 +0200maralorn(~maralorn@2001:470:69fc:105::251)
2021-06-10 06:48:29 +0200fgaz(~fgaz@2001:470:69fc:105::842)
2021-06-10 06:48:29 +0200MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22)
2021-06-10 06:48:29 +0200peddie(~peddie@2001:470:69fc:105::25d)
2021-06-10 06:48:29 +0200fabfianda[m](~fabfianda@2001:470:69fc:105::6db)
2021-06-10 06:48:29 +0200Las[m](~lasmatrix@2001:470:69fc:105::74e)
2021-06-10 06:48:29 +0200ServerStatsDisco(~serversta@2001:470:69fc:105::1a)
2021-06-10 06:48:29 +0200siraben(~siraben@user/siraben)
2021-06-10 06:48:29 +0200the-coot[m](~the-cootm@2001:470:69fc:105::95f)
2021-06-10 06:48:29 +0200psydroid(~psydroidm@2001:470:69fc:105::165)
2021-06-10 06:48:29 +0200vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe)
2021-06-10 06:48:29 +0200kadoban(~kadoban@user/kadoban)
2021-06-10 06:48:29 +0200jophish(~jophish@2001:470:69fc:105::670)
2021-06-10 06:48:40 +0200hjulle[m](~hjullemat@2001:470:69fc:105::1dd)
2021-06-10 06:48:40 +0200maerwald[m](~maerwaldm@2001:470:69fc:105::1ee)
2021-06-10 06:48:41 +0200marinelli[m](~marinelli@2001:470:69fc:105::2d8)
2021-06-10 06:48:41 +0200Drezil(~drezilkif@2001:470:69fc:105::7f8)
2021-06-10 06:48:41 +0200Artem[m](~artemtype@2001:470:69fc:105::75b)
2021-06-10 06:48:41 +0200wallymathieu[m](~wallymath@2001:470:69fc:105::16ae)
2021-06-10 06:48:41 +0200cdepillabout[m](~cdepillab@2001:470:69fc:105::3d3)
2021-06-10 06:48:41 +0200amesgen[m](~amesgenam@2001:470:69fc:105::82b)
2021-06-10 06:48:41 +0200eddiemundo(~eddiemund@2001:470:69fc:105::a9c)
2021-06-10 06:48:41 +0200Soft(~soft-matr@2001:470:69fc:105::c75)
2021-06-10 06:48:41 +0200autrim64[m](~autrim64m@2001:470:69fc:105::16a1)
2021-06-10 06:48:41 +0200RohitGoswami[m](~rgoswamim@2001:470:69fc:105::16cc)
2021-06-10 06:48:41 +0200tomferon[m](~tomferon@2001:470:69fc:105::268)
2021-06-10 06:48:41 +0200bb010g(~bb010gmat@2001:470:69fc:105::9a5)
2021-06-10 06:48:41 +0200srid[m](~sridmatri@2001:470:69fc:105::1c2)
2021-06-10 06:48:41 +0200adziahel[m](~adziahelm@2001:470:69fc:105::b4d)
2021-06-10 06:48:41 +0200dualinverter[m](~dualinver@2001:470:69fc:105::16a7)
2021-06-10 06:48:41 +0200Morrow[m](~morrowmma@2001:470:69fc:105::1d0)
2021-06-10 06:48:41 +0200kosmikus[m](~andresloe@2001:470:69fc:105::95d)
2021-06-10 06:48:41 +0200bryan[m](~bchreekat@2001:470:69fc:105::16b5)
2021-06-10 06:48:42 +0200jaror[m](~jaror@2001:470:69fc:105::265)
2021-06-10 06:48:42 +0200oak-(~oakuniver@2001:470:69fc:105::fcd)
2021-06-10 06:48:43 +0200cdsmith(~cdsmithma@2001:470:69fc:105::284)
2021-06-10 06:48:43 +0200ru0mad[m](~ru0madmat@2001:470:69fc:105::9b2)
2021-06-10 06:54:46 +0200pe200012(~pe200012@120.236.162.10)
2021-06-10 07:02:25 +0200juhp(~juhp@128.106.188.66) (Quit: juhp)
2021-06-10 07:03:19 +0200dan-so(~danso@modemcable156.91-20-96.mc.videotron.ca) (Quit: WeeChat 3.1)
2021-06-10 07:03:42 +0200Taneb(~Taneb@runciman.hacksoc.org) (Quit: I seem to have stopped.)
2021-06-10 07:03:53 +0200alex3(~Chel@BSN-77-82-41.static.siol.net) (Ping timeout: 244 seconds)
2021-06-10 07:04:08 +0200monochrm(trebla@216.138.220.146)
2021-06-10 07:04:26 +0200Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2021-06-10 07:04:51 +0200juhp(~juhp@128.106.188.66)
2021-06-10 07:05:05 +0200monochrom(trebla@216.138.220.146) (Ping timeout: 272 seconds)
2021-06-10 07:05:05 +0200monochrmmonochrom
2021-06-10 07:05:29 +0200bgamari(~bgamari@72.65.101.148) (Ping timeout: 268 seconds)
2021-06-10 07:06:33 +0200ptrcmd_(~ptrcmd@user/ptrcmd) (Ping timeout: 272 seconds)
2021-06-10 07:07:06 +0200ptrcmd(~ptrcmd@user/ptrcmd)
2021-06-10 07:07:48 +0200juhp(~juhp@128.106.188.66) (Client Quit)
2021-06-10 07:08:31 +0200juhp(~juhp@128.106.188.66)
2021-06-10 07:08:42 +0200Toast52_(~Toast52@151.192.167.120) (Ping timeout: 264 seconds)
2021-06-10 07:08:44 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-10 07:09:36 +0200bgamari(~bgamari@2001:470:e438::1)
2021-06-10 07:12:20 +0200yd502__(~yd502@180.168.212.6)
2021-06-10 07:13:08 +0200alex3(~Chel@BSN-77-82-41.static.siol.net)
2021-06-10 07:18:13 +0200wanagnuj(~wanagnuj@101.95.97.158)
2021-06-10 07:19:04 +0200 <dibblego> does anyone happen to know what is appropriate use of the extra argument (:+ p) in creating a polygon given a list of points? https://hackage.haskell.org/package/hgeometry-0.12.0.4/docs/Data-Geometry-Polygon.html#v:fromPoints
2021-06-10 07:19:08 +0200 <dibblego> ping lemmih ^
2021-06-10 07:21:11 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-10 07:23:34 +0200 <dibblego> I guess just :+ () and get on widdit?
2021-06-10 07:25:42 +0200 <int-e> or https://hackage.haskell.org/package/hgeometry-combinatorial-0.12.0.3/docs/Data-Ext.html#v:ext
2021-06-10 07:30:20 +0200slack1256(~slack1256@191.125.180.163) (Ping timeout: 264 seconds)
2021-06-10 07:33:32 +0200yd502__(~yd502@180.168.212.6) (Ping timeout: 272 seconds)
2021-06-10 07:33:51 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
2021-06-10 07:33:54 +0200 <dibblego> yeah got it ta, just not sure of its purpose (yet)
2021-06-10 07:34:06 +0200yd502(~yd502@180.168.212.6)
2021-06-10 07:36:36 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-10 07:36:53 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-06-10 07:41:39 +0200lbseale(~lbseale@user/ep1ctetus) (Read error: Connection reset by peer)
2021-06-10 07:46:01 +0200Bartosz(~textual@24.35.90.211)
2021-06-10 07:46:03 +0200 <int-e> dibblego: if you want some speculation: it's for users who want to associate more data with points... say, a mass, or object types, or maybe even some nested geometry
2021-06-10 07:46:09 +0200aerona(~aerona@2600:6c54:4600:f300:d2da:d7c1:1e2d:1a51) (Quit: Leaving)
2021-06-10 07:46:15 +0200boxscape(~boxscape@user/boxscape) (Ping timeout: 272 seconds)
2021-06-10 07:46:26 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 07:46:54 +0200Toast52(~Toast52@151.192.167.120)
2021-06-10 07:47:17 +0200 <int-e> I skimmed the API a bit (not comprehensively) and didn't see anything that actually used that extension data... but it's also possible that it's used internally somewhere... easy to miss.
2021-06-10 07:48:39 +0200Numeral(~Numeral@2600:100e:b134:586b:7b7a:968a:9363:1b52)
2021-06-10 07:48:59 +0200Guest27(~Guest27@2604:5500:c07d:3f00:1568:5be2:dbc1:e40a)
2021-06-10 07:50:56 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-10 07:51:16 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds)
2021-06-10 07:53:10 +0200Numeral(~Numeral@2600:100e:b134:586b:7b7a:968a:9363:1b52) (Quit: Quit)
2021-06-10 07:55:33 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Ping timeout: 244 seconds)
2021-06-10 08:02:19 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-10 08:03:05 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-10 08:03:51 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-10 08:05:29 +0200_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-06-10 08:05:42 +0200Bartosz(~textual@24.35.90.211)
2021-06-10 08:07:05 +0200Toast52_(~Toast52@151.192.167.120)
2021-06-10 08:10:29 +0200Toast52(~Toast52@151.192.167.120) (Ping timeout: 245 seconds)
2021-06-10 08:16:29 +0200P1RATEZ(piratez@cpe98524ab27125-cm98524ab27123.cpe.net.cable.rogers.com) (Changing host)
2021-06-10 08:16:29 +0200P1RATEZ(piratez@user/p1ratez)
2021-06-10 08:17:19 +0200P1RATEZ(piratez@user/p1ratez) ()
2021-06-10 08:18:42 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:b9f7:1919:7684:9913)
2021-06-10 08:19:49 +0200notzmv(~zmv@user/notzmv)
2021-06-10 08:20:56 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 08:21:07 +0200juhp(~juhp@128.106.188.66) (Quit: juhp)
2021-06-10 08:25:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-10 08:26:37 +0200dhil(~dhil@195.213.192.47)
2021-06-10 08:28:34 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 08:29:20 +0200spatchkaa(~spatchkaa@S010600fc8da47b63.gv.shawcable.net) (Ping timeout: 244 seconds)
2021-06-10 08:29:58 +0200spatchkaa(~spatchkaa@S010600fc8da47b63.gv.shawcable.net)
2021-06-10 08:33:30 +0200 <dibblego> int-e: ah ok, cool cheers
2021-06-10 08:37:38 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be)
2021-06-10 08:38:17 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-10 08:39:50 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 252 seconds)
2021-06-10 08:39:53 +0200spatchkaa_(~spatchkaa@S010600fc8da47b63.gv.shawcable.net)
2021-06-10 08:40:40 +0200spatchkaa(~spatchkaa@S010600fc8da47b63.gv.shawcable.net) (Ping timeout: 272 seconds)
2021-06-10 08:41:37 +0200wonko(~wjc@62.115.229.50)
2021-06-10 08:42:09 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 245 seconds)
2021-06-10 08:45:52 +0200juhp(~juhp@128.106.188.66)
2021-06-10 08:46:03 +0200jco(~jco@c83-248-173-38.bredband.tele2.se)
2021-06-10 08:46:31 +0200cfricke(~cfricke@user/cfricke)
2021-06-10 08:46:42 +0200ubert(~Thunderbi@p200300ecdf259d4b4d0b89c625dcbc13.dip0.t-ipconnect.de)
2021-06-10 08:48:24 +0200Guest27(~Guest27@2604:5500:c07d:3f00:1568:5be2:dbc1:e40a) (Quit: Client closed)
2021-06-10 08:50:38 +0200slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-06-10 08:52:59 +0200jakalx(~jakalx@base.jakalx.net) ()
2021-06-10 08:53:02 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Read error: No route to host)
2021-06-10 08:54:01 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-10 08:54:27 +0200abraham(~abraham@173.239.198.148) (Quit: Textual IRC Client: www.textualapp.com)
2021-06-10 08:59:57 +0200nsilv(~nsilv@212.103.198.210)
2021-06-10 09:00:24 +0200chddr(~Thunderbi@31.148.23.125)
2021-06-10 09:01:09 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr)
2021-06-10 09:01:24 +0200yd502_(~yd502@180.168.212.6)
2021-06-10 09:03:49 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 245 seconds)
2021-06-10 09:04:04 +0200sekun(~sekun@180.190.152.149) (Remote host closed the connection)
2021-06-10 09:05:00 +0200yd502(~yd502@180.168.212.6)
2021-06-10 09:07:22 +0200yd502_(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-10 09:07:34 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 245 seconds)
2021-06-10 09:08:28 +0200jakalx(~jakalx@base.jakalx.net)
2021-06-10 09:08:38 +0200berberman(~berberman@user/berberman)
2021-06-10 09:09:26 +0200berberman_(~berberman@user/berberman) (Ping timeout: 268 seconds)
2021-06-10 09:09:41 +0200alarix(~alarix@59.88.30.217) (Quit: leaving)
2021-06-10 09:10:21 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 09:10:26 +0200cfricke(~cfricke@user/cfricke)
2021-06-10 09:12:11 +0200yd502_(~yd502@180.168.212.6)
2021-06-10 09:13:16 +0200michalz(~michalz@185.246.204.126)
2021-06-10 09:13:41 +0200chele(~chele@user/chele)
2021-06-10 09:14:00 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se)
2021-06-10 09:14:41 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 09:15:07 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-10 09:17:06 +0200 <juri_> glguy: the warnings refer to things inside of the package (when i haven't turned on inlining, and GHC wants it, for instance), and things outside of the package. i need the former warnings, i don't need the latter.
2021-06-10 09:18:07 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-06-10 09:18:22 +0200mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-06-10 09:18:50 +0200yd502(~yd502@180.168.212.6)
2021-06-10 09:20:04 +0200doublex_(~doublex@2601:542:c480:6ee0:184b:7083:f026:c689) (Ping timeout: 245 seconds)
2021-06-10 09:21:19 +0200yd502_(~yd502@180.168.212.6) (Ping timeout: 245 seconds)
2021-06-10 09:21:29 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se) (Read error: Connection reset by peer)
2021-06-10 09:24:59 +0200dendru(uid503630@id-503630.brockwell.irccloud.com)
2021-06-10 09:25:24 +0200Toast52_(~Toast52@151.192.167.120) (Quit: Leaving)
2021-06-10 09:26:08 +0200jespada(~jespada@90.254.242.55) (Ping timeout: 264 seconds)
2021-06-10 09:29:00 +0200jespada(~jespada@90.254.242.55)
2021-06-10 09:31:47 +0200zaquest(~notzaques@5.128.210.178)
2021-06-10 09:32:14 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 09:33:26 +0200gehmehgeh(~user@user/gehmehgeh)
2021-06-10 09:34:09 +0200kuribas(~user@ptr-25vy0i6v9tbds0gjkm6.18120a2.ip6.access.telenet.be)
2021-06-10 09:35:24 +0200zaquest(~notzaques@5.128.210.178) (Client Quit)
2021-06-10 09:35:38 +0200zaquest(~notzaques@5.128.210.178)
2021-06-10 09:37:38 +0200fendor(~fendor@77.119.128.226.wireless.dyn.drei.com)
2021-06-10 09:37:56 +0200oxide(~lambda@user/oxide)
2021-06-10 09:39:48 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se)
2021-06-10 09:40:55 +0200betelgeuse(~john2gb@94-225-47-8.access.telenet.be) (Quit: The Lounge - https://thelounge.chat)
2021-06-10 09:42:09 +0200oxide(~lambda@user/oxide) (Ping timeout: 245 seconds)
2021-06-10 09:42:42 +0200benin03(~benin@183.82.176.4)
2021-06-10 09:42:44 +0200nsilv(~nsilv@212.103.198.210) (Ping timeout: 272 seconds)
2021-06-10 09:44:47 +0200nsilv(~nsilv@212.103.198.210)
2021-06-10 09:44:47 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Read error: Connection reset by peer)
2021-06-10 09:45:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 09:45:25 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-10 09:45:46 +0200td_(~td@94.134.91.190)
2021-06-10 09:46:10 +0200xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-06-10 09:52:21 +0200oxide(~lambda@user/oxide)
2021-06-10 09:56:45 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-06-10 09:56:46 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 10:00:54 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 245 seconds)
2021-06-10 10:02:04 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 10:03:11 +0200alex3(~Chel@BSN-77-82-41.static.siol.net) (Quit: WeeChat 3.0)
2021-06-10 10:07:27 +0200hendursa1(~weechat@user/hendursaga)
2021-06-10 10:07:43 +0200alex2(~alex3@BSN-77-82-41.static.siol.net)
2021-06-10 10:09:24 +0200alex2(~alex3@BSN-77-82-41.static.siol.net) (Client Quit)
2021-06-10 10:09:31 +0200alex2(~alex3@BSN-77-82-41.static.siol.net)
2021-06-10 10:10:12 +0200alex2(~alex3@BSN-77-82-41.static.siol.net) (Client Quit)
2021-06-10 10:10:18 +0200alex3(~alex3@BSN-77-82-41.static.siol.net)
2021-06-10 10:10:19 +0200hendursaga(~weechat@user/hendursaga) (Ping timeout: 252 seconds)
2021-06-10 10:11:16 +0200pera(~pera@70.red-88-14-152.dynamicip.rima-tde.net)
2021-06-10 10:11:39 +0200peraGuest1402
2021-06-10 10:13:46 +0200Guest1402(~pera@70.red-88-14-152.dynamicip.rima-tde.net) (Client Quit)
2021-06-10 10:15:12 +0200oxide(~lambda@user/oxide) (Read error: Connection reset by peer)
2021-06-10 10:18:04 +0200ubert(~Thunderbi@p200300ecdf259d4b4d0b89c625dcbc13.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-06-10 10:18:31 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 10:18:45 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-06-10 10:19:00 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-10 10:19:36 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 10:21:15 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 10:21:46 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-10 10:22:12 +0200larkfisherman(~larkfishe@217.75.204.126)
2021-06-10 10:22:15 +0200xkuru(~xkuru@user/xkuru)
2021-06-10 10:23:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 244 seconds)
2021-06-10 10:24:30 +0200qoelet(~kumo@139.180.144.166)
2021-06-10 10:26:00 +0200jco(~jco@c83-248-173-38.bredband.tele2.se) (Remote host closed the connection)
2021-06-10 10:30:23 +0200 <dminuoso> If my program is started by cron at 00:00:00, is it possible for getSystemTime to give me the timestamp at 23:59 from yesterday?
2021-06-10 10:30:58 +0200 <Taneb> Probably, computer time is weird.
2021-06-10 10:31:02 +0200 <merijn> Probably
2021-06-10 10:31:16 +0200 <merijn> Negative leap second coming up Soon-ish (TM) :p
2021-06-10 10:31:24 +0200 <dminuoso> Yeah, though negative leap second is fine with me.
2021-06-10 10:31:25 +0200 <merijn> RIP our collective sanity
2021-06-10 10:31:40 +0200 <kritzefitz> Definitely if the realtime clock is set in the meantime by NTP or something else.
2021-06-10 10:31:59 +0200 <dminuoso> I guess ntp is a rather realistic scenario
2021-06-10 10:33:01 +0200 <c_wraith> NTP shouldn't move the clock backwards - though tools like ntpdate will
2021-06-10 10:33:04 +0200 <dminuoso> Maybe I should just do the obvious and start it at 00:01:00, that way funny leap seconds or small drift fixes by NTP wont harm me.
2021-06-10 10:33:06 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-10 10:33:22 +0200 <dminuoso> c_wraith: It shouldn't? What if my clock runs too fast? Would it keep going into the future indefinitely?
2021-06-10 10:33:46 +0200 <c_wraith> NTP is intended to keep the clock monotonic - it will slow it down if you're ahead, rather than moving it backwards
2021-06-10 10:35:13 +0200 <dminuoso> I see.
2021-06-10 10:35:15 +0200Erutuon(~Erutuon@user/erutuon) (Ping timeout: 252 seconds)
2021-06-10 10:37:04 +0200 <dminuoso> How exactly does getSystemTime work anyway? How is time measured to this accuracy? Does the CPU calculate it from a clock cycle count and clock rate?
2021-06-10 10:37:16 +0200 <tdammers> AFAIK, most ntp clients will "jump" when the error exceeds a certain margin
2021-06-10 10:37:37 +0200 <dminuoso> (And how does all of this even work sensible on multi-core systems)
2021-06-10 10:37:38 +0200 <tdammers> like, when you're six days ahead, just slowing down would mean it'd take weeks to catch up, so that's not a good option
2021-06-10 10:38:12 +0200 <Maxdamantus> What system calls does it use to slow down time?
2021-06-10 10:38:58 +0200urtieearthy
2021-06-10 10:40:17 +0200 <Maxdamantus> Ah, hm. Apparently that's what adjtime does.
2021-06-10 10:41:32 +0200 <dminuoso> Ah I guess you'd just set up a timer interrupt, which preempts the CPU and then increases a counter.
2021-06-10 10:41:47 +0200 <dminuoso> Can time be monotone in a multi-core environment?
2021-06-10 10:42:18 +0200 <dminuoso> Oh this is giving too much headaches. Im going to pretend its monotone for the sake of sanity.
2021-06-10 10:42:31 +0200 <tdammers> "eventual monotonicity"
2021-06-10 10:42:32 +0200 <Maxdamantus> It can. I imagine it probably is.
2021-06-10 10:42:50 +0200 <kritzefitz> dminuoso, at least on unix systems there are different clocks with different guarantees-
2021-06-10 10:42:52 +0200 <c_wraith> it's pretty common to set cron tasks to happen just after midnight because you don't want to deal with this :)
2021-06-10 10:43:08 +0200 <kritzefitz> One of those guarantees is monotonicity.
2021-06-10 10:43:20 +0200 <kritzefitz> But getSystemTime doesn't use a clock with that guarantee.
2021-06-10 10:43:27 +0200 <dminuoso> Maxdamantus: Yes? No? Maybe? Memory consistency is a thing. :p
2021-06-10 10:43:39 +0200 <merijn> dminuoso: Just use a monotone clock for you timings?
2021-06-10 10:43:50 +0200 <merijn> @hackage clock
2021-06-10 10:43:50 +0200 <lambdabot> https://hackage.haskell.org/package/clock
2021-06-10 10:43:58 +0200 <merijn> Don't use getSystemTime for this kinda thing
2021-06-10 10:44:04 +0200 <Maxdamantus> dminuoso: as long as people take memory consistency into account, it should be possible.
2021-06-10 10:44:30 +0200 <dminuoso> merijn: As for technical requirement, Im just bikeshedding a bit for the purpose of understanding. I just have a business requirement to work in terms of legal days.
2021-06-10 10:44:54 +0200 <Maxdamantus> dminuoso: you can come up with a model where if one request for the time "happens after" another, it will get a greater (or equal) time.
2021-06-10 10:45:04 +0200 <merijn> Is there even a definition of "legal day"
2021-06-10 10:45:09 +0200 <dminuoso> no clue
2021-06-10 10:45:16 +0200 <merijn> Well, that's step one, then
2021-06-10 10:45:16 +0200 <dminuoso> Probably :)
2021-06-10 10:45:24 +0200 <merijn> Everything else is pointless until you know what it is
2021-06-10 10:46:58 +0200 <dminuoso> So the technical requirement is that I need to activate an account on its activation date precisely at midnight. A minute drift is acceptable to the customer. I was just wondering how reliable `utctDay . systemToUTCTime <$> liftIO getSystemTime` would be for the task to identify whether today is the proper activation date.
2021-06-10 10:47:25 +0200 <dminuoso> Of course I can fix that with a heuristic that checks whether the current time is somewhere in the vicinity of midnight. If its shortly before, pretend its the next day, etc
2021-06-10 10:48:05 +0200 <dminuoso> This topic then introduced a bunch of related and unrelated questions regarding how time works anyway
2021-06-10 10:48:45 +0200 <kritzefitz> I think your best bet for a real time solution is to actually run a bit after midnight, so slight variations won't change the day.
2021-06-10 10:48:53 +0200 <kritzefitz> s/real time/real worl/
2021-06-10 10:49:36 +0200 <dminuoso> kritzefitz: Dunno, running precisely at midnight, but adding say 5 minutes to the system time before taking the day seems like a better solution
2021-06-10 10:50:06 +0200 <dminuoso> That way I get to run as close to midnight as possible, but allowing for slight variations still
2021-06-10 10:50:24 +0200 <kritzefitz> So running close to midnight is important?
2021-06-10 10:50:45 +0200 <dminuoso> Apparently the legal department of the customer seems to think so
2021-06-10 10:50:56 +0200 <Maxdamantus> dminuoso: if you're not interacting with another computer, I imagine you theoretically don't need to worry about this, as long the computer you're running on isn't having its clock set backwards.
2021-06-10 10:52:00 +0200 <Maxdamantus> If you are dealing with another computer, one proper way to guarantee that time doesn't seem to move backwards after the message is handled by the other system would be to include a timestamp in all of your messages.
2021-06-10 10:52:10 +0200 <Maxdamantus> and the other computer should not handle the messages until that time has passed.
2021-06-10 10:52:56 +0200yd502(~yd502@180.168.212.6)
2021-06-10 10:54:07 +0200dragestil(~quassel@user/dragestil) (Remote host closed the connection)
2021-06-10 10:54:49 +0200 <kritzefitz> Maxdamantus, but then you have to trust that your clock actually isn't set back. NTP and negative leap seconds might cause unexpected behavior here. It has been mentioned that those *shouldn't* set the clock backwards, but I personally wouldn't bet on it.
2021-06-10 10:55:26 +0200dragestil(~quassel@user/dragestil)
2021-06-10 10:55:57 +0200 <earthy> dminuoso: 'what midnight' 'should it start or finish close to midnight'
2021-06-10 10:56:40 +0200 <Maxdamantus> kritzefitz: then I guess you'd have to just apply my principle to within the same system.
2021-06-10 10:56:45 +0200 <dminuoso> earthy: I was just waiting for that question. :-)
2021-06-10 10:56:49 +0200spoonm(~spoonm@tokyo.spoonm.org) (Quit: Don't look behind you!)
2021-06-10 10:57:55 +0200 <dminuoso> Luckily this is just a small project, and the customer wasn't being too serious about what their legal department thinks. As long as it's "roughly" around midnight, all is good.
2021-06-10 10:57:55 +0200ubert(~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233)
2021-06-10 10:57:55 +0200 <earthy> but, given that you talked about account activation 'at midnight', the obvious answer is to have the account active already, but have the login system check against the timestamp of the request coming in.
2021-06-10 10:58:09 +0200 <Maxdamantus> So if you're updating a database at midnight, include a timestamp in the database entry, and when you read database entries, wait until that time has passed.
2021-06-10 10:59:02 +0200 <earthy> and have an account with validity time ranges.
2021-06-10 10:59:04 +0200 <dminuoso> earthy: If only things were that simple. To activate an account, I need to register resources with an external API.
2021-06-10 10:59:13 +0200 <dminuoso> Which itself has no validity range
2021-06-10 10:59:56 +0200 <earthy> as long as all interaction is through your frontend... I don't particularly see the problem.
2021-06-10 11:00:13 +0200 <dminuoso> I dont have a frontend, its behind that external thing.
2021-06-10 11:00:15 +0200 <dminuoso> That's the problem
2021-06-10 11:00:29 +0200 <earthy> *ah*...
2021-06-10 11:00:35 +0200 <Maxdamantus> (and also, avoid reading the time multiple times; read it once after reading from the database, unless you have to wait due to the clock skew)
2021-06-10 11:01:49 +0200 <earthy> that makes the 'should it definitely be active as of midnight or should it be not active at least until midnight' question that much more important. :)
2021-06-10 11:02:08 +0200whiteline(~whiteline@c-64c6e253.54725-0-757473696b74.bbcust.telenor.se) (Ping timeout: 264 seconds)
2021-06-10 11:04:01 +0200 <dminuoso> earthy: So the account gives access to some physical resource. If your account expires today, and someone elses starts tomorrow, and both of you are linked to the same resource, that would lead to overlapping access to that shared resource
2021-06-10 11:04:03 +0200kiweun(~sheepduck@2607:fea8:2a61:4800::e92f) (Remote host closed the connection)
2021-06-10 11:05:42 +0200 <dminuoso> Meaning I cant just "activate accounts 5 minutes before, and deactivate 5 minutes after midnight"
2021-06-10 11:06:00 +0200 <dminuoso> Time is a bizarre thing
2021-06-10 11:06:24 +0200whiteline(~whiteline@c-cda8d954.54725-0-757473696b74.bbcust.telenor.se)
2021-06-10 11:06:34 +0200 <kritzefitz> Do the activations and deactivations actually run in different processes? If they happened in the same process, you could just always deactivate first and only activate access after you're done with that.
2021-06-10 11:06:42 +0200 <dminuoso> Einstein knew too, the problem of time synchronization is what started a life works of a new branch of physics..
2021-06-10 11:06:57 +0200 <dminuoso> kritzefitz: thats precisely what I do. :)
2021-06-10 11:08:14 +0200 <kritzefitz> Ok, I'm not sure anymore what the exact problem is. Do you “just” want to make sure that you run close to midnight or do you also need to reliably determine what the day after that midnight is?
2021-06-10 11:09:40 +0200 <dminuoso> kritzefitz: Maybe I miscommunicated. There is no real problem, just things I wondered about when I wrote a naive solution, thinking there were subtle bugs.
2021-06-10 11:09:54 +0200jneira(~jneira@166.red-81-39-172.dynamicip.rima-tde.net) (Ping timeout: 264 seconds)
2021-06-10 11:11:21 +0200 <earthy> access to physical resources. that poses the obvious next question: *must* it necessarily be mutually exclusive...
2021-06-10 11:11:55 +0200 <earthy> (e.g.: a room can hold multiple people, even if that room is an office that should be assigned to just one person at any one time)
2021-06-10 11:12:44 +0200 <earthy> and the follow-on question is: can you actively *revoke* access at the cut-over time? (e.g. by boucing the person from the room)
2021-06-10 11:13:32 +0200 <dminuoso> So to avoid further confusion, this is just talking out of curiosity, not out of a need of a problem, right?
2021-06-10 11:14:04 +0200 <earthy> the thing is: you can create monotonic logical time for your system. you can anchor that logical time to some physical time, but then the *real* problems start. :)
2021-06-10 11:14:36 +0200 <earthy> yeah, just curious. plus, many of these things we've run into (and tried to solve). :)
2021-06-10 11:14:49 +0200 <earthy> slightly different context though.
2021-06-10 11:14:50 +0200 <dminuoso> earthy: There's actually some subtle legal impliciations. There's no reason we couldn't give shared access, just that it would make liability problematic.,
2021-06-10 11:15:37 +0200 <dminuoso> I cant talk details about this project, but imagine the resource was a car. If the car is damaged, who is liable?
2021-06-10 11:15:48 +0200 <earthy> the driver.
2021-06-10 11:15:57 +0200 <dminuoso> damaged doesnt mean someone was driving it.
2021-06-10 11:16:24 +0200 <dminuoso> could just be a paint scratch
2021-06-10 11:16:26 +0200 <earthy> oh, wait. *drops assumption*.
2021-06-10 11:16:33 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 11:16:49 +0200 <earthy> who is liable is not necessarily knowable.
2021-06-10 11:17:04 +0200 <dminuoso> (lets just pretend we know *when* the damage occured)
2021-06-10 11:17:31 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-10 11:17:32 +0200 <earthy> yeah, but the legal framework for the liability may change around the damage...
2021-06-10 11:17:40 +0200 <dminuoso> highly stateful operations within strict time requirement with legal implications - fun things.
2021-06-10 11:18:12 +0200 <maerwald> what's the correct way to install llvm on Mac?
2021-06-10 11:18:27 +0200 <dminuoso> maerwald: angerman would know :p
2021-06-10 11:18:28 +0200vgtw(~vgtw@c-9164205c.07-348-756d651.bbcust.telenor.se) (Quit: ZNC - https://znc.in)
2021-06-10 11:18:45 +0200 <merijn> maerwald: homebrew and/or macports
2021-06-10 11:18:50 +0200 <xerox> is brew correct enough?
2021-06-10 11:18:59 +0200 <maerwald> homebrew messes up linking from my experience
2021-06-10 11:19:17 +0200 <angerman> brew should be good enough; building llvm from source is a bit of a pain.
2021-06-10 11:19:17 +0200 <xerox> their linking of formulas or linking as in compiler linking
2021-06-10 11:19:28 +0200 <merijn> maerwald: I mean, my homebrew llvm works, but homebrew is really about "support only the latest bleeding edge"
2021-06-10 11:19:36 +0200 <earthy> dminuoso: I was assuming damager and affected party are known. even then, if the damage happens at an exact change in law, the liability is complex (think starting the scratch before midnight and taking a few seconds)
2021-06-10 11:19:42 +0200 <merijn> maerwald: macports is slightly better in that sense
2021-06-10 11:20:05 +0200 <merijn> Building LLVM yourself is always the wrong solution >.>
2021-06-10 11:20:08 +0200 <merijn> So damn painful...
2021-06-10 11:20:11 +0200 <dminuoso> earthy: perhaps a fire is a better example than a scratch.
2021-06-10 11:20:34 +0200 <dminuoso> If the car was lit on fire, and it created surrounding damage to external property before midnight and after.
2021-06-10 11:21:45 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 11:22:37 +0200skewerrspoonm
2021-06-10 11:23:03 +0200spoonm(~spoonm@inaba.spoonm.org) (Quit: ZNC - https://znc.in)
2021-06-10 11:23:18 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 11:23:44 +0200spoonm(~spoonm@inaba.spoonm.org)
2021-06-10 11:24:22 +0200 <tdammers> when it comes to these things, it may be helpful to introduce the concept of "bureaucratic reality"
2021-06-10 11:24:31 +0200 <angerman> merijn: if only they'd provide binary dists for llvm on both darwin platforms, but they don't.
2021-06-10 11:24:55 +0200spoonm(~spoonm@inaba.spoonm.org) (Client Quit)
2021-06-10 11:25:10 +0200 <dminuoso> tdammers: Guess that's why one has legal departments in the first place. Not because one can avoid bureaucratic reality, but to deal with it in these situations. :p
2021-06-10 11:25:33 +0200spoonm(~spoonm@inaba.spoonm.org)
2021-06-10 11:25:48 +0200 <tdammers> yes, that too
2021-06-10 11:25:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 244 seconds)
2021-06-10 11:26:01 +0200bitonic(~bitonicma@2001:470:69fc:105::1812)
2021-06-10 11:26:07 +0200 <tdammers> but my point is that there is a difference between "bureaucratic reality" and "actual reality"
2021-06-10 11:26:17 +0200vgtw(~vgtw@c-9164205c.07-348-756d651.bbcust.telenor.se)
2021-06-10 11:26:27 +0200spoonm(~spoonm@inaba.spoonm.org) (Client Quit)
2021-06-10 11:26:43 +0200 <tdammers> if I scratched your car 5 minutes past midnight, but the police report and eyewitnesses say I did it at 23:55, and my own statement matches that too, then that becomes the bureaucratic reality
2021-06-10 11:27:50 +0200spoonm(spoonm@inaba.spoonm.org)
2021-06-10 11:28:44 +0200yd502_(~yd502@180.168.212.6)
2021-06-10 11:31:02 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 272 seconds)
2021-06-10 11:32:02 +0200 <maerwald> I was expecting xcode --install to install llvm
2021-06-10 11:32:51 +0200 <merijn> maerwald: That's some high level optimism :p
2021-06-10 11:34:09 +0200dhil(~dhil@195.213.192.47) (Quit: Leaving)
2021-06-10 11:34:12 +0200xkuru(~xkuru@user/xkuru) (Ping timeout: 272 seconds)
2021-06-10 11:34:24 +0200 <maerwald> merijn: I spent the last days writing powershell, so I have a lot of optimism
2021-06-10 11:37:23 +0200dhil(~dhil@195.213.192.47)
2021-06-10 11:37:29 +0200 <maerwald> so, after installing llvm with macports, cabal still can't find it
2021-06-10 11:37:48 +0200 <merijn> maerwald: macports doesn't install it into any of the default search paths
2021-06-10 11:37:59 +0200 <merijn> maerwald: Because they don't wanna conflict with system tools
2021-06-10 11:38:16 +0200 <xerox> I have installed it via brew, brew info llvm shows you how to arrange the PATH (and optionally LDFLAGS and CPPFLAGS) to make it override the system clang
2021-06-10 11:38:17 +0200 <merijn> maerwald: homebrew on the other hand *does* install into the main search paths because it wants to replace the system parts
2021-06-10 11:38:21 +0200 <xerox> works well
2021-06-10 11:38:55 +0200 <maerwald> well, I already installed via macports and I want it to work now
2021-06-10 11:39:03 +0200mastarija(~mastarija@31.217.22.43)
2021-06-10 11:39:09 +0200 <xerox> ok (:
2021-06-10 11:42:42 +0200xkuru(~xkuru@user/xkuru)
2021-06-10 11:45:43 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-10 11:47:21 +0200 <kritzefitz> dminuoso, I think the most accurate you can get is with `clock_gettime(CLOCK_TAI)`, which should be unaffected by leap seconds or other such bureaucratic nonsense. But if you want to extract a day from that, you would need to make sure to use the correct `right/...` timezone to convert to your local time.
2021-06-10 11:47:50 +0200 <kritzefitz> But I know of no existing bindings in haskell that allow to CLOCK_TAI.
2021-06-10 11:48:08 +0200yd502_(~yd502@180.168.212.6) (Ping timeout: 272 seconds)
2021-06-10 11:49:03 +0200yd502(~yd502@180.168.212.6)
2021-06-10 11:49:45 +0200 <kritzefitz> But that still assumes that no one uses `clock_settime()` or similar to jump your system time backwards.
2021-06-10 11:53:12 +0200chddr(~Thunderbi@31.148.23.125) (Ping timeout: 272 seconds)
2021-06-10 11:58:26 +0200agumonke`(~user@88.160.31.174) (Read error: Connection reset by peer)
2021-06-10 12:01:24 +0200 <mastarija> is there a way to "condense" multiple patternmatches into one, something in the line of `case value of A,B,C-> do_one_thing; D,E,F-> do_other_thing;`?
2021-06-10 12:01:34 +0200agumonke`(~user@88.160.31.174)
2021-06-10 12:02:05 +0200 <mastarija> I guess I could use `elem` if my dat has an ord instance, but I'm not thrilled about that
2021-06-10 12:02:59 +0200 <xerox> mastarija: maybe with an helper function and a guard?
2021-06-10 12:03:22 +0200 <mastarija> I mean, guard would require `elem`, right?
2021-06-10 12:03:30 +0200 <mastarija> But I was hoping to avoid that :D
2021-06-10 12:03:32 +0200alphacath(~alpha@host-79-36-63-89.retail.telecomitalia.it)
2021-06-10 12:03:47 +0200 <dminuoso> mastarija: Mmm, this can be described lens/optics, but I dont know whether that fits the rest of your usage pattern.
2021-06-10 12:03:58 +0200 <mastarija> dminuoso, not really
2021-06-10 12:04:06 +0200 <mastarija> I was hoping for something simple
2021-06-10 12:04:30 +0200 <dminuoso> mastarija: Then use PatternSynonyms
2021-06-10 12:04:31 +0200 <mastarija> I'm kind of missing the "fall through" behaviour of switch from other languages
2021-06-10 12:04:46 +0200 <dminuoso> Yeah. You can mimic them with PatternSynonyms
2021-06-10 12:04:47 +0200 <xerox> I was thinking something like data Thing = A | B | C | D; good A = True; good B = True; good _ = False; f thing | True <- good thing = <case for A and B together>
2021-06-10 12:05:29 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Ping timeout: 245 seconds)
2021-06-10 12:05:37 +0200pavonia(~user@user/siracusa)
2021-06-10 12:05:49 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Ping timeout: 244 seconds)
2021-06-10 12:05:49 +0200 <mastarija> xerox, I was looking for something more "adhoc", this would require defining a helper function every time I want this behavior
2021-06-10 12:05:50 +0200 <dminuoso> mastarija: Also, do these constructors have fields? Or is this just a sum of nullary constructors?
2021-06-10 12:05:58 +0200 <mastarija> just a sum
2021-06-10 12:06:07 +0200agumonke`(~user@88.160.31.174) (Remote host closed the connection)
2021-06-10 12:06:25 +0200 <xerox> could probably be subsumed into a pattern synonym like pattern AorB <- ... so you can always define your functions on Thing matching on AorB, C, D ..
2021-06-10 12:06:39 +0200 <dminuoso> Then you can use case () of _ | x `elem` [A,B,C] -> ...; x `elem` [D,E] -> ....;`
2021-06-10 12:06:45 +0200 <mastarija> But yeah, now that I think about it, this could be nice language extension :)
2021-06-10 12:06:47 +0200 <dminuoso> (or perhaps directly in function cards)
2021-06-10 12:06:58 +0200azeem(~azeem@176.200.249.22)
2021-06-10 12:07:07 +0200 <dminuoso> mastarija: It's either this or PatternSynonyms.
2021-06-10 12:07:16 +0200 <xerox> check out the example here if you're unfamiliar with those, maybe that'll work well for you? https://downloads.haskell.org/~ghc/8.10.5/docs/html/users_guide/glasgow_exts.html#pattern-synonyms
2021-06-10 12:07:16 +0200 <mastarija> I'm gonna check the PatternSynonyms
2021-06-10 12:07:38 +0200 <mastarija> I took a peek some time ago, but didn't have much use for them
2021-06-10 12:07:51 +0200 <mastarija> This could be a good opportunity to check them out :D
2021-06-10 12:08:17 +0200 <dminuoso> mastarija: https://gist.github.com/dminuoso/20dcc292c7e9536e6fd3ab73b7d83889
2021-06-10 12:08:24 +0200 <dminuoso> This is what it would look like with elem
2021-06-10 12:08:51 +0200 <mastarija> dminuoso, yes, I know that but I kind of wanted to avoid elem
2021-06-10 12:09:00 +0200 <mastarija> you've probably missed that :D
2021-06-10 12:09:18 +0200 <dminuoso> What's wrong with elem?
2021-06-10 12:10:38 +0200 <mastarija> noise?
2021-06-10 12:10:42 +0200 <nsilv> it's basically Or patterns... so it is very old but there's this: https://hackage.haskell.org/package/OrPatterns
2021-06-10 12:12:36 +0200 <mastarija> dminuoso, ah yes, another thing with elem is that it requires `Eq`
2021-06-10 12:13:11 +0200 <mastarija> that's also what I was trying to avoid
2021-06-10 12:13:22 +0200dhil(~dhil@195.213.192.47) (Ping timeout: 244 seconds)
2021-06-10 12:14:03 +0200 <nsilv> sadly or patterns seem pretty much dead? https://github.com/ghc-proposals/ghc-proposals/pull/43
2021-06-10 12:14:52 +0200martin02(silas@hund.fs.lmu.de)
2021-06-10 12:14:54 +0200 <mastarija> nsilv, and I'm not really going to download a lib for such a minor thing :D
2021-06-10 12:15:03 +0200 <mastarija> I was hoping there was something in the language already
2021-06-10 12:15:09 +0200 <mastarija> But it's not a big deal
2021-06-10 12:16:17 +0200 <nsilv> yeah there were thoughts of doing it (I think it's in both OCaml and F#, maybe SML too?) the ticket just stalled. Which is sad, it's a small but very useful feature
2021-06-10 12:17:38 +0200nschoe(~quassel@2a04:cec0:1140:d70e:246d:fa9d:5f2c:423e)
2021-06-10 12:18:08 +0200 <DigitalKiwi> why make something so minor part of the language if you can just download a lib?
2021-06-10 12:19:43 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 12:20:38 +0200 <yushyin> or-patters have a long history of not beeing implemented in haskell/ghc :D
2021-06-10 12:23:11 +0200xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-06-10 12:23:45 +0200zeenk(~zeenk@2a02:2f04:a310:b600:b098:bf18:df4d:4c41)
2021-06-10 12:24:59 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 12:26:03 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-10 12:26:21 +0200dhil(~dhil@80.208.56.181)
2021-06-10 12:29:05 +0200 <dminuoso> Me personally, Ive just become accustomed to repeating case-of branches. It's an annoyance, but in the grand scheme of things there's many other more pressing things that I want in Haskell.
2021-06-10 12:29:23 +0200 <dminuoso> Like circular imports
2021-06-10 12:29:36 +0200 <dminuoso> (By Haskell I mean GHC Haskell, of course)
2021-06-10 12:29:56 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 272 seconds)
2021-06-10 12:30:05 +0200 <dibblego> optics are better anyway
2021-06-10 12:30:29 +0200 <dminuoso> dibblego: If they fit the usage pattern, anyway.
2021-06-10 12:30:40 +0200 <dibblego> the what?
2021-06-10 12:31:13 +0200nsilv(~nsilv@212.103.198.210) (Quit: WeeChat 3.0.1)
2021-06-10 12:31:27 +0200 <dminuoso> optics are not a universal replacement for case-of
2021-06-10 12:31:38 +0200 <dibblego> yes they are
2021-06-10 12:32:01 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
2021-06-10 12:34:29 +0200Voeid(luke@voeid.cf) (Leaving...)
2021-06-10 12:36:19 +0200azeem(~azeem@176.200.249.22) (Ping timeout: 245 seconds)
2021-06-10 12:36:39 +0200 <dminuoso> If by that you mean "one can mechanically replace a usage of case-of with optics", then that's not saying much.
2021-06-10 12:37:02 +0200 <dminuoso> My point is, they are not universally better at discriminating values than case-of.
2021-06-10 12:37:09 +0200 <dibblego> yes they are
2021-06-10 12:37:21 +0200 <dminuoso> Okay.
2021-06-10 12:37:58 +0200 <dibblego> fallacy of false middle — show me the counter-example!
2021-06-10 12:38:06 +0200yd502_(~yd502@180.168.212.6)
2021-06-10 12:38:18 +0200Guest9836(~Guest98@156.217.248.178)
2021-06-10 12:38:53 +0200 <mastarija> dminuoso, I wonder how much effort it would be to add that feature to Haskell, and if this might be a good starter project to get familiar with GHC internals
2021-06-10 12:39:38 +0200 <mastarija> i was thinking of starting to dig through GHC, so this might be a good starter
2021-06-10 12:39:43 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-10 12:40:23 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2021-06-10 12:40:30 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-10 12:40:33 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 12:40:36 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2021-06-10 12:41:13 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 12:41:14 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 12:41:16 +0200yd502(~yd502@180.168.212.6) (Ping timeout: 244 seconds)
2021-06-10 12:41:58 +0200nschoe(~quassel@2a04:cec0:1140:d70e:246d:fa9d:5f2c:423e) (Ping timeout: 272 seconds)
2021-06-10 12:42:03 +0200 <dminuoso> mastarija: From a quick look at the existing PR, it seems one of the main complexities is the interaction with other extensions
2021-06-10 12:42:29 +0200 <dminuoso> Seems to be missing clear specifications, so it's not just the mechanical work of implementing it
2021-06-10 12:42:31 +0200 <mastarija> Hm.. yes, I guess Pattern synonyms don't help the cause there
2021-06-10 12:44:04 +0200 <lortabac> dminuoso: +1, lack of circular imports is incredibly annoying, I inevitably end up with a huge Types module to circumvent the problem
2021-06-10 12:44:39 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 12:45:11 +0200 <dminuoso> lortabac: Just use a big mono module!
2021-06-10 12:45:15 +0200 <dminuoso> Problem solved.
2021-06-10 12:45:16 +0200 <mastarija> dminuoso, have you ever contributed to GHC? I was always wondering what is the workflow for such things, I imagine my little laptop wouldn't be able to compile the whole of GHC when I want to test changes locally.
2021-06-10 12:45:48 +0200azeem(~azeem@176.200.230.226)
2021-06-10 12:45:53 +0200teaSlurper(~chris@81.96.113.213) (Ping timeout: 268 seconds)
2021-06-10 12:46:02 +0200 <dminuoso> mastarija: I did some modifications a while ago. The experience is be pleasant enough, you should be able to build it even on older laptops.
2021-06-10 12:46:10 +0200 <mastarija> I really like the GHCI workflow, but I imagine that's a no go when you are working on the GHC it self.
2021-06-10 12:46:19 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-10 12:46:24 +0200 <dminuoso> For development, you dont need a full optimized build
2021-06-10 12:46:33 +0200 <dminuoso> Of course you can use that!
2021-06-10 12:46:41 +0200 <dminuoso> GHC is just a Haskell program, no reason you couldn't run it from GHCi.
2021-06-10 12:46:43 +0200 <mastarija> dminuoso, to test the new syntax?
2021-06-10 12:46:56 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 12:46:57 +0200Guest9836(~Guest98@156.217.248.178) (Quit: Client closed)
2021-06-10 12:47:07 +0200 <mastarija> starting a ghci from ghci :D
2021-06-10 12:47:20 +0200 <mastarija> That smells like trouble
2021-06-10 12:47:39 +0200 <dminuoso> Well, you can just run `ghc` on small files. :)
2021-06-10 12:47:53 +0200 <mastarija> Well, I just might try it.
2021-06-10 12:48:00 +0200 <mastarija> I have some free time this year anyway
2021-06-10 12:49:27 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net) (Ping timeout: 252 seconds)
2021-06-10 12:49:32 +0200brian_da_mage(~Neuromanc@user/briandamag) (Ping timeout: 252 seconds)
2021-06-10 12:50:59 +0200 <dminuoso> mastarija: https://gitlab.haskell.org/ghc/ghc/-/wikis/building/in-ghci
2021-06-10 12:51:19 +0200 <dminuoso> This can be handy to rapidly test out changes as you make them to GHC.
2021-06-10 12:52:09 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-10 12:52:18 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr)
2021-06-10 12:52:41 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 12:53:21 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-10 12:53:51 +0200yd502_(~yd502@180.168.212.6) (Ping timeout: 252 seconds)
2021-06-10 12:54:25 +0200 <mastarija> That's cool, so basically it's not as big of a deal as I thought
2021-06-10 12:55:52 +0200ukari(~ukari@user/ukari) (Remote host closed the connection)
2021-06-10 12:56:53 +0200ukari(~ukari@user/ukari)
2021-06-10 12:57:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-10 12:58:26 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 13:01:27 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-06-10 13:03:24 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 245 seconds)
2021-06-10 13:04:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 13:04:30 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 13:05:39 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 13:06:00 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 13:06:44 +0200azeem(~azeem@176.200.230.226) (Ping timeout: 245 seconds)
2021-06-10 13:07:06 +0200neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130)
2021-06-10 13:07:27 +0200azeem(~azeem@176.200.195.4)
2021-06-10 13:08:21 +0200agumonke`(~user@88.160.31.174)
2021-06-10 13:08:54 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr)
2021-06-10 13:09:10 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-10 13:09:59 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 13:10:04 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 13:10:47 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 13:18:28 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 13:19:41 +0200Torro(Torro@gateway/vpn/protonvpn/torro)
2021-06-10 13:19:58 +0200azeem(~azeem@176.200.195.4) (Ping timeout: 272 seconds)
2021-06-10 13:20:01 +0200sheepduck(~sheepduck@2607:fea8:2a61:4800::3ae6)
2021-06-10 13:20:19 +0200marinelli[m](~marinelli@2001:470:69fc:105::2d8) (Quit: Reconnecting)
2021-06-10 13:20:35 +0200marinelli[m](~marinelli@2001:470:69fc:105::2d8)
2021-06-10 13:21:29 +0200Day1(~Android@pop.92-184-116-93.mobile.abo.orange.fr)
2021-06-10 13:22:23 +0200sheepduck(~sheepduck@2607:fea8:2a61:4800::3ae6) (Remote host closed the connection)
2021-06-10 13:23:00 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Ping timeout: 252 seconds)
2021-06-10 13:24:52 +0200machinedgod(~machinedg@135-23-192-217.cpe.pppoe.ca)
2021-06-10 13:25:20 +0200azeem(~azeem@176.200.195.4)
2021-06-10 13:26:02 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 13:26:45 +0200jakalx(~jakalx@base.jakalx.net)
2021-06-10 13:27:49 +0200dhil(~dhil@80.208.56.181) (Ping timeout: 268 seconds)
2021-06-10 13:28:00 +0200sheepduck(~sheepduck@2607:fea8:2a61:4800::3ae6)
2021-06-10 13:30:54 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 268 seconds)
2021-06-10 13:31:09 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-06-10 13:36:45 +0200jespada(~jespada@90.254.242.55) (Ping timeout: 244 seconds)
2021-06-10 13:37:41 +0200azeem(~azeem@176.200.195.4) (Ping timeout: 268 seconds)
2021-06-10 13:38:04 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 13:38:43 +0200trent1(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea)
2021-06-10 13:38:48 +0200azeem(~azeem@176.200.214.131)
2021-06-10 13:39:00 +0200jespada(~jespada@90.254.242.55)
2021-06-10 13:40:35 +0200dhil(~dhil@195.213.192.47)
2021-06-10 13:45:56 +0200azeem(~azeem@176.200.214.131) (Ping timeout: 272 seconds)
2021-06-10 13:46:04 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 13:47:46 +0200azeem(~azeem@176.200.214.131)
2021-06-10 13:50:29 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 13:52:09 +0200azeem(~azeem@176.200.214.131) (Ping timeout: 252 seconds)
2021-06-10 13:53:19 +0200azeem(~azeem@176.200.214.131)
2021-06-10 13:53:34 +0200slack1256(~slack1256@181.203.23.128)
2021-06-10 13:56:28 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp) (Quit: The Lounge - https://thelounge.chat)
2021-06-10 13:57:13 +0200yaroot(~yaroot@6.3.30.125.dy.iij4u.or.jp)
2021-06-10 13:58:28 +0200fresheyeball(~fresheyeb@c-71-237-105-37.hsd1.co.comcast.net) (Quit: WeeChat 2.9)
2021-06-10 14:00:57 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-10 14:02:36 +0200dhil(~dhil@195.213.192.47) (Ping timeout: 252 seconds)
2021-06-10 14:03:49 +0200trent1(~trent@2001:8003:340d:d00:b2de:b98:7a93:b0ea) (Ping timeout: 245 seconds)
2021-06-10 14:05:34 +0200azeem(~azeem@176.200.214.131) (Ping timeout: 272 seconds)
2021-06-10 14:05:34 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 272 seconds)
2021-06-10 14:05:52 +0200azeem(~azeem@176.201.34.70)
2021-06-10 14:06:17 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 14:09:21 +0200jippiedoe(~david@2a02-a44c-e14e-1-6bdc-c755-d41c-84af.fixed6.kpn.net)
2021-06-10 14:10:59 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 268 seconds)
2021-06-10 14:15:50 +0200dhil(~dhil@80.208.56.181)
2021-06-10 14:16:23 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 14:17:13 +0200oxide(~lambda@user/oxide)
2021-06-10 14:18:14 +0200azeem(~azeem@176.201.34.70) (Ping timeout: 272 seconds)
2021-06-10 14:20:14 +0200hmmmas(~chenqisu1@183.217.200.246)
2021-06-10 14:22:57 +0200azeem(~azeem@176.201.34.70)
2021-06-10 14:23:24 +0200slack1256(~slack1256@181.203.23.128) (Ping timeout: 245 seconds)
2021-06-10 14:26:23 +0200peterhil_(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-10 14:26:27 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-06-10 14:30:16 +0200dhil(~dhil@80.208.56.181) (Ping timeout: 272 seconds)
2021-06-10 14:31:08 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 14:31:11 +0200psydroid(~psydroidm@2001:470:69fc:105::165) (Changing host)
2021-06-10 14:31:11 +0200psydroid(~psydroidm@user/psydroid)
2021-06-10 14:32:27 +0200nan`(~nan`@rrcs-70-60-83-42.central.biz.rr.com)
2021-06-10 14:32:34 +0200peterhil_(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 245 seconds)
2021-06-10 14:32:34 +0200azeem(~azeem@176.201.34.70) (Ping timeout: 268 seconds)
2021-06-10 14:33:19 +0200azeem(~azeem@176.200.189.210)
2021-06-10 14:34:04 +0200benin03(~benin@183.82.176.4) (Ping timeout: 272 seconds)
2021-06-10 14:35:24 +0200peterhil(~peterhil@mobile-access-bcee65-77.dhcp.inet.fi)
2021-06-10 14:35:29 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 14:37:40 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 14:38:29 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2021-06-10 14:39:15 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se) (Remote host closed the connection)
2021-06-10 14:41:51 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 14:42:13 +0200pbrisbin(~patrick@pool-72-92-38-164.phlapa.fios.verizon.net)
2021-06-10 14:43:12 +0200dhil(~dhil@195.213.192.47)
2021-06-10 14:43:17 +0200Day1(~Android@pop.92-184-116-93.mobile.abo.orange.fr) (Read error: Connection reset by peer)
2021-06-10 14:45:40 +0200hmmmas(~chenqisu1@183.217.200.246) (Quit: Leaving.)
2021-06-10 14:45:54 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 14:47:05 +0200Day1(~Android@pop.92-184-116-9.mobile.abo.orange.fr)
2021-06-10 14:47:59 +0200wanagnuj(~wanagnuj@101.95.97.158) (Ping timeout: 245 seconds)
2021-06-10 14:48:01 +0200benin03(~benin@183.82.206.186)
2021-06-10 14:50:14 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 14:53:37 +0200mastarija(~mastarija@31.217.22.43) (Quit: Leaving)
2021-06-10 14:54:48 +0200 <kuribas> I am seeing a lot of downloads of my (264) of my hasqlator library, it isn't completely stable yet...
2021-06-10 14:55:00 +0200 <merijn> kuribas: Lots of bot downloads on hackage
2021-06-10 14:55:06 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 14:55:10 +0200 <kuribas> oh right
2021-06-10 14:55:26 +0200sekun(~sekun@180.190.152.231)
2021-06-10 14:55:48 +0200 <merijn> Even if you release a package today you'll see downloads steadily going up right away
2021-06-10 14:56:20 +0200 <kuribas> ok, so no world domination for my database library yet ;-)
2021-06-10 14:56:26 +0200 <sshine> kuribas, excellent package name
2021-06-10 14:56:37 +0200 <merijn> kuribas: I just have a bold "Warning: this will evolve, use PVP upperbounds or get rekt"
2021-06-10 14:56:54 +0200 <merijn> Except, you know, more politically correctly written :p
2021-06-10 14:57:42 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 14:58:06 +0200 <kuribas> yeah
2021-06-10 14:58:31 +0200 <kuribas> I could use 0.x.x for unstable, 1.x.x when it's more stable.
2021-06-10 14:58:41 +0200jumper149(~jumper149@80.240.31.34)
2021-06-10 14:59:40 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr)
2021-06-10 14:59:55 +0200 <kuribas> merijn: one of the reasons i haven't announced it yet on reddit etc..., because I am still change small things.
2021-06-10 15:00:14 +0200 <kuribas> however, it's already enjoyable to work with :)
2021-06-10 15:00:39 +0200 <kuribas> seeing an error when trying to use a wrong field with the wrong table, or the wrong return value.
2021-06-10 15:01:58 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 15:02:25 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 15:03:14 +0200Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-06-10 15:04:38 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Read error: Connection reset by peer)
2021-06-10 15:04:38 +0200oxide(~lambda@user/oxide) (Ping timeout: 268 seconds)
2021-06-10 15:04:39 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-10 15:04:56 +0200fendor_(~fendor@213142096031.public.telering.at)
2021-06-10 15:05:45 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-06-10 15:06:06 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 15:06:24 +0200azeem(~azeem@176.200.189.210) (Ping timeout: 252 seconds)
2021-06-10 15:06:29 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 268 seconds)
2021-06-10 15:06:36 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 15:06:38 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-06-10 15:06:46 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 15:07:17 +0200kw`(~user@152.1.137.158) (Remote host closed the connection)
2021-06-10 15:07:45 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-06-10 15:10:14 +0200 <jumper149> Hi, would it be considered safe to use `unsafeIOToSTM` to call something like `logInfoSH` from `Control.Monad.Logger` (monad-logger)?
2021-06-10 15:10:17 +0200Day1(~Android@pop.92-184-116-9.mobile.abo.orange.fr) (Read error: Connection reset by peer)
2021-06-10 15:11:54 +0200 <dminuoso> jumper149: fsvo of safe.
2021-06-10 15:12:06 +0200larkfisherman(~larkfishe@217.75.204.126) (Quit: Leaving)
2021-06-10 15:12:11 +0200 <dminuoso> jumper149: Keep in mind that STM can retry
2021-06-10 15:12:32 +0200 <dminuoso> Depending on the scenario, it could retry a lot..
2021-06-10 15:14:45 +0200 <dminuoso> (And in fact, if you didn't expect any retry, you'd just be using IO)
2021-06-10 15:15:30 +0200 <dminuoso> So if you dont mind that you might get (heavily) repeated calls into logInfoSH (possibly even draining resources, depending on what your monad logger is connected to...)
2021-06-10 15:16:26 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 15:17:11 +0200o1lo01ol_(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 15:17:32 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 15:17:46 +0200oxide(~lambda@user/oxide)
2021-06-10 15:18:13 +0200 <kritzefitz> The documentation of unsafeIOToSTM warns that IO on handles or other operations that need cleanup might leave behind inconsistent state when a transaction is aborted. This sounds like it could be a problem for logInfoSH.
2021-06-10 15:18:18 +0200shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-06-10 15:21:30 +0200 <dminuoso> Ah, thats annoying
2021-06-10 15:22:13 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 15:22:15 +0200 <jumper149> kritzefitz: Yeah, thats what I was mostly worried about.
2021-06-10 15:22:26 +0200 <jumper149> I guess I'll do the safe approach and do the logging just in IO.
2021-06-10 15:25:42 +0200 <kritzefitz> jumper149, I found writing `join $ atomically ...` useful. That way you can just return IO from your transaction and have it executed just after the transaction.
2021-06-10 15:26:05 +0200peterhil(~peterhil@mobile-access-bcee65-77.dhcp.inet.fi) (Ping timeout: 244 seconds)
2021-06-10 15:26:43 +0200 <kritzefitz> If your transaction is complex enough you could even use a writer monad to collect the IO along the way. But I digress.
2021-06-10 15:26:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 268 seconds)
2021-06-10 15:26:59 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-10 15:27:04 +0200 <jumper149> Yeah I was also thinking of that Writer approach
2021-06-10 15:27:14 +0200 <jumper149> or WriterT to be exact
2021-06-10 15:27:18 +0200HotblackDesiato_HotblackDesiato
2021-06-10 15:27:22 +0200ddellacosta(~ddellacos@86.106.121.47)
2021-06-10 15:28:03 +0200 <jumper149> I'm not sure how `join` would be better than just putting it afterwards in do-notation.
2021-06-10 15:29:14 +0200azeem(~azeem@176.200.245.34)
2021-06-10 15:30:11 +0200 <kritzefitz> It's mostly useful, if the IO you want to do depends heavily on the result of the transaction. For example you can do `join $ atomically (readTVar v >>= \case { A -> doSomething; B x -> doSomethingElse x; C a b c -> somethingElseEntirely a c })`
2021-06-10 15:30:19 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-10 15:32:28 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-10 15:35:41 +0200 <jumper149> kritzefitz: I can't wrap my head around it x)
2021-06-10 15:35:53 +0200 <jumper149> That case is still in STM
2021-06-10 15:36:29 +0200 <jumper149> ahhhhhh
2021-06-10 15:36:32 +0200 <jumper149> now I see it
2021-06-10 15:36:46 +0200wei2912(~wei2912@112.199.250.21) (Quit: Lost terminal)
2021-06-10 15:37:06 +0200 <jumper149> The argument of `atomically` would have type `STM (IO a)`
2021-06-10 15:37:15 +0200 <kritzefitz> Right
2021-06-10 15:37:33 +0200 <kritzefitz> And `join . atomically` turns it into `IO a`.
2021-06-10 15:38:12 +0200 <jumper149> @src join
2021-06-10 15:38:12 +0200 <lambdabot> join x = x >>= id
2021-06-10 15:38:27 +0200 <jumper149> Isnt that still the same as using do-notation?
2021-06-10 15:38:50 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 15:39:12 +0200cheater(~Username@user/cheater) (Remote host closed the connection)
2021-06-10 15:39:16 +0200 <kritzefitz> The same can be expressed in do-notation: `do { action <- atomically ...; action }`.
2021-06-10 15:40:34 +0200 <jumper149> What I mean is: do { x <- atomically (readTVar v); case x of ... }
2021-06-10 15:41:17 +0200 <jumper149> I don't see the difference to putting that lambda-case after atomically in your example
2021-06-10 15:41:23 +0200derelict(~winter@2603-6011-f901-9e5b-78b5-8b2f-cdb2-4171.res6.spectrum.com)
2021-06-10 15:41:28 +0200o1lo01ol_(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 15:41:29 +0200 <kritzefitz> Yes, my example was too simple.
2021-06-10 15:41:31 +0200azeem(~azeem@176.200.245.34) (Read error: Connection reset by peer)
2021-06-10 15:41:44 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-10 15:42:10 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 15:42:21 +0200 <kritzefitz> I'll paste a section from real code where I used this.
2021-06-10 15:42:23 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 15:42:38 +0200 <jumper149> Ok very cool :)
2021-06-10 15:43:22 +0200peterhil_(~peterhil@mobile-access-bcee65-77.dhcp.inet.fi)
2021-06-10 15:44:38 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se)
2021-06-10 15:44:59 +0200 <kritzefitz> jumper149, https://gitlab.com/Kritzefitz/reflex-gi-gtk/-/blob/next/src/Reflex/GI/Gtk/Run/Base.hs#L180 (Line 180).
2021-06-10 15:45:28 +0200larkfisherman(~larkfishe@217.75.204.126)
2021-06-10 15:45:54 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 245 seconds)
2021-06-10 15:46:44 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 15:46:49 +0200 <kritzefitz> There the resulting IO depends on the branching done by `orElse`. I can't do that after the transaction is finished.
2021-06-10 15:47:58 +0200fendor__(~fendor@212095005130.public.telering.at)
2021-06-10 15:48:07 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr)
2021-06-10 15:50:04 +0200benin03(~benin@183.82.206.186) (Ping timeout: 272 seconds)
2021-06-10 15:50:29 +0200fendor_(~fendor@213142096031.public.telering.at) (Ping timeout: 245 seconds)
2021-06-10 15:53:38 +0200boxscape(~boxscape@user/boxscape)
2021-06-10 15:54:04 +0200Katarushisu(~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Read error: Connection reset by peer)
2021-06-10 15:54:22 +0200Katarushisu(~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net)
2021-06-10 15:54:29 +0200Katarushisu(~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Client Quit)
2021-06-10 15:55:01 +0200 <jumper149> kritzefitz: That's some complicated piece of code ^^
2021-06-10 15:55:15 +0200Katarushisu(~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net)
2021-06-10 15:56:43 +0200sayola(~vekto@dslc-082-082-145-205.pools.arcor-ip.net)
2021-06-10 15:57:34 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 245 seconds)
2021-06-10 15:57:42 +0200 <jumper149> But I can see what you mean with the branching.
2021-06-10 15:57:52 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 15:59:11 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Quit: Leaving)
2021-06-10 15:59:24 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-10 15:59:38 +0200o1lo01ol_(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com)
2021-06-10 16:00:23 +0200pgib(~textual@173.38.117.92) (Ping timeout: 244 seconds)
2021-06-10 16:00:43 +0200 <kritzefitz> Yeah, that section is one of those places where FFI and concurrency bonded together to form the most complex code ever seen.
2021-06-10 16:01:03 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Read error: Connection reset by peer)
2021-06-10 16:01:12 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295)
2021-06-10 16:01:36 +0200jorjor(~jorgemene@85.251.190.6.dyn.user.ono.com)
2021-06-10 16:01:54 +0200fluffyballoon(~fluffybal@2620:72:0:6480::10f7)
2021-06-10 16:02:03 +0200 <kritzefitz> But the point is, with `x <- atomically ...; foo x` you have to decide before the transaction what `foo` will be. When you construct the `IO` in the transaction, you can push that decision to the very end of the transaction and still have all variables from the transaction at scope.
2021-06-10 16:02:08 +0200 <kritzefitz> *in scope
2021-06-10 16:02:24 +0200hendursa1(~weechat@user/hendursaga) (Quit: hendursa1)
2021-06-10 16:02:25 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 16:02:30 +0200 <jumper149> That puts it very nicely.
2021-06-10 16:02:45 +0200hendursaga(~weechat@user/hendursaga)
2021-06-10 16:05:03 +0200Torro(Torro@gateway/vpn/protonvpn/torro) (Quit: leaving)
2021-06-10 16:05:51 +0200lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-06-10 16:06:44 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 16:07:29 +0200Sgeo(~Sgeo@user/sgeo)
2021-06-10 16:08:33 +0200mpt(~tom@2a02:908:1862:49e0::5)
2021-06-10 16:08:49 +0200 <ddellacosta> is DerivingStrategies enabled by default when you use DerivingVia? I was going through this https://www.youtube.com/watch?v=UZaQuSIrO6s and I simply didn't need to include DerivingStrategies to be able to e.g. denote stock deriving or whatnot, so wondering why that is. I don't see it documented here https://downloads.haskell.org/~ghc/9.0.1/docs/html/users_guide/exts/deriving_via.html#deriving-via, although maybe I missed it
2021-06-10 16:09:07 +0200jneira(~jneira@166.red-81-39-172.dynamicip.rima-tde.net)
2021-06-10 16:10:08 +0200 <ddellacosta> or maybe the Implies thing at the top is telling me that? I wasn't sure
2021-06-10 16:10:14 +0200 <dminuoso> ddellacosta: Itr says right there. Yes.
2021-06-10 16:10:56 +0200 <ddellacosta> ah okay, so in general if I see "Implies" in the docs there, I can assume I don't need to explicitly import those extensions to use the extension I'm looking at?
2021-06-10 16:11:08 +0200peterhil_(~peterhil@mobile-access-bcee65-77.dhcp.inet.fi) (Ping timeout: 264 seconds)
2021-06-10 16:11:10 +0200 <jumper149> ddellacosta: I would say yes.
2021-06-10 16:11:17 +0200 <jumper149> GHC manual is very nice
2021-06-10 16:11:22 +0200 <ddellacosta> okay, thanks folks
2021-06-10 16:11:53 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-10 16:12:48 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-10 16:13:12 +0200nsilv(~nsilv@212.103.198.210)
2021-06-10 16:13:22 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 16:14:06 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com)
2021-06-10 16:14:20 +0200jumper149(~jumper149@80.240.31.34) (Quit: WeeChat 3.1)
2021-06-10 16:16:07 +0200fendor__(~fendor@212095005130.public.telering.at) (Remote host closed the connection)
2021-06-10 16:17:08 +0200fendor_(~fendor@212095005130.public.telering.at)
2021-06-10 16:17:24 +0200fendor__(~fendor@212095005130.public.telering.at)
2021-06-10 16:18:04 +0200fendor__(~fendor@212095005130.public.telering.at) (Client Quit)
2021-06-10 16:20:04 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Ping timeout: 245 seconds)
2021-06-10 16:20:04 +0200o1lo01ol_(~o1lo01ol1@cpe-74-65-193-238.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 16:20:46 +0200azeem(~azeem@176.201.14.251)
2021-06-10 16:21:40 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Remote host closed the connection)
2021-06-10 16:22:14 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-10 16:22:38 +0200xkuru(~xkuru@user/xkuru)
2021-06-10 16:23:44 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 16:25:25 +0200azeem(~azeem@176.201.14.251) (Ping timeout: 268 seconds)
2021-06-10 16:26:22 +0200azeem(~azeem@176.201.37.85)
2021-06-10 16:26:39 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds)
2021-06-10 16:26:44 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Ping timeout: 264 seconds)
2021-06-10 16:26:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 16:28:55 +0200oniko
2021-06-10 16:30:20 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com) (Remote host closed the connection)
2021-06-10 16:30:25 +0200zebrag(~chris@user/zebrag)
2021-06-10 16:30:58 +0200fendor__(~fendor@77.119.128.226.wireless.dyn.drei.com)
2021-06-10 16:31:09 +0200geekosaur(~geekosaur@069-135-003-034.biz.spectrum.com)
2021-06-10 16:31:19 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Ping timeout: 245 seconds)
2021-06-10 16:31:44 +0200aerona(~aerona@2600:6c54:4600:f300:f3ed:d9b8:4e4c:a83a)
2021-06-10 16:32:14 +0200Deide(~Deide@wire.desu.ga)
2021-06-10 16:32:14 +0200Deide(~Deide@wire.desu.ga) (Changing host)
2021-06-10 16:32:14 +0200Deide(~Deide@user/deide)
2021-06-10 16:33:18 +0200fendor_(~fendor@212095005130.public.telering.at) (Ping timeout: 252 seconds)
2021-06-10 16:37:29 +0200sh9(~sh9@softbank060116136158.bbtec.net) (Quit: WeeChat 3.0.1)
2021-06-10 16:39:14 +0200malvo(~malvo@malvo.org) (Ping timeout: 245 seconds)
2021-06-10 16:39:48 +0200cheater(~Username@user/cheater)
2021-06-10 16:42:43 +0200malvo(~malvo@malvo.org)
2021-06-10 16:44:38 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 16:46:36 +0200Day1(~Android@pop.92-184-116-0.mobile.abo.orange.fr)
2021-06-10 16:46:44 +0200Day1(~Android@pop.92-184-116-0.mobile.abo.orange.fr) (Read error: Connection reset by peer)
2021-06-10 16:49:36 +0200mpt(~tom@2a02:908:1862:49e0::5) (Ping timeout: 272 seconds)
2021-06-10 16:52:56 +0200slowButPresent(~slowButPr@user/slowbutpresent)
2021-06-10 16:53:24 +0200malvo(~malvo@malvo.org) (Ping timeout: 244 seconds)
2021-06-10 16:54:30 +0200malvo(~malvo@malvo.org)
2021-06-10 16:55:29 +0200azeem(~azeem@176.201.37.85) (Ping timeout: 245 seconds)
2021-06-10 16:55:59 +0200azeem(~azeem@176.201.16.194)
2021-06-10 16:56:03 +0200ddellacosta(~ddellacos@86.106.121.47) (Read error: Connection reset by peer)
2021-06-10 16:56:09 +0200ddellaco_(~ddellacos@86.106.121.47)
2021-06-10 16:59:30 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 17:00:15 +0200cheater(~Username@user/cheater) (Ping timeout: 252 seconds)
2021-06-10 17:00:35 +0200cheater(~Username@user/cheater)
2021-06-10 17:01:52 +0200dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.1)
2021-06-10 17:02:11 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 244 seconds)
2021-06-10 17:02:44 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 17:03:44 +0200econo(uid147250@user/econo)
2021-06-10 17:04:29 +0200cfricke(~cfricke@user/cfricke)
2021-06-10 17:04:53 +0200delYsid(~user@84-115-55-45.cable.dynamic.surfer.at)
2021-06-10 17:06:15 +0200 <delYsid> Why, oh why, is Tree not Hashable...
2021-06-10 17:06:30 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 17:07:11 +0200derelict(~winter@2603-6011-f901-9e5b-78b5-8b2f-cdb2-4171.res6.spectrum.com) (Changing host)
2021-06-10 17:07:11 +0200derelict(~winter@user/derelict)
2021-06-10 17:07:51 +0200azeem(~azeem@176.201.16.194) (Read error: Connection reset by peer)
2021-06-10 17:08:32 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-10 17:08:38 +0200cfricke(~cfricke@user/cfricke) (Client Quit)
2021-06-10 17:09:27 +0200 <boxscape> delYsid can't you add an instance?
2021-06-10 17:09:37 +0200xff0x_(~xff0x@2001:1a81:5309:4200:6690:d1a3:e3e9:8847) (Ping timeout: 244 seconds)
2021-06-10 17:10:42 +0200xff0x_(~xff0x@2001:1a81:5309:4200:5885:4f5d:c0ef:4e6d)
2021-06-10 17:10:52 +0200derelict(~winter@user/derelict) (Quit: WeeChat 3.1)
2021-06-10 17:10:54 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 245 seconds)
2021-06-10 17:11:11 +0200derelict(~derelict@user/derelict)
2021-06-10 17:11:51 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 17:11:55 +0200kw(~user@152.1.137.158)
2021-06-10 17:12:37 +0200 <kw> Is there an accepted way to serialize `TypeRep` ?
2021-06-10 17:14:35 +0200 <kw> Like, say I have a `Map TypeRep Cast` where `data Cast = forall a. Typable a => Cast a` and I want to write it to disk...
2021-06-10 17:15:02 +0200 <sclv> I don't think there's a great way to do that, last I remember
2021-06-10 17:15:15 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr)
2021-06-10 17:15:23 +0200 <sclv> One could call typeRepFingerprint, and those fingerprints are serializable, and have eq and ord on them
2021-06-10 17:15:32 +0200mastarija(~mastarija@31.217.22.43)
2021-06-10 17:16:10 +0200 <sclv> So if having a map from Fingerprint to Cast is acceptable, you're done :-)
2021-06-10 17:16:32 +0200 <kw> sclv: Nice, that's perfect! Thanks!
2021-06-10 17:16:42 +0200 <mastarija> How does one exit an infinite loop in GHCi on Windows? This is something that's been always annoying me but I was too lazy to deal with properly.
2021-06-10 17:16:58 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-10 17:17:12 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 17:17:16 +0200 <mastarija> I tried Ctrl+C, but that exits GHCi, yet the infinite loop still runs in the background (sometimes...)
2021-06-10 17:18:16 +0200 <sclv> uh... maybe https://gitlab.haskell.org/ghc/ghc/-/issues/14150 ??
2021-06-10 17:19:45 +0200 <mastarija> oh god..
2021-06-10 17:19:59 +0200 <tomsmeding> delYsid: Tree from where? Data.Tree from containers? Presumably because that would add a dependency on the 'hashable' package in the boot library 'containers' and the ghc developers don't want to add another boot library if not really necessary
2021-06-10 17:20:39 +0200 <[exa]> mastarija: windows problems may require windows solutions
2021-06-10 17:21:10 +0200 <mastarija> [exa], I thought maybe windows uses some other keybinding
2021-06-10 17:21:11 +0200 <tomsmeding> though I guess hashable could give the instance, though that would add a 'containers' dependency to hashable; but that's less bad because containers is a boot library
2021-06-10 17:22:22 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-10 17:22:51 +0200 <[exa]> mastarija: afaik console stuff is not documented at all on windows, I guess we're lucky that it at least sends *some* signal
2021-06-10 17:23:48 +0200 <mastarija> [exa], you mean console api / behaviour on windows? I remember it being pretty well documented few years back when I had to do some console stuff.
2021-06-10 17:23:56 +0200larkfisherman(~larkfishe@217.75.204.126) (Remote host closed the connection)
2021-06-10 17:24:39 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:b9f7:1919:7684:9913) (Quit: WeeChat 2.8)
2021-06-10 17:24:58 +0200 <[exa]> mastarija: ok if there's docs I'm surprised
2021-06-10 17:25:09 +0200 <[exa]> doesn't it mention some other keybinding?
2021-06-10 17:25:53 +0200 <mastarija> nope, I just assumed Ctrl+C just kills the host process on windows, so maybe GHCi used some other combo on windows
2021-06-10 17:26:56 +0200 <sclv> mastarija: are you running it via stack or something else or directly?
2021-06-10 17:28:08 +0200 <mastarija> I've noticed that comment at the end, I'm trying now to run just GHCi, I ran it as cabal repl --dependencies "lalala..."
2021-06-10 17:28:27 +0200 <mastarija> Maybe if I run it from Cabal it doesn't work
2021-06-10 17:28:47 +0200wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-06-10 17:29:32 +0200sayola(~vekto@dslc-082-082-145-205.pools.arcor-ip.net) (Quit: Leaving.)
2021-06-10 17:30:11 +0200 <sclv> mastarija: interesting. if you can reproduce that issue with cabal repl on windows, its worth filing a cabal ticket...
2021-06-10 17:30:22 +0200 <mastarija> hm... but now I can't load my libraries I require for my script, I did `cabal install --lib random transformers`, but when I start GHCi it says it can't find System.Random
2021-06-10 17:30:31 +0200 <mastarija> sclv, Not sure it's cabal, I have to check first
2021-06-10 17:30:46 +0200agumonke`(~user@88.160.31.174) (Ping timeout: 272 seconds)
2021-06-10 17:30:49 +0200sayola(~vekto@dslc-082-082-145-205.pools.arcor-ip.net)
2021-06-10 17:30:57 +0200 <sclv> you'll have to use v1-install, which places it in the global package store
2021-06-10 17:31:11 +0200 <mastarija> I thought when doing cabal install --lib, my lib get's added to ghc environment, and that is read by GHCi
2021-06-10 17:31:24 +0200 <sclv> oh good point, that _should_ suffice too, weird
2021-06-10 17:31:52 +0200 <sclv> i guess it depends where it puts the package env file when you do that -- gah those commands really don't have quite enough polish and chrome :-/
2021-06-10 17:32:11 +0200 <mastarija> hm...
2021-06-10 17:32:19 +0200 <mastarija> damn, another problem to solve
2021-06-10 17:32:55 +0200 <monochrom> I have had great success with --lib. All default settings. But on linux.
2021-06-10 17:33:02 +0200 <mastarija> yes, I've deleted the default env and watched it regenerate with my own two eyes
2021-06-10 17:33:08 +0200 <mastarija> but GHCi is playing dumb
2021-06-10 17:33:30 +0200bontaq(~user@ool-18e47f8d.dyn.optonline.net)
2021-06-10 17:33:35 +0200 <monochrom> which GHC version?
2021-06-10 17:34:02 +0200 <mastarija> 8.8.4
2021-06-10 17:34:09 +0200 <monochrom> New enough.
2021-06-10 17:35:30 +0200nan`(~nan`@rrcs-70-60-83-42.central.biz.rr.com) (Quit: Bye, all!)
2021-06-10 17:38:52 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 17:40:13 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr)
2021-06-10 17:41:19 +0200wonko(~wjc@62.115.229.50) (Ping timeout: 245 seconds)
2021-06-10 17:41:19 +0200Day1(~Android@2a01cb06a02f03df0000005a611ae401.ipv6.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 17:41:31 +0200Baloo_(~Baloo_@h-98-128-172-214.A785.priv.bahnhof.se)
2021-06-10 17:41:41 +0200Baloo_(~Baloo_@h-98-128-172-214.A785.priv.bahnhof.se) (Remote host closed the connection)
2021-06-10 17:42:16 +0200Baloo_(~Baloo_@193.138.218.166)
2021-06-10 17:42:20 +0200lbseale(~lbseale@user/ep1ctetus)
2021-06-10 17:42:30 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-10 17:45:04 +0200ddellaco_(~ddellacos@86.106.121.47) (Read error: Connection reset by peer)
2021-06-10 17:45:08 +0200dut(~dut@user/dut) (Read error: Connection reset by peer)
2021-06-10 17:45:14 +0200ddellacosta(~ddellacos@86.106.121.47)
2021-06-10 17:46:53 +0200chele(~chele@user/chele) (Remote host closed the connection)
2021-06-10 17:47:59 +0200Day1(~Android@pop.92-184-116-63.mobile.abo.orange.fr)
2021-06-10 17:50:51 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1)
2021-06-10 17:51:15 +0200danso(~danso@modemcable156.91-20-96.mc.videotron.ca)
2021-06-10 17:52:01 +0200Day1_(~Android@lfbn-str-1-401-42.w90-126.abo.wanadoo.fr)
2021-06-10 17:54:06 +0200Tuplanolla(~Tuplanoll@91-159-68-239.elisa-laajakaista.fi)
2021-06-10 17:54:38 +0200wallymathieu(~wallymath@81-234-151-21-no94.tbcn.telia.com) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-10 17:54:42 +0200 <geekosaur> iirc there's an environment variable that tells ghc(i) to ignore environment files
2021-06-10 17:54:56 +0200Day1(~Android@pop.92-184-116-63.mobile.abo.orange.fr) (Ping timeout: 264 seconds)
2021-06-10 17:55:19 +0200Day1_(~Android@lfbn-str-1-401-42.w90-126.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 17:55:55 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 244 seconds)
2021-06-10 17:56:56 +0200wonko(~wjc@62.115.229.50)
2021-06-10 17:57:28 +0200dut(~dut@user/dut)
2021-06-10 17:57:45 +0200Day1(~Android@lfbn-str-1-401-42.w90-126.abo.wanadoo.fr)
2021-06-10 18:00:19 +0200nsilv(~nsilv@212.103.198.210) (Quit: WeeChat 3.0.1)
2021-06-10 18:01:37 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 268 seconds)
2021-06-10 18:01:55 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 18:03:18 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 18:05:17 +0200hololeap(hololeap@user/hololeap)
2021-06-10 18:06:20 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-10 18:07:23 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:1900:b2bf:db54:db6b)
2021-06-10 18:08:00 +0200pe200012(~pe200012@120.236.162.10) (Ping timeout: 244 seconds)
2021-06-10 18:09:02 +0200ubert(~Thunderbi@2a02:8109:9880:303c:ca5b:76ff:fe29:f233) (Remote host closed the connection)
2021-06-10 18:11:21 +0200 <dminuoso> [__2] rejecting: freyja-client-0.4.0.0 (conflict: base==4.12.0.0/installed-4.12.0.0, freyja-client => base>=4.13 && <5)
2021-06-10 18:11:45 +0200 <dminuoso> What is the meaning of the `/installed-4.12.0.0` suffix of `4.12.0.0/installed-4.12.0.0`?
2021-06-10 18:12:26 +0200 <dminuoso> Is that an actually valid constraint? Or just something cabal pretty prints based on how it derives the base==4.12.0.0 constraint?
2021-06-10 18:12:43 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 268 seconds)
2021-06-10 18:13:25 +0200Guest18(~Guest18@103.77.136.56)
2021-06-10 18:13:51 +0200 <dminuoso> Because cabal rejects it if I specify `base==4.13.0.0/installed-4.13.0.0`
2021-06-10 18:14:07 +0200 <wz1000> dminuoso: base cannot be reinstalled, it ships with your compiler
2021-06-10 18:14:17 +0200 <dminuoso> wz1000: Sure, that's not what Im wondering about.
2021-06-10 18:14:31 +0200 <wz1000> the installed suffix indicates this
2021-06-10 18:14:37 +0200 <dminuoso> Im just trying to understand the exact verbatim output.
2021-06-10 18:15:01 +0200MQ-17J(~MQ-17J@8.21.10.116)
2021-06-10 18:16:41 +0200Guest18(~Guest18@103.77.136.56) (Quit: Client closed)
2021-06-10 18:17:38 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 272 seconds)
2021-06-10 18:18:39 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-10 18:19:10 +0200chomwitt(~Pitsikoko@2a02:587:dc02:b00:98b0:cd42:bd6f:8295) (Ping timeout: 244 seconds)
2021-06-10 18:19:28 +0200ddellaco_(~ddellacos@86.106.121.20)
2021-06-10 18:19:37 +0200mc47(~mc47@xmonad/TheMC47)
2021-06-10 18:20:44 +0200ddellacosta(~ddellacos@86.106.121.47) (Ping timeout: 264 seconds)
2021-06-10 18:22:59 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-72-187-2.nyc.res.rr.com)
2021-06-10 18:22:59 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-10 18:23:12 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi) (Ping timeout: 268 seconds)
2021-06-10 18:23:15 +0200o1lo01ol1o(~o1lo01ol1@cpe-74-72-187-2.nyc.res.rr.com) (Remote host closed the connection)
2021-06-10 18:24:20 +0200ddellaco_(~ddellacos@86.106.121.20) (Ping timeout: 264 seconds)
2021-06-10 18:25:17 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 18:25:20 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-10 18:27:24 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-10 18:28:01 +0200Day1(~Android@lfbn-str-1-401-42.w90-126.abo.wanadoo.fr) (Read error: Connection reset by peer)
2021-06-10 18:30:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 18:31:10 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 18:31:28 +0200codoliodolio
2021-06-10 18:32:00 +0200Bartosz(~textual@24.35.90.211)
2021-06-10 18:32:47 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 18:34:06 +0200boxscape(~boxscape@user/boxscape) (Ping timeout: 272 seconds)
2021-06-10 18:34:18 +0200mastarija(~mastarija@31.217.22.43) (Ping timeout: 268 seconds)
2021-06-10 18:35:28 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 18:38:21 +0200Day1(~Android@2a01:cb10:65:ae00:cdb0:cf48:9a12:9b62)
2021-06-10 18:38:25 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net)
2021-06-10 18:39:52 +0200Day1(~Android@2a01:cb10:65:ae00:cdb0:cf48:9a12:9b62) (Client Quit)
2021-06-10 18:40:33 +0200 <dminuoso> Mmm, judging from the cabal code, it seems it's just the pretty printer
2021-06-10 18:41:32 +0200 <dminuoso> showI (I v (Inst uid)) = showVer v ++ "/installed" ++ extractPackageAbiHash uid
2021-06-10 18:42:26 +0200siraben(~siraben@user/siraben) (Quit: Reconnecting)
2021-06-10 18:45:42 +0200peterhil(~peterhil@dsl-hkibng32-54f849-252.dhcp.inet.fi)
2021-06-10 18:47:47 +0200 <dminuoso> $ ghc-pkg describe base|grep id #=> id: base-4.13.0.0
2021-06-10 18:48:08 +0200 <dminuoso> Here we go, and that id string at the end is where the version number after `installed` comes from.
2021-06-10 18:48:14 +0200 <dminuoso> Bah, this is quite odd and confusing.
2021-06-10 18:48:18 +0200koishi_(~koishi_@160.16.113.140)
2021-06-10 18:54:10 +0200Bartosz(~textual@24.35.90.211) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-06-10 18:55:04 +0200ubert(~Thunderbi@p200300ecdf259d4bf8eef0820066d39d.dip0.t-ipconnect.de)
2021-06-10 18:57:05 +0200ubert(~Thunderbi@p200300ecdf259d4bf8eef0820066d39d.dip0.t-ipconnect.de) (Client Quit)
2021-06-10 18:57:22 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-06-10 18:57:56 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-10 18:57:58 +0200gzj(~GZJ0X@199.193.127.217.16clouds.com)
2021-06-10 18:58:23 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 18:58:52 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 19:02:22 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr)
2021-06-10 19:03:31 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 19:04:07 +0200jorjor(~jorgemene@85.251.190.6.dyn.user.ono.com) (Ping timeout: 244 seconds)
2021-06-10 19:04:32 +0200siraben`(~user@103.206.205.210)
2021-06-10 19:04:35 +0200siraben`(~user@103.206.205.210) (Remote host closed the connection)
2021-06-10 19:08:57 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 252 seconds)
2021-06-10 19:09:00 +0200Erutuon(~Erutuon@user/erutuon)
2021-06-10 19:09:35 +0200MQ-17J(~MQ-17J@8.21.10.116) (Ping timeout: 252 seconds)
2021-06-10 19:09:37 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 265 seconds)
2021-06-10 19:11:47 +0200alx741(~alx741@181.196.69.18) (Ping timeout: 252 seconds)
2021-06-10 19:12:05 +0200reumeth(~reumeth@user/reumeth)
2021-06-10 19:12:05 +0200 <tomsmeding> dminuoso: um, so what's the difference with the normal version number? :P
2021-06-10 19:12:49 +0200mastarija(~mastarija@31.217.22.43)
2021-06-10 19:13:46 +0200derelict(~derelict@user/derelict) (Ping timeout: 268 seconds)
2021-06-10 19:14:38 +0200 <dminuoso> tomsmeding: From the looks of it, it's probably an overlooked bug.
2021-06-10 19:14:45 +0200 <dminuoso> The code is supposed to extract the abi hash from the package
2021-06-10 19:14:57 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-06-10 19:15:26 +0200derelict(~derelict@user/derelict)
2021-06-10 19:15:50 +0200 <dminuoso> So say you had `wai-logger-2.3.6-2a8c55efa43c9b01a0a3b38bdaadb02395a01172c27fddc88dd059cf00e1627c` installed
2021-06-10 19:15:53 +0200 <dminuoso> then this would report:
2021-06-10 19:16:11 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 19:16:33 +0200 <dminuoso> (conflict: wai-logger==2.3.6/installed-2a8c55efa43c9b01a0a3b38bdaadb02395a01172c27fddc88dd059cf00e1627c, freyja-client => wai-logger>=2.4)
2021-06-10 19:16:46 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-10 19:17:25 +0200 <dminuoso> It's interesting that I understand the meaning of == and => now. == means it's a fixed dependency, and => means the right hand is a constraint induced by the left thing
2021-06-10 19:18:52 +0200crazazy(~user@130.89.171.203)
2021-06-10 19:19:12 +0200kuribas(~user@ptr-25vy0i6v9tbds0gjkm6.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2021-06-10 19:19:27 +0200slack1256(~slack1256@181.203.23.128)
2021-06-10 19:20:12 +0200 <dminuoso> I just dont understand in what codepath that would ever trigger
2021-06-10 19:20:38 +0200 <tomsmeding> Interesting!
2021-06-10 19:22:32 +0200 <zzz> hi. i am creating a tree of all possible moves in a game (think tic tac toe). can anyone give me some advice on how to make my code concurrent or parallel, or help me find exaclty what can i do?
2021-06-10 19:22:34 +0200malvo(~malvo@malvo.org) (Ping timeout: 245 seconds)
2021-06-10 19:23:44 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net) (Ping timeout: 264 seconds)
2021-06-10 19:24:19 +0200mc47(~mc47@xmonad/TheMC47) (Quit: Leaving)
2021-06-10 19:24:36 +0200hnOsmium0001(uid453710@id-453710.stonehaven.irccloud.com)
2021-06-10 19:24:44 +0200alx741(~alx741@186.178.108.59)
2021-06-10 19:24:46 +0200boxscape(~boxscape@user/boxscape)
2021-06-10 19:25:06 +0200 <dminuoso> zzz: hiya, probably.
2021-06-10 19:26:09 +0200 <dminuoso> zzz: Have you decided on a particular algorithm? Maybe alpha beta pruning?
2021-06-10 19:26:47 +0200spatchkaa_spatchkaa
2021-06-10 19:26:50 +0200 <dminuoso> The key here is whether you even have an search algorithm that you parallelize or not.
2021-06-10 19:27:22 +0200 <boxscape> tomsmeding have you considered loading up the last page instead of the first page when visiting https://ircbrowse.tomsmeding.com/browse/lchaskell ? Seems like that would be quite a bit more useful (and save me a click everytime I go there :)
2021-06-10 19:27:33 +0200malvo(~malvo@malvo.org)
2021-06-10 19:27:44 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Ping timeout: 252 seconds)
2021-06-10 19:27:44 +0200spatchkaa(~spatchkaa@S010600fc8da47b63.gv.shawcable.net) (Quit: Leaving)
2021-06-10 19:28:06 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 19:28:21 +0200tomsmedingnotes boxscape's suggestion on the list
2021-06-10 19:28:26 +0200 <boxscape> thanks :)
2021-06-10 19:28:31 +0200 <dminuoso> tomsmeding: actually strike what I said about abi hashes, I dont quite understand when, but apparently under some circumstances, a package identifier can be `other-package-AbCdEfGhIj0123456789`
2021-06-10 19:28:42 +0200tomsmedingdoes the same every time so I wager it will save everyone a click
2021-06-10 19:28:49 +0200 <dminuoso> And https://github.com/haskell/cabal/issues/5892 suggests the above was quite intentional
2021-06-10 19:29:18 +0200 <tomsmeding> dminuoso: perhaps the disappearance of a hash happens for boot libraries only?
2021-06-10 19:29:20 +0200azeem(~azeem@176.200.250.80)
2021-06-10 19:30:05 +0200xkuru(~xkuru@user/xkuru) (Remote host closed the connection)
2021-06-10 19:30:15 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-10 19:30:23 +0200xkuru(~xkuru@user/xkuru)
2021-06-10 19:31:02 +0200 <dminuoso> tomsmeding: Not quite sure, boot libraries have abi hashes too.
2021-06-10 19:31:45 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 19:31:50 +0200 <dminuoso> What I am sure about, is that this must be installed packages.
2021-06-10 19:31:58 +0200 <dminuoso> Perhaps this is about packages installed inside the v2- store?
2021-06-10 19:32:03 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 252 seconds)
2021-06-10 19:34:37 +0200myShoggoth(~myShoggot@97-120-89-117.ptld.qwest.net)
2021-06-10 19:35:13 +0200xkuru(~xkuru@user/xkuru) (Remote host closed the connection)
2021-06-10 19:35:55 +0200azeem(~azeem@176.200.250.80) (Read error: Connection reset by peer)
2021-06-10 19:37:27 +0200octeep(~octeep@n219077212239.netvigator.com)
2021-06-10 19:38:54 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-10 19:39:09 +0200Crypt9a2e(~Crypt9a2e@157.51.21.223)
2021-06-10 19:40:36 +0200neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 272 seconds)
2021-06-10 19:45:02 +0200 <zzz> dminuoso: no, for now i am pretty much just bruteforcing all possible moves. i have one or two heuristics but that's it. the game is similar in every way to tic tac toe except you have 3 ranks of pieces. each player has 2 pieces of each rank for a total of 6. you can play higher rank pieces over lower rank ones. once a piece is placed, it can never be moved. i mainly want to explore optimal strategies
2021-06-10 19:45:14 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 19:46:13 +0200nattiestnate(~nate@36.70.194.182)
2021-06-10 19:46:24 +0200 <dminuoso> zzz: Presumably the goal is to explore parallel programming in Haskell then?
2021-06-10 19:46:52 +0200 <dminuoso> @where pacp
2021-06-10 19:46:52 +0200 <lambdabot> I know nothing about pacp.
2021-06-10 19:46:54 +0200 <dminuoso> @where PACP
2021-06-10 19:46:54 +0200 <lambdabot> I know nothing about pacp.
2021-06-10 19:47:34 +0200 <dminuoso> @where PCPH
2021-06-10 19:47:35 +0200 <lambdabot> "Parallel and Concurrent Programming in Haskell" by Simon Marlow in 2013 at <http://community.haskell.org/~simonmar/pcph/>,<http://chimera.labs.oreilly.com/books/1230000000929/>,<https://web.archive.
2021-06-10 19:47:35 +0200 <lambdabot> org/web/20180117194842/http://chimera.labs.oreilly.com/books/1230000000929>,<https://www.oreilly.com/library/view/parallel-and-concurrent/9781449335939/>
2021-06-10 19:47:53 +0200 <dminuoso> This is the definite book to grab and read.
2021-06-10 19:48:06 +0200 <dminuoso> A pdf is available on the web.archive.org link ^-
2021-06-10 19:48:41 +0200tremon(~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl)
2021-06-10 19:49:02 +0200 <zzz> thanks that's great
2021-06-10 19:49:21 +0200 <DigitalKiwi> free as in piracy
2021-06-10 19:49:42 +0200 <dminuoso> DigitalKiwi: It was up on oreilly.com directly.
2021-06-10 19:49:54 +0200 <dminuoso> I don't consider it piracy if the publisher itself provides open access to a book.
2021-06-10 19:50:00 +0200mmaruseacph2(~mihai@198.199.100.72) (Quit: The past is dead and buried.)
2021-06-10 19:50:12 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 19:50:19 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-10 19:50:51 +0200mmaruseacph2(~mihai@198.199.100.72)
2021-06-10 19:51:38 +0200 <DigitalKiwi> https://www.youtube.com/watch?v=GVXCr6upWUo
2021-06-10 19:52:07 +0200 <dminuoso> zzz: As for a parallel compatible algorithm you might want to start with principle variation splitting or YBWC. PVS is probably by far easiest to implement.
2021-06-10 19:52:12 +0200 <DigitalKiwi> doc.lagout.org
2021-06-10 19:52:15 +0200leif(~leif@75.164.44.108)
2021-06-10 19:52:20 +0200 <DigitalKiwi> yw
2021-06-10 19:52:28 +0200leifpdxleif
2021-06-10 19:53:08 +0200sekun(~sekun@180.190.152.231) (Ping timeout: 264 seconds)
2021-06-10 19:56:13 +0200motherfs1(~motherfsc@user/motherfsck)
2021-06-10 19:56:27 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-10 19:59:19 +0200 <zzz> dminuoso: i have no idea what that means but ill be looking into it
2021-06-10 19:59:24 +0200motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 268 seconds)
2021-06-10 20:00:17 +0200 <dminuoso> zzz: https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.47.1116&rep=rep1&type=pdf
2021-06-10 20:06:11 +0200motherfs1(~motherfsc@user/motherfsck) (Ping timeout: 268 seconds)
2021-06-10 20:07:19 +0200 <zzz> i see
2021-06-10 20:07:49 +0200lavaman(~lavaman@98.38.249.169)
2021-06-10 20:12:19 +0200lavaman(~lavaman@98.38.249.169) (Ping timeout: 244 seconds)
2021-06-10 20:16:07 +0200bitmapper(uid464869@id-464869.tooting.irccloud.com)
2021-06-10 20:16:11 +0200arkeet(arkeet@moriya.ca)
2021-06-10 20:16:23 +0200justsomeguy(~justsomeg@user/justsomeguy)
2021-06-10 20:17:06 +0200gzj(~GZJ0X@199.193.127.217.16clouds.com) (Remote host closed the connection)
2021-06-10 20:17:25 +0200gzj(~GZJ0X@199.193.127.217.16clouds.com)
2021-06-10 20:18:37 +0200motherfs1(~motherfsc@user/motherfsck)
2021-06-10 20:21:28 +0200 <zzz> "Note that actual parallelism is only supported by certain implementations (GHC with the -threaded option, and GPH, for now). On other implementations, par a b = b.
2021-06-10 20:21:40 +0200 <zzz> ^is this still true?
2021-06-10 20:22:04 +0200koishi_(~koishi_@160.16.113.140) (Quit: /ragequit)
2021-06-10 20:22:51 +0200v01d4lph4(~v01d4lph4@122.160.65.250)
2021-06-10 20:22:51 +0200v01d4lph4(~v01d4lph4@122.160.65.250) (Changing host)
2021-06-10 20:22:51 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4)
2021-06-10 20:22:56 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 20:23:00 +0200 <tomsmeding> zzz: which other implementations do you want to know about?
2021-06-10 20:23:05 +0200gzj(~GZJ0X@199.193.127.217.16clouds.com) (Remote host closed the connection)
2021-06-10 20:23:23 +0200gzj(~GZJ0X@199.193.127.217.16clouds.com)
2021-06-10 20:23:48 +0200 <zzz> oh, i just want to know if i still need the ghc -threaded option
2021-06-10 20:24:13 +0200 <tomsmeding> Ah, you do
2021-06-10 20:24:20 +0200 <zzz> thank you
2021-06-10 20:24:29 +0200 <tomsmeding> There's usually little reason to not pass that flag, I believe
2021-06-10 20:24:47 +0200fvr(uid503686@id-503686.highgate.irccloud.com)
2021-06-10 20:27:09 +0200v01d4lph4(~v01d4lph4@user/v01d4lph4) (Ping timeout: 245 seconds)
2021-06-10 20:27:26 +0200nattiestnate(~nate@36.70.194.182) (Quit: WeeChat 3.1)
2021-06-10 20:27:46 +0200nattiestnate(~nate@36.70.194.182)
2021-06-10 20:27:56 +0200yin[m](~zwromatri@2001:470:69fc:105::1d4)
2021-06-10 20:29:48 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 20:30:11 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 20:30:47 +0200nattiestnate(~nate@36.70.194.182) (Client Quit)
2021-06-10 20:32:26 +0200nattiestnate(~nate@36.70.194.182)
2021-06-10 20:32:31 +0200nattiestnate(~nate@36.70.194.182) (Client Quit)
2021-06-10 20:32:57 +0200nattiestnate(~nate@36.70.194.182)
2021-06-10 20:33:48 +0200 <zzz> for now i'm just going with the most naive solution of "here's a list of computations, run each one of them in parallel"?
2021-06-10 20:33:48 +0200siraben(~siraben@user/siraben)
2021-06-10 20:34:24 +0200 <zzz> s/?/!
2021-06-10 20:34:58 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection)
2021-06-10 20:35:28 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-10 20:36:28 +0200nattiestnate(~nate@36.70.194.182) (Client Quit)
2021-06-10 20:36:49 +0200nattiestnate(~nate@36.70.194.182)
2021-06-10 20:36:57 +0200 <slack1256> Has anyone used ghc on a Rpi 4 with nixos? is it workable or should I need to cross compile?
2021-06-10 20:41:32 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.0.1)
2021-06-10 20:43:51 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 20:45:51 +0200 <DigitalKiwi> i have used it
2021-06-10 20:46:45 +0200 <maerwald> slack1256: there are bindists, no?
2021-06-10 20:47:14 +0200 <DigitalKiwi> i use distributed builds though https://github.com/nix-community/aarch64-build-box
2021-06-10 20:47:32 +0200Shaeto(~Shaeto@94.25.234.141)
2021-06-10 20:47:35 +0200 <maerwald> armv7 and aarch64 bindists exist
2021-06-10 20:47:57 +0200Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net) (Ping timeout: 252 seconds)
2021-06-10 20:50:21 +0200 <DigitalKiwi> when i get really bored i try to build things for x86_64 on that box lol
2021-06-10 20:50:57 +0200 <DigitalKiwi> https://myfriendshate.me/files/2020-01-07-075516_2880x1800_scrot.png
2021-06-10 20:51:22 +0200agumonke`(~user@88.163.231.79)
2021-06-10 20:52:54 +0200agumonke`(~user@88.163.231.79) (Read error: Connection reset by peer)
2021-06-10 20:53:11 +0200agumonke`(~user@88.163.231.79)
2021-06-10 20:53:47 +0200mnrmnaughawk
2021-06-10 20:54:01 +0200cfricke(~cfricke@user/cfricke)
2021-06-10 20:54:02 +0200Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net) (Quit: Leaving)
2021-06-10 20:57:31 +0200dy`dy
2021-06-10 20:59:14 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 21:01:30 +0200slack1256(~slack1256@181.203.23.128) (Read error: Connection reset by peer)
2021-06-10 21:02:45 +0200vicfred(~vicfred@user/vicfred)
2021-06-10 21:04:27 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 21:10:23 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 21:11:00 +0200Scotty_Trees(~Scotty_Tr@162-234-179-169.lightspeed.brhmal.sbcglobal.net)
2021-06-10 21:11:05 +0200Guest97(~Guest9@43.241.144.108)
2021-06-10 21:13:24 +0200Crypt9a2e(~Crypt9a2e@157.51.21.223) (Ping timeout: 268 seconds)
2021-06-10 21:13:48 +0200LambdaDuck(~anka@ksit.fixme.fi) (Ping timeout: 244 seconds)
2021-06-10 21:14:55 +0200LambdaDuck(~anka@ksit.fixme.fi)
2021-06-10 21:15:51 +0200neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130)
2021-06-10 21:17:58 +0200fendor(~fendor@77.119.128.226.wireless.dyn.drei.com) (Remote host closed the connection)
2021-06-10 21:19:47 +0200ystael(~ystael@user/ystael) (Read error: Connection reset by peer)
2021-06-10 21:20:28 +0200ystael(~ystael@user/ystael)
2021-06-10 21:20:28 +0200teaSlurper(~chris@81.96.113.213) (Read error: Connection reset by peer)
2021-06-10 21:20:58 +0200nattiestnate(~nate@36.70.194.182) (Quit: WeeChat 3.1)
2021-06-10 21:20:59 +0200safinaskar(~safinaska@109-252-90-89.nat.spd-mgts.ru)
2021-06-10 21:21:17 +0200fendor(~fendor@77.119.128.226.wireless.dyn.drei.com)
2021-06-10 21:24:54 +0200 <tomsmeding> DigitalKiwi: juicy
2021-06-10 21:25:06 +0200 <tomsmeding> What's up with that 0% in the cpu column though
2021-06-10 21:25:52 +0200 <tomsmeding> Also how is that sorted on cpu with 1.9%, 3.2%, 0.0% on top
2021-06-10 21:27:04 +0200xkuru(~xkuru@user/xkuru)
2021-06-10 21:28:12 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2021-06-10 21:28:56 +0200Morrow(~Morrow@bzq-110-168-31-106.red.bezeqint.net)
2021-06-10 21:28:57 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it) (Read error: Connection reset by peer)
2021-06-10 21:29:08 +0200azeem(~azeem@176.201.7.210)
2021-06-10 21:32:16 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 21:33:35 +0200azeem(~azeem@176.201.7.210) (Ping timeout: 272 seconds)
2021-06-10 21:33:47 +0200 <DigitalKiwi> i don't think the sorting refreshes as quickly as the number
2021-06-10 21:33:53 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-06-10 21:34:19 +0200azeem(~azeem@dynamic-adsl-94-34-34-125.clienti.tiscali.it)
2021-06-10 21:36:22 +0200teaSlurper(~chris@81.96.113.213) (Read error: Connection reset by peer)
2021-06-10 21:36:34 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 21:36:38 +0200 <safinaskar> hi. i want to create my own language. and i plan to use library "lsp". the only functionality i need is this: i want my interpreter to produce error/warning messages, and i want editor to show them in necessary place. is there some "lsp" example with exactly this functionality and nothing more?
2021-06-10 21:37:25 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 21:40:09 +0200Topsi(~Tobias@dyndsl-037-138-065-228.ewe-ip-backbone.de)
2021-06-10 21:40:10 +0200 <dminuoso> 20:24:29 tomsmeding | There's usually little reason to not pass that flag, I believe
2021-06-10 21:40:18 +0200 <dminuoso> tomsmeding: Fun fact, not passing threaded is not supported!
2021-06-10 21:40:36 +0200 <dminuoso> It's a bit weird that to get an officially supported mode of operation, you have to pass extra flags..
2021-06-10 21:40:52 +0200exarkun(~exarkun@user/exarkun)
2021-06-10 21:41:27 +0200 <tomsmeding> dminuoso: wut?
2021-06-10 21:41:28 +0200 <geekosaur> there are reasons to not pass it, such as debugging crashes (as is currently going on in #ghc)
2021-06-10 21:41:44 +0200 <geekosaur> but indeed they only really support the threaded runtime
2021-06-10 21:42:05 +0200 <exarkun> if I were any good at haskell, would the point and usage of https://hackage.haskell.org/package/wai-extra-3.1.6/docs/Network-Wai-Test.html just be obvious to me from what's on that page?
2021-06-10 21:42:26 +0200 <tomsmeding> This situation sounds like a research prototype :p
2021-06-10 21:42:46 +0200 <tomsmeding> Where the unsupported debugging setting is the default
2021-06-10 21:42:56 +0200 <geekosaur> s/Haskell/WAI/, I think
2021-06-10 21:43:23 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 21:44:41 +0200 <geekosaur> the point seems somewhat obvious to me, it's stubs for debugging a WAI application
2021-06-10 21:46:36 +0200 <xerox> exarkun: I find this kind of search sometimes helps in these cases https://github.com/search?l=Haskell&p=2&q=import+Network.Wai.Test&type=Code you see how people actually end up using it
2021-06-10 21:47:10 +0200 <dminuoso> exarkun: The usage seems clear from the type signatures alone.
2021-06-10 21:47:37 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: Textual IRC Client: www.textualapp.com)
2021-06-10 21:47:37 +0200 <dminuoso> While granted, it's no excuse, but the intend and ergonomics are clear after looking at it for 2 minutes.
2021-06-10 21:48:42 +0200 <exarkun> xerox: That definitely helps. In the first example I finally see how to set anything other than the request path in a request.
2021-06-10 21:48:51 +0200 <xerox> hurray!
2021-06-10 21:50:47 +0200 <exarkun> I don't understand why https://hackage.haskell.org/package/wai-3.2.2.1/docs/Network-Wai.html#t:Request doesn't say more about Request, either about the constructor or the (uh oh I forget what they're called) setters / fields
2021-06-10 21:51:08 +0200 <safinaskar> Hi! A long time ago i wrote my proof checker in haskell. I wanted to be able to interactively see errors (from this prover) in my editor. so i wrote program in c++ (!!!!) (language from hell) using qt. This program was simple text editor. After every keystroke it did run my prover and showed me place of error
2021-06-10 21:51:12 +0200 <safinaskar> all this worked nice
2021-06-10 21:52:18 +0200 <dminuoso> exarkun: Ah that's a haddocks issue.
2021-06-10 21:52:27 +0200 <safinaskar> my question is: how to do the same using language server protocol? (with vscode instead of my qt program?)
2021-06-10 21:52:38 +0200 <dminuoso> exarkun: The package exports the field accessors explicitly, without exporting the data constructor.
2021-06-10 21:52:54 +0200 <safinaskar> is there some example? so far i found none and it seems it is easier to continue with that ugly qt hack
2021-06-10 21:52:54 +0200 <xerox> exarkun: because the module doesn't export those
2021-06-10 21:52:54 +0200 <dminuoso> This is a common trick to preserve PVP compability with packages, while allowing extensibility
2021-06-10 21:53:02 +0200 <dminuoso> xerox: It does.
2021-06-10 21:53:17 +0200 <dminuoso> exarkun: You have to look at the source code to know this. This haddock should *really* document it.
2021-06-10 21:53:22 +0200 <xerox> check out the difference in the module exports between Request and say RequestBodyLength (..) https://hackage.haskell.org/package/wai-3.2.2.1/docs/src/Network.Wai.html
2021-06-10 21:53:46 +0200 <exarkun> requestHeaders is exported, https://hackage.haskell.org/package/wai-3.2.2.1/docs/src/Network.Wai.Internal.html#requestHeaders
2021-06-10 21:53:50 +0200 <dminuoso> exarkun: So you can write `defaultRequest { rawPathInfo = ... }`. There's just no hint whatever in haddock to know that rawPathInfo is an accessor.
2021-06-10 21:53:52 +0200 <exarkun> But ... Request(requestHeaders) is not exported?
2021-06-10 21:53:57 +0200 <exarkun> (but they're the same thing?)
2021-06-10 21:54:02 +0200 <dminuoso> exarkun: Did you read what I just wrote?
2021-06-10 21:54:16 +0200 <dminuoso> Request(requestHeaders) would export both the constructor and the field
2021-06-10 21:54:18 +0200 <exarkun> dminuoso: I did but I might not have understood it
2021-06-10 21:54:20 +0200 <dminuoso> The point is to not export the Constructor.
2021-06-10 21:54:28 +0200 <dminuoso> Okay, so do you know what PVP is?
2021-06-10 21:54:38 +0200 <exarkun> The versioning scheme?
2021-06-10 21:54:40 +0200 <dminuoso> Yes
2021-06-10 21:54:55 +0200 <exarkun> more or less
2021-06-10 21:55:10 +0200 <dminuoso> If you wanted to extend the constructor with an additional field and export the constructor, then that would demand a major version bump
2021-06-10 21:55:16 +0200 <dminuoso> Because suddenly the constructor takes an additional parameter
2021-06-10 21:55:30 +0200awkmnrmnaugh
2021-06-10 21:55:46 +0200 <dminuoso> Often that's not necessary, maybe because you have sensible and backwards compatible defaults for newly added fields. It'd be nicer if you could avoid a major version bump
2021-06-10 21:56:02 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.1)
2021-06-10 21:56:11 +0200 <dminuoso> So what you do is: provide a smart constructor to provide a (often empty/useless) default, export all accessors, and then you can use field update syntax
2021-06-10 21:56:34 +0200_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-06-10 21:56:34 +0200 <dminuoso> It's a trick some people have adopted. I think Snoyman popularized it
2021-06-10 21:57:06 +0200 <dminuoso> (But with this trick you absolutely cant export the constructor itself, otherwise your API would have a function that might change when a field gets added)
2021-06-10 21:57:50 +0200 <dminuoso> All of this is oblivious to haddock itself, sadly. You just see a bunch of functions, and dont even know they are accessor functions (which you could use with field update syntax)
2021-06-10 21:58:10 +0200 <dminuoso> exarkun: Your only hint is this section name: https://hackage.haskell.org/package/wai-3.2.2.1/docs/Network-Wai.html#g:3
2021-06-10 21:58:14 +0200 <dminuoso> "Request accessors"
2021-06-10 21:58:31 +0200 <dminuoso> (Which haddock still does, but it's extremely subtle)
2021-06-10 21:59:18 +0200dunkeln(~dunkeln@94.129.65.28)
2021-06-10 21:59:31 +0200 <dminuoso> Should correct myself, its not invisible to haddock, it's just very poorly visualized..
2021-06-10 22:01:12 +0200 <dminuoso> exarkun: https://www.yesodweb.com/blog/2015/03/designing-apis-for-extensibility
2021-06-10 22:01:37 +0200 <exarkun> Okay, I think I get it and maybe now I can be on alert for "accessors" in the future
2021-06-10 22:01:38 +0200 <dminuoso> https://www.snoyman.com/blog/2016/11/designing-apis-for-extensibility/
2021-06-10 22:01:39 +0200 <dminuoso> Ah that's the one
2021-06-10 22:02:10 +0200 <exarkun> and thanks for that link
2021-06-10 22:02:43 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 22:03:18 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Client Quit)
2021-06-10 22:04:42 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 22:04:45 +0200alphacath(~alpha@host-79-36-63-89.retail.telecomitalia.it) (Quit: bye)
2021-06-10 22:05:04 +0200juhp(~juhp@128.106.188.66) (Ping timeout: 245 seconds)
2021-06-10 22:05:41 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Ping timeout: 272 seconds)
2021-06-10 22:06:49 +0200juhp(~juhp@128.106.188.66)
2021-06-10 22:07:23 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 22:08:06 +0200gumm(~user@88.163.231.79)
2021-06-10 22:08:19 +0200gumm(~user@88.163.231.79) (Remote host closed the connection)
2021-06-10 22:08:31 +0200jakalx(~jakalx@base.jakalx.net)
2021-06-10 22:09:17 +0200malvo(~malvo@malvo.org) ()
2021-06-10 22:09:21 +0200agumonke`(~user@88.163.231.79) (Ping timeout: 252 seconds)
2021-06-10 22:09:35 +0200agumonke`(~user@88.163.231.79)
2021-06-10 22:12:06 +0200wonko(~wjc@62.115.229.50) (Ping timeout: 252 seconds)
2021-06-10 22:12:47 +0200Katarushisu(~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
2021-06-10 22:14:02 +0200Katarushisu(~Katarushi@cpc152083-finc20-2-0-cust170.4-2.cable.virginm.net)
2021-06-10 22:15:24 +0200reumeth(~reumeth@user/reumeth) (Remote host closed the connection)
2021-06-10 22:15:55 +0200reumeth(~reumeth@user/reumeth)
2021-06-10 22:16:54 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a) (Remote host closed the connection)
2021-06-10 22:20:12 +0200Topsi(~Tobias@dyndsl-037-138-065-228.ewe-ip-backbone.de) (Ping timeout: 272 seconds)
2021-06-10 22:20:50 +0200reumeth(~reumeth@user/reumeth) (Ping timeout: 272 seconds)
2021-06-10 22:22:39 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl)
2021-06-10 22:24:14 +0200MQ-17J(~MQ-17J@8.21.10.116)
2021-06-10 22:24:31 +0200safinaskar(~safinaska@109-252-90-89.nat.spd-mgts.ru) ()
2021-06-10 22:24:38 +0200Shaeto(~Shaeto@94.25.234.141) (Ping timeout: 272 seconds)
2021-06-10 22:24:53 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 272 seconds)
2021-06-10 22:25:18 +0200Shaeto(~Shaeto@94.25.234.158)
2021-06-10 22:27:48 +0200Guest50(~Guest50@109-252-90-89.nat.spd-mgts.ru)
2021-06-10 22:28:07 +0200Guest50(~Guest50@109-252-90-89.nat.spd-mgts.ru) ()
2021-06-10 22:30:01 +0200dut(~dut@user/dut) (Quit: Leaving)
2021-06-10 22:30:33 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 22:30:58 +0200hueso_(~root@152.170.216.40) (Read error: Connection reset by peer)
2021-06-10 22:32:04 +0200hueso(~root@152.170.216.40)
2021-06-10 22:32:09 +0200bontaq(~user@ool-18e47f8d.dyn.optonline.net) (Ping timeout: 245 seconds)
2021-06-10 22:33:18 +0200Deewiant(~deewiant@de1.ut.deewiant.iki.fi) (Ping timeout: 264 seconds)
2021-06-10 22:33:30 +0200kenran(~kenran@200116b82b390f00b0c803a76fadf7bb.dip.versatel-1u1.de)
2021-06-10 22:33:38 +0200Deewiant(~deewiant@de1.ut.deewiant.iki.fi)
2021-06-10 22:36:15 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net)
2021-06-10 22:39:36 +0200gzj(~GZJ0X@199.193.127.217.16clouds.com) (Remote host closed the connection)
2021-06-10 22:43:10 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com)
2021-06-10 22:43:11 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi)
2021-06-10 22:46:21 +0200 <kenran> I'm trying to understand how to use the function `deserialiseIncremental :: ST s (IDecoder s a)` from the serialise library. It's probably due to me not having used the ST monad before. I'm struggling as to how even start.
2021-06-10 22:47:47 +0200thyriaen(~thyriaen@45.178.73.238)
2021-06-10 22:48:10 +0200 <kenran> I mean, the outline in my head looks like starting with `runST $ do x <- serialiseIncremental`, then I'd have to match x: the cases Fail or Done should be straightforward, but Partial contains a continuation that I'd have to get some ByteString for to apply to.
2021-06-10 22:48:55 +0200 <kenran> The ByteString is something I'm getting by reading from a Handle, but that in turn requires IO, not ST. But I cannot leave the ST monad and "reenter" with runST, can I?
2021-06-10 22:50:12 +0200bitmapper(uid464869@id-464869.tooting.irccloud.com) (Quit: Connection closed for inactivity)
2021-06-10 22:51:28 +0200 <kenran> (background: there is a Handle (to an UNIX pipe) and lazy bytestrings (gotten from the serialise library) are written to it. But I don't know how to read multiple values in succession, because LBS.hGetContents seems to want to read to the end, and thus it only works once. So I thought maybe using hGet together with the incremental deserialisiation could help. But I'm open to any suggestions.)
2021-06-10 22:53:33 +0200Baloo_(~Baloo_@193.138.218.166) (Quit: Leaving)
2021-06-10 22:54:21 +0200jolly29(~jolly@208.180.97.158)
2021-06-10 22:57:12 +0200jolly(~jolly@208.180.97.158) (Ping timeout: 252 seconds)
2021-06-10 22:57:20 +0200jmcarthur(~jmcarthur@c-73-29-224-10.hsd1.nj.comcast.net) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2021-06-10 22:57:21 +0200yoctocell(~yoctocell@h87-96-130-155.cust.a3fiber.se) (Quit: C-x C-c, Shutting down OS...)
2021-06-10 22:57:34 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be) (Ping timeout: 272 seconds)
2021-06-10 22:57:56 +0200 <nshepperd> you can convert ST to IO
2021-06-10 22:58:01 +0200 <ski> kenran : hm, <https://downloads.haskell.org/~ghc/latest/docs/html/libraries/base-4.15.0.0/Control-Monad-ST.html#…> ?
2021-06-10 22:59:23 +0200jolly29jolly
2021-06-10 22:59:37 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:2121:a570:d35e:ba7a)
2021-06-10 22:59:43 +0200 <kenran> ohh, I tried that one, but I think I had one too many `runST` calls still in there. Now I'm getting a different error, let me see
2021-06-10 23:00:06 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-06-10 23:00:41 +0200 <nshepperd> you won't need to use runST at all
2021-06-10 23:00:52 +0200 <kenran> yeah, I think that does the trick, thanks!
2021-06-10 23:01:27 +0200 <kenran> I'm still very unsure if all that is even going to solve any problem, and whether I even look for the problem in the right place
2021-06-10 23:02:26 +0200 <kenran> I don't understand ByteString.Lazy well, and stuff with Handle even less, so that makes for a potent situation :D
2021-06-10 23:05:05 +0200tremon(~tremon@217-63-61-89.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in)
2021-06-10 23:07:04 +0200jippiedoe(~david@2a02-a44c-e14e-1-6bdc-c755-d41c-84af.fixed6.kpn.net) (Ping timeout: 272 seconds)
2021-06-10 23:12:29 +0200 <kenran> In https://wiki.haskell.org/Dealing_with_binary_data there's written "B.getContents .. will read the whole of stdin into memory". What is "the whole" here?
2021-06-10 23:12:56 +0200 <kenran> Its documentation says that the handle is closed after the operation, so what does that mean for stdin?
2021-06-10 23:13:40 +0200 <kenran> Can I think of it as a file which is consumed by getContents/reading?
2021-06-10 23:14:18 +0200chexum(~chexum@gateway/tor-sasl/chexum) (Remote host closed the connection)
2021-06-10 23:14:28 +0200chexum(~chexum@gateway/tor-sasl/chexum)
2021-06-10 23:14:32 +0200 <monochrom> reading and storing into memory until EOF
2021-06-10 23:15:01 +0200Erutuon(~Erutuon@user/erutuon) (Quit: WeeChat 2.8)
2021-06-10 23:15:09 +0200 <monochrom> If I feed a whole blu-ray disc to your stdin, you will OOM.
2021-06-10 23:15:41 +0200 <nshepperd> in the case of stdin that means it will block until whoever is writing to stdin closes the pipe
2021-06-10 23:16:27 +0200 <kenran> Flushing should suffice, shouldn't it? (That's what I think I learned by playing around with reading/writing operations on a pipe)
2021-06-10 23:16:31 +0200 <nshepperd> such as by pressing ^D in the terminal
2021-06-10 23:16:58 +0200 <monochrom> suffice for what?
2021-06-10 23:17:06 +0200amahl(~amahl@dsl-jklbng12-54fbca-64.dhcp.inet.fi) (Remote host closed the connection)
2021-06-10 23:17:48 +0200 <monochrom> and who is flushing?
2021-06-10 23:18:42 +0200 <kenran> Ah nvm, I used LBS.getContents on one end ("left"), hPut some value on the other, flushed, then the left side could read it and responded. Without flushing, it was still blocking on hGetContents
2021-06-10 23:19:22 +0200 <monochrom> But B is not LBS.
2021-06-10 23:19:28 +0200 <kenran> Without the L in LBS there it wouldn't have worked at all IIUC?
2021-06-10 23:19:47 +0200 <monochrom> Not sure what's your definition of "work".
2021-06-10 23:19:49 +0200dunkeln(~dunkeln@94.129.65.28) (Ping timeout: 268 seconds)
2021-06-10 23:20:19 +0200 <kenran> It would have blocked indefinitely I think, but I'll just try it.
2021-06-10 23:21:29 +0200 <kenran> I need to attack this from the bottom, for instance by understanding what EOF really means
2021-06-10 23:21:34 +0200 <kenran> Thanks for the pointers!
2021-06-10 23:21:45 +0200 <nshepperd> B.getContents promises to return all data that will ever be written to stdin at once as a single bytestring. it blocks until whoever is writing closes the pipe so that no more can be written
2021-06-10 23:21:58 +0200 <monochrom> Yeah, you need a Unix course.
2021-06-10 23:22:16 +0200dhil(~dhil@195.213.192.47) (Ping timeout: 272 seconds)
2021-06-10 23:22:46 +0200thyriaen(~thyriaen@45.178.73.238) (Read error: Connection reset by peer)
2021-06-10 23:22:47 +0200thyriaen_(~thyriaen@45.178.73.238)
2021-06-10 23:23:47 +0200teaSlurper(~chris@81.96.113.213) (Remote host closed the connection)
2021-06-10 23:24:10 +0200 <kenran> monochrom: exactly! It might even be worth learning some of that stuff without using Haskell.
2021-06-10 23:24:14 +0200BosonCollider(~olofs@90-227-86-119-no542.tbcn.telia.com) (Ping timeout: 245 seconds)
2021-06-10 23:25:06 +0200Guest97(~Guest9@43.241.144.108) (Quit: Connection closed)
2021-06-10 23:27:28 +0200 <maerwald> unix: we didn't know how to create an API, so we made everything a file
2021-06-10 23:28:39 +0200teaSlurper(~chris@81.96.113.213)
2021-06-10 23:28:54 +0200 <hpc> man 2 open, man 2 read, man 2 close are a good place to start
2021-06-10 23:29:06 +0200 <dminuoso> kenran: By the way, if you are curious about ST, think of it as a restricted way to use IO in a localized manner. mergesort is from an outside perspective a completely pure operation, right?
2021-06-10 23:29:55 +0200 <monochrom> I think that's false. fork, exec, pipe, sbrk could have been defined through special files too, but not done, and thank God.
2021-06-10 23:30:21 +0200 <maerwald> lol
2021-06-10 23:30:45 +0200 <hpc> i can see it now
2021-06-10 23:30:56 +0200 <monochrom> If you're looking at "echo 1 > /sys/foo/bar/go-to-sleep-now" then sure, but that's a linux invention.
2021-06-10 23:31:27 +0200 <hpc> fork() {pid=$1; cp --recursive /proc/$pid /proc/$(cat /proc/new-pid);}
2021-06-10 23:31:46 +0200chomwitt(~Pitsikoko@athedsl-20549.home.otenet.gr) (Ping timeout: 272 seconds)
2021-06-10 23:32:26 +0200motherfs1motherfsck
2021-06-10 23:32:27 +0200 <kenran> dminuoso: yes
2021-06-10 23:33:01 +0200fizbin(~fizbin@c-73-33-197-160.hsd1.nj.comcast.net) (Remote host closed the connection)
2021-06-10 23:33:20 +0200teaSlurper(~chris@81.96.113.213) (Ping timeout: 264 seconds)
2021-06-10 23:33:29 +0200 <kenran> I think I saw something like that mentioned on the haskell wiki page for ST
2021-06-10 23:33:50 +0200 <dminuoso> kenran: But would you agree, that an efficient mergesort implementation requires memory manipulations? Or perhaps quicksort is a more motivating example, there the need for in-place partitioning is obvious.
2021-06-10 23:34:01 +0200thyriaen__(~thyriaen@45.178.73.238)
2021-06-10 23:34:03 +0200merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-06-10 23:34:44 +0200 <monochrom> I can also be talked into "we didn't know how to create an ABI, so we created software interrupts instead".
2021-06-10 23:34:51 +0200dhil(~dhil@80.208.56.181)
2021-06-10 23:35:03 +0200tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2021-06-10 23:35:19 +0200 <kenran> dminuoso: sounds right to me, from the looks of the algorithms, yes
2021-06-10 23:36:33 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-06-10 23:36:56 +0200thyriaen_(~thyriaen@45.178.73.238) (Ping timeout: 264 seconds)
2021-06-10 23:37:08 +0200 <dminuoso> kenran: So ST gives us mutable references like IORef that we can write to, read from or mutate. Just like mutable stores from other languages (often called variables there). But in a way that you can use this in the middle of pure code.
2021-06-10 23:38:09 +0200 <janus> isn't it better to mention STRef when talking about ST
2021-06-10 23:38:21 +0200neceve(~quassel@2a02:c7f:607e:d600:a95a:ecd2:e57a:3130) (Ping timeout: 272 seconds)
2021-06-10 23:39:08 +0200 <kenran> dminuoso: that's very interesting. I might even have a piece of code that could use this immediately. It's one part of an algorithm where memory blows up to 1.5 GB (though it's not a space leak, it just requires a lot) and where I though having mutability would help.
2021-06-10 23:39:42 +0200 <kenran> Thanks everyone, time to sleep and tackle this again tomorrow!
2021-06-10 23:40:34 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-06-10 23:41:44 +0200waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 245 seconds)
2021-06-10 23:42:19 +0200 <dminuoso> monochrom: Mmm, procfs/sysfs is an odd one. On the one hand, files are a really comfortable API for plumbing things together. But recall that time where `rm -rf /` could irrepably brick your mainboard?
2021-06-10 23:42:30 +0200Xe(~cadey@tailscale/xe) (Quit: WeeChat 3.1)
2021-06-10 23:42:36 +0200kenran(~kenran@200116b82b390f00b0c803a76fadf7bb.dip.versatel-1u1.de) (Quit: WeeChat info:version)
2021-06-10 23:42:37 +0200tcard(~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving)
2021-06-10 23:42:44 +0200Xe(~cadey@tailscale/xe)
2021-06-10 23:42:45 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-06-10 23:44:55 +0200 <janus> the term file is so overloaded by now, it is not just one API
2021-06-10 23:45:41 +0200 <monochrom> I think that the motivation for sysfs was shelll scripts. "echo 1 > /sys/foo/bar/power-saving-mode" is very shell-friendly. It would suck to have to write C code for that, even if it's just an ioctl call.
2021-06-10 23:46:19 +0200 <maerwald> monochrom: powershell kinda solved that... where you just call their C# crap and it works
2021-06-10 23:46:36 +0200 <janus> if poettering had had traction earlier, sysfs would never have been necessary ;)
2021-06-10 23:46:47 +0200immae(~immae@2a01:4f8:141:53e7::) (Ping timeout: 252 seconds)
2021-06-10 23:47:02 +0200 <hpc> or if someone wrote a shell wrapper for ioctl
2021-06-10 23:47:20 +0200 <janus> they did, it is called systemctl :P
2021-06-10 23:47:27 +0200 <monochrom> Yeah. My next thought was "What if Ritchie and Thompson invented Python instead of C?"
2021-06-10 23:47:39 +0200immae(~immae@2a01:4f8:141:53e7::)
2021-06-10 23:49:11 +0200 <hpc> or if it was like lisp machines, where the shell and the system language are the same
2021-06-10 23:49:26 +0200 <janus> Python without C is not Python, the whole point of Python is that it finds that comfy spot where they have interoperability because they write all the low-level parts in C
2021-06-10 23:50:11 +0200 <hpc> and let's be honest, some of the high-level parts too
2021-06-10 23:50:48 +0200 <monochrom> I am OK with that argument, but if you do that, you may as well say "R&T who invent Python is not R&T" in the first place.
2021-06-10 23:51:42 +0200tcard(~tcard@p2307053-ipngn17101hodogaya.kanagawa.ocn.ne.jp)
2021-06-10 23:51:43 +0200 <janus> maybe I am missing the point, but the Unix greybeards were trying the best they could to make scripting languages, they called them shells?
2021-06-10 23:52:13 +0200mikoto-chan(~mikoto-ch@ip-213-49-189-31.dsl.scarlet.be)
2021-06-10 23:52:44 +0200 <janus> you're suggesting they could have put some typing in their shells instead of leaving it to compiled languages? but performance was so critical, they didn't consider the fact that people would still be using these shells 50 years later
2021-06-10 23:53:16 +0200 <boxscape> it's like the ancient chinese script that was written on turtle shells
2021-06-10 23:55:43 +0200yushyin(nrX1Axr00h@karif.server-speed.net) (Quit: WeeChat 3.1)
2021-06-10 23:56:01 +0200yushyin(DqPAekUnN9@karif.server-speed.net)
2021-06-10 23:56:43 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.2-rc1)
2021-06-10 23:56:51 +0200Ariakenom(~Ariakenom@2001:9b1:efb:fc00:1900:b2bf:db54:db6b) (Quit: Leaving)
2021-06-10 23:59:36 +0200Erutuon(~Erutuon@user/erutuon)