2022/01/05

2022-01-05 00:00:37 +0100shapr(~user@2601:7c0:c202:5190:2664:1056:c3ed:3a4b) (Ping timeout: 240 seconds)
2022-01-05 00:03:51 +0100alx741(~alx741@157.100.93.160)
2022-01-05 00:06:47 +0100 <Axman6> lechner: what problem are you having?
2022-01-05 00:08:11 +0100noman(~noman@2603:900a:1600:ba00:2e6e:5d98:940:16d7)
2022-01-05 00:08:36 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 00:09:14 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 00:13:05 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 00:13:27 +0100retro_(~retro@05412d78.skybroadband.com)
2022-01-05 00:14:26 +0100 <Axman6> lechner: I assume you know about https://hackage.haskell.org/package/hasql-1.5.0.1/docs/Hasql-Session.html - you can use `run (statement (True,1) [vectorStatement|select foo :: text from "bar"|]) connection` (though I would assign the result of the th to a variable and call that)
2022-01-05 00:16:06 +0100__monty__(~toonn@user/toonn) (Quit: leaving)
2022-01-05 00:16:26 +0100retroid_(~retro@05412d78.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 00:16:57 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-05 00:19:22 +0100 <dsal> little_mac: yahb doesn't have Showtime.
2022-01-05 00:24:01 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net) (Remote host closed the connection)
2022-01-05 00:25:00 +0100alx741(~alx741@157.100.93.160)
2022-01-05 00:26:53 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 00:28:54 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2022-01-05 00:29:34 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 00:31:02 +0100AlexNoo_(~AlexNoo@94.233.240.16)
2022-01-05 00:31:51 +0100noman(~noman@2603:900a:1600:ba00:2e6e:5d98:940:16d7) (Quit: Client closed)
2022-01-05 00:32:00 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-05 00:32:04 +0100Axman6does jazzhands
2022-01-05 00:32:40 +0100burnsidesLlama(~burnsides@dhcp168-022.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-05 00:34:11 +0100vglfr(~vglfr@46.96.180.119) (Ping timeout: 256 seconds)
2022-01-05 00:34:11 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 256 seconds)
2022-01-05 00:34:32 +0100 <Axman6> ran :show imports in PM, there's a surprising list there - the output got cut off, is there a @where+ equivalent for yahb output?
2022-01-05 00:34:56 +0100 <geekosaur> use %% and it'll pastebin the result
2022-01-05 00:34:57 +0100AlexZenon(~alzenon@94.233.241.107) (Ping timeout: 268 seconds)
2022-01-05 00:34:57 +0100AlexNoo(~AlexNoo@94.233.241.107) (Ping timeout: 268 seconds)
2022-01-05 00:34:57 +0100Alex_test(~al_test@94.233.241.107) (Ping timeout: 268 seconds)
2022-01-05 00:36:30 +0100rust2600(~rust2600@185.154.109.45) ()
2022-01-05 00:36:53 +0100ensyde(~ensyde@2600:1702:2e30:1a40:d1f0:4880:2e12:11ff)
2022-01-05 00:36:53 +0100 <geekosaur> and I think you meant @more?
2022-01-05 00:37:36 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-05 00:37:52 +0100stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2022-01-05 00:38:20 +0100stiell(~stiell@gateway/tor-sasl/stiell)
2022-01-05 00:38:38 +0100 <Axman6> ah amazing, thanks (http://qp.mniip.com/y/37 for anyone interested)
2022-01-05 00:39:07 +0100AlexZenon(~alzenon@94.233.240.16)
2022-01-05 00:39:11 +0100Alex_test(~al_test@94.233.240.16)
2022-01-05 00:39:17 +0100emf(~emf@2620:10d:c091:480::1:89d7) (Quit: emf)
2022-01-05 00:46:24 +0100alx741(~alx741@157.100.93.160)
2022-01-05 00:49:42 +0100Pickchea(~private@user/pickchea) (Quit: Leaving)
2022-01-05 00:50:09 +0100ec(~ec@gateway/tor-sasl/ec)
2022-01-05 00:53:27 +0100mvk(~mvk@2607:fea8:5cdd:f000::45db)
2022-01-05 00:53:34 +0100AlexNoo_AlexNoo
2022-01-05 00:55:35 +0100falafel(~falafel@2603-8000-d800-688c-c064-54e6-9a05-e359.res6.spectrum.com)
2022-01-05 00:57:45 +0100acidjnk_new(~acidjnk@p200300d0c7271e933133c43131ec7c10.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2022-01-05 00:57:45 +0100acidjnk(~acidjnk@p200300d0c7271e933133c43131ec7c10.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2022-01-05 00:58:17 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
2022-01-05 00:59:20 +0100falafel_(~falafel@2603-8000-d800-688c-c064-54e6-9a05-e359.res6.spectrum.com)
2022-01-05 01:00:27 +0100shapr(~user@2601:7c0:c202:5190:ea69:7e3b:73f6:8004)
2022-01-05 01:01:01 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 01:01:22 +0100falafel__(~falafel@cpe-76-168-195-162.socal.res.rr.com)
2022-01-05 01:01:48 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 01:01:51 +0100kaph(~kaph@net-2-38-107-19.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-01-05 01:02:17 +0100falafel(~falafel@2603-8000-d800-688c-c064-54e6-9a05-e359.res6.spectrum.com) (Ping timeout: 240 seconds)
2022-01-05 01:04:17 +0100falafel_(~falafel@2603-8000-d800-688c-c064-54e6-9a05-e359.res6.spectrum.com) (Ping timeout: 240 seconds)
2022-01-05 01:04:37 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 240 seconds)
2022-01-05 01:04:57 +0100shapr(~user@2601:7c0:c202:5190:ea69:7e3b:73f6:8004) (Ping timeout: 240 seconds)
2022-01-05 01:08:10 +0100coot(~coot@2a02:a310:e03f:8500:5cc8:47c:8ec0:b827) (Quit: coot)
2022-01-05 01:09:37 +0100jumper149(~jumper149@static.6.71.203.116.clients.your-server.de) (Quit: WeeChat 3.3)
2022-01-05 01:13:03 +0100max22-(~maxime@2a01cb088335980073d4db6cd0f566a2.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2022-01-05 01:16:41 +0100motherfsck(~motherfsc@user/motherfsck) (Ping timeout: 256 seconds)
2022-01-05 01:18:28 +0100alx741(~alx741@157.100.93.160)
2022-01-05 01:23:25 +0100falafel__(~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 240 seconds)
2022-01-05 01:23:53 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 01:25:16 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 01:25:53 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-05 01:27:47 +0100motherfsck(~motherfsc@user/motherfsck)
2022-01-05 01:29:35 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 01:31:30 +0100cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2022-01-05 01:32:55 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net) (Client Quit)
2022-01-05 01:33:58 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 01:33:58 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 01:33:58 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 01:35:08 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 01:38:01 +0100vicfred(~vicfred@user/vicfred) (Quit: Leaving)
2022-01-05 01:38:56 +0100Tuplanolla(~Tuplanoll@91-159-69-90.elisa-laajakaista.fi)
2022-01-05 01:39:47 +0100shapr(~user@2601:7c0:c202:5190:e1f:9ab:bb49:711d)
2022-01-05 01:41:10 +0100xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2022-01-05 01:41:26 +0100 <Axman6> So I nerdsniped myself at the end of last year trying to write a function based on edwardk's discrimination package with the following type: memo :: forall t a. Grouping t => (t -> a) -> (t -> a) it feels like it might not be possible, even if you used unsafePerformIO but would love to be proven incorrect
2022-01-05 01:41:55 +0100alx741(~alx741@157.100.93.160)
2022-01-05 01:45:11 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 01:45:59 +0100nhatanh02(~satori@123.24.172.30)
2022-01-05 01:46:02 +0100jgeerds_(~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 240 seconds)
2022-01-05 01:46:19 +0100TonyStone(~TonyStone@2603-7080-8607-c36a-9cdb-69bc-753b-1e50.res6.spectrum.com) (Remote host closed the connection)
2022-01-05 01:48:03 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-01-05 01:51:08 +0100coolnickname(uid531864@user/coolnickname) (Quit: Connection closed for inactivity)
2022-01-05 01:51:57 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net) (Quit: Lost terminal)
2022-01-05 01:52:47 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 01:53:29 +0100 <Hecate> I just used an MVar for the first time in a real setup
2022-01-05 01:53:31 +0100 <Hecate> damn
2022-01-05 01:53:52 +0100 <Axman6> MVars are great
2022-01-05 01:56:08 +0100cheater(~Username@user/cheater)
2022-01-05 01:57:25 +0100nhatanh02(~satori@123.24.172.30) (Ping timeout: 240 seconds)
2022-01-05 02:01:41 +0100BrokenClutch(~pioneer@2804:d41:c292:6c00:33d8:d2f1:d8af:153e)
2022-01-05 02:02:05 +0100califax(~califax@user/califx) (Remote host closed the connection)
2022-01-05 02:02:16 +0100 <jackdk> mmmvar
2022-01-05 02:03:05 +0100califax(~califax@user/califx)
2022-01-05 02:06:48 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 02:07:31 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 02:08:57 +0100shapr(~user@2601:7c0:c202:5190:e1f:9ab:bb49:711d) (Ping timeout: 240 seconds)
2022-01-05 02:08:59 +0100alx741(~alx741@157.100.93.160)
2022-01-05 02:11:03 +0100falafel__(~falafel@cpe-76-168-195-162.socal.res.rr.com)
2022-01-05 02:15:01 +0100falafel__(~falafel@cpe-76-168-195-162.socal.res.rr.com) (Ping timeout: 240 seconds)
2022-01-05 02:15:43 +0100epolanski(uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-05 02:17:16 +0100biog(~user1@159.224.42.85) (Quit: ZZZzzz…)
2022-01-05 02:17:25 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 240 seconds)
2022-01-05 02:18:07 +0100yauhsien(~yauhsien@61-231-58-217.dynamic-ip.hinet.net)
2022-01-05 02:18:12 +0100Erutuon(~Erutuon@user/erutuon)
2022-01-05 02:19:26 +0100 <edwardk> Axman6: hrmm
2022-01-05 02:19:50 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 02:19:58 +0100 <meer> nick Inst
2022-01-05 02:20:00 +0100 <meer> ummm
2022-01-05 02:20:03 +0100meerInst
2022-01-05 02:20:13 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 02:20:26 +0100 <Inst> if I have a type of IO Maybe a, is there a way to change it to Maybe IO a?
2022-01-05 02:20:54 +0100 <Axman6> % :t sequence @(IO (Maybe a))
2022-01-05 02:20:54 +0100 <yahb> Axman6: ; <interactive>:1:22: error: Not in scope: type variable `a'
2022-01-05 02:20:54 +0100 <EvanR> not in the way you want no
2022-01-05 02:21:27 +0100 <geekosaur> % :t sequence @Maybe @IO
2022-01-05 02:21:27 +0100 <yahb> geekosaur: Maybe (IO a) -> IO (Maybe a)
2022-01-05 02:21:42 +0100 <geekosaur> other way around is always possible, but the way you want generally is not
2022-01-05 02:21:47 +0100 <edwardk> Axman6: did you try starting with (t -> a) -> IO (t -> IO a) ?
2022-01-05 02:21:59 +0100 <Axman6> I did not
2022-01-05 02:22:10 +0100 <edwardk> do that, then you can get the effects in the right place
2022-01-05 02:22:19 +0100fcc977(~kaph@net-2-38-107-19.cust.vodafonedsl.it)
2022-01-05 02:22:20 +0100fcc977(~kaph@net-2-38-107-19.cust.vodafonedsl.it) (Remote host closed the connection)
2022-01-05 02:22:31 +0100 <Axman6> I was struggling to figure out what thew types should be, specifically what should the `b` in getGroup be
2022-01-05 02:22:49 +0100 <Inst> so sequence?
2022-01-05 02:22:51 +0100kaph(~kaph@net-2-38-107-19.cust.vodafonedsl.it)
2022-01-05 02:23:01 +0100 <EvanR> sequence will do the opposite of what you said
2022-01-05 02:23:10 +0100 <geekosaur> no, sequence does theopposite. reread what I wrote
2022-01-05 02:23:33 +0100yauhsien(~yauhsien@61-231-58-217.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2022-01-05 02:23:43 +0100 <edwardk> b should be the 'a'
2022-01-05 02:23:51 +0100 <edwardk> and a should be your t
2022-01-05 02:23:59 +0100 <edwardk> its what you are discriminating on
2022-01-05 02:24:11 +0100 <edwardk> ad you are storing the result in the schwartzian transform
2022-01-05 02:24:55 +0100 <edwardk> its been a while but i wrote one of these once
2022-01-05 02:25:06 +0100 <edwardk> i forget the trick though
2022-01-05 02:25:09 +0100 <Axman6> why doesn't that surprise me :P
2022-01-05 02:25:54 +0100 <EvanR> I see your schwartzian transform is as big as mine!
2022-01-05 02:25:56 +0100 <Inst> yeah IO is not traversable
2022-01-05 02:26:48 +0100 <EvanR> you have to ask yourself what IO (Maybe a) -> Maybe (IO a) would even mean
2022-01-05 02:26:56 +0100 <Axman6> and if you think hard about it, it makes sense that it isn't
2022-01-05 02:27:07 +0100 <Inst> not sure, I'm sort of annoying the people on the Haskell / FP discord
2022-01-05 02:27:26 +0100 <Axman6> :t f :: IO (Maybe a) -> Maybe (IO a); f _ = Nothing
2022-01-05 02:27:27 +0100 <lambdabot> error: parse error on input ‘;’
2022-01-05 02:27:32 +0100 <Axman6> :t let f :: IO (Maybe a) -> Maybe (IO a); f _ = Nothing in f
2022-01-05 02:27:33 +0100 <lambdabot> IO (Maybe a) -> Maybe (IO a)
2022-01-05 02:28:11 +0100 <Inst> i'm trying to utilize the library TinyFileDialogs
2022-01-05 02:28:15 +0100 <geekosaur> interestingly, this types. I wonder what it does
2022-01-05 02:28:30 +0100 <geekosaur> % :t sequence @Maybe @IO
2022-01-05 02:28:30 +0100 <yahb> geekosaur: Maybe (IO a) -> IO (Maybe a)
2022-01-05 02:28:32 +0100Tuplanolla(~Tuplanoll@91-159-69-90.elisa-laajakaista.fi) (Quit: Leaving.)
2022-01-05 02:28:41 +0100 <Axman6> that one's fine
2022-01-05 02:28:56 +0100 <geekosaur> oh, got that backwards, sigh
2022-01-05 02:29:05 +0100retro_(~retro@05412d78.skybroadband.com) (Quit: Connection error?!)
2022-01-05 02:29:17 +0100 <EvanR> run the IO action to see if you get Just x, if so, go back in time to stop the I/O from ever happening and return Just actionReturningXForSureIfYouTryAgain
2022-01-05 02:29:24 +0100 <geekosaur> right, not Traversable
2022-01-05 02:29:36 +0100geekosaurshould just go to bed
2022-01-05 02:29:43 +0100 <Inst> i have a type of IO Maybe [Text], and I want to feed it to a function that requires String
2022-01-05 02:30:08 +0100 <EvanR> IO (Maybe [Text]), the parentheses may be helpful understanding what's going on
2022-01-05 02:30:11 +0100 <Axman6> then you need to execute that thing of tyoe IO (Maybe [Text])
2022-01-05 02:30:23 +0100 <Axman6> and yes, those parens are important
2022-01-05 02:30:28 +0100 <Inst> so... (IO (Maybe [Text]) -> (String -> IO Handle)
2022-01-05 02:30:36 +0100 <Axman6> IO Maybe [Test] doesn't make any sense
2022-01-05 02:30:38 +0100 <geekosaur> val >>= fromMaybe id
2022-01-05 02:30:43 +0100 <geekosaur> er
2022-01-05 02:30:48 +0100 <Inst> yeah, parentheses, sorry
2022-01-05 02:30:49 +0100 <geekosaur> val >>= fromMaybe ""
2022-01-05 02:31:12 +0100 <geekosaur> gives you a Text, then you have to convert to String, then you have to put it back into IO
2022-01-05 02:31:28 +0100 <geekosaur> after calling your function
2022-01-05 02:31:41 +0100 <Inst> so far, I have a working function that outputs IO (Maybe String)
2022-01-05 02:31:49 +0100 <Axman6> > getInput >>= \mTexts -> newFile (maybe "default.txt" (toString . T.concat) mTexts
2022-01-05 02:31:51 +0100 <lambdabot> <hint>:1:82: error:
2022-01-05 02:31:51 +0100 <lambdabot> parse error (possibly incorrect indentation or mismatched brackets)
2022-01-05 02:32:00 +0100 <Axman6> uhm forget that >
2022-01-05 02:32:03 +0100 <Inst> GHCI is being a dick to me
2022-01-05 02:32:19 +0100 <EvanR> yourAction >>= \theMaybeText -> whatever you wanna do with it
2022-01-05 02:32:19 +0100 <geekosaur> you cannot take something out of IO
2022-01-05 02:32:34 +0100 <Inst> basically, it complains it expects Maybe (Maybe String) instead of IO (Maybe String)
2022-01-05 02:32:36 +0100 <geekosaur> unless you put it back in after you're done
2022-01-05 02:32:43 +0100 <Axman6> Inst: it would be infinitely easiler to help you if you shared what you've actually tried to do
2022-01-05 02:33:02 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 02:33:21 +0100 <Axman6> as there are literally an infinite number of programs that could have caused that error
2022-01-05 02:33:25 +0100 <Inst> https://cdn.discordapp.com/attachments/528863657363505159/928098789229727774/unknown.png
2022-01-05 02:34:08 +0100 <Inst> treat this as a learning exercise, FP discord is telling me "just use monad transformers / combinators"
2022-01-05 02:34:22 +0100 <jackdk> geekosaur: you probably already know this, but I find it helpful to never think in terms of "taking something out" when using `(>>=)`. Thinking instead in terms of `fmap` then `join` makes it clear that nothing magical is happening
2022-01-05 02:34:49 +0100 <Axman6> ther's no need for monad transformers here, particularly since you're stilling learning the basics of the IO monad
2022-01-05 02:35:01 +0100 <Inst> when Expected: IO (IO String)
2022-01-05 02:35:01 +0100 <Inst> Actual: IO (Maybe String)
2022-01-05 02:35:03 +0100 <Inst> thank you Axman6
2022-01-05 02:35:09 +0100Insthugs Axman6 and throws money at him
2022-01-05 02:35:31 +0100 <Axman6> extract looks weird, what do you believe its type is?
2022-01-05 02:36:00 +0100 <Inst> from
2022-01-05 02:36:13 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 02:36:13 +0100 <Axman6> I think you would make your life a hell of a lot simpler if you just used dio notation
2022-01-05 02:36:17 +0100 <Axman6> do*
2022-01-05 02:36:38 +0100 <Inst> i don't feel comfortable with do notation, still learning it
2022-01-05 02:36:50 +0100 <Inst> rather, i'd rather skip it for a while to get comfortable with what's going under the hood
2022-01-05 02:37:40 +0100alx741(~alx741@157.100.93.160)
2022-01-05 02:37:45 +0100 <Inst> ; -> (>>) {-Then-}, x <- y converts to y >>= \x -> ...
2022-01-05 02:38:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 02:38:17 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 02:38:18 +0100 <Axman6> ok, well you'll end up with something that looks like ugly do notation anyway
2022-01-05 02:39:25 +0100 <Axman6> openFilePAth = openFileDialog ... >>= \maybeTexts -> case maybeTexts of Just [aText] -> pure (Just (unpack aText)); _ -> pure Nothing
2022-01-05 02:39:36 +0100 <EvanR> we've been telling the likes of Inst to not use do notation until you understand >>= xD
2022-01-05 02:40:05 +0100 <Axman6> the pures here are of type a -> IO a (or in thise case, Maybe String -> IO (Maybe String)
2022-01-05 02:40:18 +0100 <Axman6> there is no need for sequence
2022-01-05 02:40:24 +0100 <edwardk> Axman6: ok, i wrote it up more or less. i don't have a working ghci to test with but
2022-01-05 02:40:28 +0100 <edwardk> https://www.irccloud.com/pastebin/MCWdxUyf/
2022-01-05 02:40:36 +0100 <edwardk> ^- i think that should roughly do what you want
2022-01-05 02:41:17 +0100 <edwardk> the b there = 't' but could just as easily used f t (t2a t) and laziness in the final function
2022-01-05 02:41:33 +0100 <edwardk> then its a matter of unsafely performing all the things
2022-01-05 02:41:39 +0100 <Axman6> edwardk: I thought of doing something like that, and it's horrific :P
2022-01-05 02:41:54 +0100 <Inst> yeah the pures are nightmares
2022-01-05 02:41:59 +0100 <Axman6> this isn't threadsafe right?
2022-01-05 02:42:02 +0100 <Inst> i don't know how to use :: to force a particular type interpretation
2022-01-05 02:42:24 +0100 <Axman6> the compiler knows, it's you who doesn't :)
2022-01-05 02:42:42 +0100 <edwardk> "thread safe" is doable but requires a custom primop
2022-01-05 02:42:59 +0100 <edwardk> ooh, no it doesn't. its easy
2022-01-05 02:43:08 +0100 <edwardk> change 'b' to be the pair of the answer 'a' and an ioref to write it to
2022-01-05 02:43:12 +0100 <Inst> openFilePath was working before, it's more dialogedFilePath
2022-01-05 02:43:17 +0100 <Inst> I added sequence in there for some dumb reason
2022-01-05 02:43:20 +0100 <edwardk> and generate a fresh ioref on each invocation
2022-01-05 02:44:03 +0100 <edwardk> the other way is to temporarily pin the io action to the current HEC with a custom primop that convinces it it can't move, then do the above but with a fixed ioref per hec. less allocation, more performance, but not as pretty
2022-01-05 02:44:58 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 02:44:58 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 02:44:58 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 02:46:31 +0100 <Axman6> I has thought about allocating an IORef per `t` but that would use a lot of RAM... does this actually memoise the calls?
2022-01-05 02:47:44 +0100 <edwardk> each 't' causes the creation of one of those functions that always writes the same 'a' back to the ref memoized. you don't use a fresh ref per 't' but a fresh ref per invocation in the 'easy threadsafe' version
2022-01-05 02:47:47 +0100 <Axman6> I was also trying to think if there was a way to use laziness to avoid the need for an IORef at all - for each t we want to run t2a on t just once and then store that
2022-01-05 02:48:13 +0100 <edwardk> you have an IO action that needs to return () and it needs tog et a result out. so you need to smuggle the answer out in some form of ref type
2022-01-05 02:48:30 +0100 <edwardk> and throwing an exception to sidestep that has the wrong semantics
2022-01-05 02:49:00 +0100 <Axman6> yeah that was the main problem I ran into, not being able to hold onto a reference
2022-01-05 02:49:29 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 02:50:14 +0100 <Axman6> I'm still a bit confused how this memoises things... is the stored value basically in the closure _\ -> ... ? :mindblown: ok I think I get it
2022-01-05 02:50:33 +0100 <Inst> dialogedFileOpen = openFilePath >>= (\x ->
2022-01-05 02:50:34 +0100 <Inst> x >>= (id))
2022-01-05 02:50:43 +0100 <Inst> why does this not typecheck? I'm trying to remove the maybe inside
2022-01-05 02:50:47 +0100 <Axman6> wow, this is amazing and gross at the same time. Classic Ed
2022-01-05 02:50:56 +0100 <edwardk> *takes a bow*
2022-01-05 02:50:59 +0100 <Axman6> what's the type of openFilePath?
2022-01-05 02:51:07 +0100 <Inst> IO (Maybe String)
2022-01-05 02:51:36 +0100 <Axman6> jackdk: ^ just got Ed'd, I have regrets
2022-01-05 02:51:38 +0100 <EvanR> Maybe is there so you have to case analyze it and deal with Nothings
2022-01-05 02:51:40 +0100 <jackdk> Axman6: https://hackage.haskell.org/package/acme-smuggler perhaps?
2022-01-05 02:51:52 +0100 <Inst> I was assuming the bind instance for maybe handles it
2022-01-05 02:51:53 +0100 <edwardk> for axman https://www.irccloud.com/pastebin/t28Y6Ti4/thread-safe.hs
2022-01-05 02:52:12 +0100 <Inst> so, at this point, then, I should run a case x of, to get to the string inside?
2022-01-05 02:52:17 +0100 <Inst> it feels like >>= is confused
2022-01-05 02:52:19 +0100 <Axman6> Inst: but the function passed to >>= for IO needs to have type: a -> IO b
2022-01-05 02:52:40 +0100 <EvanR> > Just "foo" >>= \str -> return (reverse str)
2022-01-05 02:52:41 +0100 <Inst> so basically, >>= is pretty useless when dealing with nested monads of different types?
2022-01-05 02:52:42 +0100 <lambdabot> Just "oof"
2022-01-05 02:52:47 +0100 <jackdk> >>= is not confused - it is the >>= for IO
2022-01-05 02:52:48 +0100 <EvanR> it doesn't remove a Maybe
2022-01-05 02:52:50 +0100yauhsien(~yauhsien@61-231-58-217.dynamic-ip.hinet.net)
2022-01-05 02:53:13 +0100 <EvanR> it lets you operate on the Just value if there is one
2022-01-05 02:53:14 +0100 <Inst> so when I define >>=, the type signature that's either hand-written, spawned by autopilots, or inferred by type checker
2022-01-05 02:53:24 +0100 <jackdk> Inst: monad transformers are a solution to this problem. I recommend not reading about them until you're used to writing things out by hand
2022-01-05 02:53:38 +0100 <Inst> i know
2022-01-05 02:53:44 +0100 <Axman6> edwardk: ok, this I can deal with... now is this morally safe to use unsafePerformIO on (twice)?
2022-01-05 02:53:48 +0100 <Inst> monad transformers are basically the "I bashed my head into the wall 30 times and I give up"
2022-01-05 02:53:50 +0100 <Axman6> I guess it is now
2022-01-05 02:53:52 +0100 <edwardk> oh you can drop the 'output' i forgot
2022-01-05 02:53:56 +0100 <edwardk> yes
2022-01-05 02:54:29 +0100 <EvanR> not exactly a beginner tool
2022-01-05 02:54:34 +0100 <Inst> when I use >>=, it only infers a single type and with dissimilar monad nesting levels, it tells me to scram?
2022-01-05 02:54:50 +0100 <Axman6> Inst: this is why I was trying to lead you to something that wasn't using the monsd instance for both Maybe an dIO
2022-01-05 02:55:10 +0100 <EvanR> a single use of >>= will interpreted only 1 way
2022-01-05 02:55:15 +0100 <Axman6> stop thinking of Mayb e as a monad and don't use its (>>=)
2022-01-05 02:55:27 +0100 <jackdk> ^ good advice, for now
2022-01-05 02:56:18 +0100 <EvanR> >>= won't just do all effects of all monads in sight, it's 1 monad at a time
2022-01-05 02:56:19 +0100alx741(~alx741@157.100.93.160)
2022-01-05 02:56:19 +0100 <Axman6> edwardk: does that version memoise? looks like it'll call t2a t for every call - the fiew pattern trick before looked like a good way to do this
2022-01-05 02:56:26 +0100 <edwardk> you can get fancier and pass (t2a a) as the argument to the ioref and read it out of there and save some thunk construction in exchange for an unncessary read from the thunk
2022-01-05 02:56:37 +0100 <EvanR> so might as well deal with 1 monad at a time xD
2022-01-05 02:56:48 +0100 <EvanR> at most
2022-01-05 02:56:51 +0100 <Inst> spawned a case of
2022-01-05 02:56:54 +0100 <edwardk> it makes thunk for the evaluation of t2a t every time, but only ever returns the first thunk
2022-01-05 02:57:02 +0100 <Inst> it's complaining it expects IO (IO Handle)
2022-01-05 02:57:18 +0100 <Inst> instead of Maybe IO Handle
2022-01-05 02:57:33 +0100 <Axman6> hmm, hand on, `output` isn't used - one of ref1 or ref2 should be output?
2022-01-05 02:57:35 +0100 <EvanR> I think your IDE is confusing you more
2022-01-05 02:57:41 +0100shapr(~user@2601:7c0:c202:5190:5625:d6db:b1c1:a272)
2022-01-05 02:57:49 +0100 <edwardk> oh, that one is wrong i forgot to write in the base case, because i'd started to do the change to storing 'a' in the ioref but didn't finish, one sec
2022-01-05 02:57:51 +0100 <Axman6> Inst: you _do not want Maybe (IO Handle)
2022-01-05 02:57:54 +0100 <Axman6> _
2022-01-05 02:58:34 +0100 <Inst> i mean, there's an ugly hack i've gotten to work
2022-01-05 02:58:49 +0100 <edwardk> https://www.irccloud.com/pastebin/Dio1MtKJ/
2022-01-05 02:58:52 +0100 <Inst> just have the first function print out IO String, and hope there's no way for openFileDialogs to legitimately generate the specific string
2022-01-05 02:59:05 +0100 <edwardk> there/ i forgot the 'priming' writeIORef basically
2022-01-05 02:59:12 +0100 <Inst> then test for the string on the function calling it
2022-01-05 02:59:21 +0100 <EvanR> what are you actually trying to do again
2022-01-05 02:59:58 +0100 <Inst> hopefully, once I stop sucking at Haskell, build Teach.Effects so that learners of Haskell from non-programmer backgrounds
2022-01-05 03:00:17 +0100tomku(~tomku@user/tomku) (Ping timeout: 240 seconds)
2022-01-05 03:00:39 +0100 <Axman6> I thought that `writeIORef ref1 a` wasn't actually needed, but realised that it's used for just the first call for each t. got it
2022-01-05 03:00:39 +0100 <Inst> can get into Effects early on and put in their problem sets as .exes (or whatever equivalent binary) that can parse data from files and network files, as well as output data into local files
2022-01-05 03:00:48 +0100 <edwardk> https://www.irccloud.com/pastebin/7zTQAoyz/
2022-01-05 03:00:49 +0100 <EvanR> Effects
2022-01-05 03:01:12 +0100 <Inst> TBH I'm starting to think this was a bad idea, that you can't teach IO early like this
2022-01-05 03:01:12 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 03:01:14 +0100 <edwardk> ^- that version stuffs the answer in the ioref as a thunk, but doesn't do it, then copies it out to all future refs
2022-01-05 03:01:26 +0100 <Inst> the thing is, I want it to hook into a GUI
2022-01-05 03:01:44 +0100 <Axman6> Inst: personally I thnk teaching IO using do notation works fine, I've done it with plenty of first year students
2022-01-05 03:01:48 +0100 <EvanR> IO is fine, it's not necessary to fully understand theory of monads to just do basic stuff like read and write files
2022-01-05 03:01:53 +0100 <edwardk> avoids allocating the tuple every time, no 'undefineds' remains threadsafe, etc.
2022-01-05 03:02:23 +0100 <EvanR> some kind of Effects library, that is what I'm skeptical about, for total beginners
2022-01-05 03:02:38 +0100 <edwardk> if you want to go further you could pass in a function that consumes an 'a' rather than an IORef, but it seems superfluous
2022-01-05 03:02:58 +0100 <Inst> oh okay, but I'm sort of over-doing it by insisting on hand-crafting a hack linking TinyFileDialogs (UI / API caller) to my stuff in such a way that a beginner could understand what's going on
2022-01-05 03:03:02 +0100 <Axman6> yeah this is fine
2022-01-05 03:03:07 +0100pragma-(~chaos@user/pragmatic-chaos) (Bye!)
2022-01-05 03:03:08 +0100 <edwardk> because to implement it you'd need to do the ioref dance anyways
2022-01-05 03:03:20 +0100 <Inst> EvanR: yeah, I'm discovering the problem
2022-01-05 03:03:22 +0100kvakil(~keyhan@2601:645:8500:4fc0:2df5:f7d6:e89:c64b) (Remote host closed the connection)
2022-01-05 03:03:27 +0100 <Inst> understanding IO, as opposed to just doing it, is a nightmare
2022-01-05 03:03:47 +0100 <Axman6> Inst: I think you should try and get this wqorking using do notation for the IO stuff and avoid using anything Monad related for Maybe. then you can desugar it
2022-01-05 03:04:06 +0100 <Inst> i have a working variant with the "nothing" logic in main
2022-01-05 03:04:23 +0100 <edwardk> finally you can replace all IOs with ST s, and the unsafePerformIOs with unsafePerformST to feel a tiny bit better about yourself or judicious trickery around unsafeInterleaveST to feel slightly more smug, but its all the same
2022-01-05 03:04:24 +0100 <Axman6> I don't think that's the problem, you haven't developed the skills of typechecking in your head yet, so you're getting unexpected results
2022-01-05 03:04:41 +0100 <Inst> i can typecheck just well when it's not nested dissimilar monads
2022-01-05 03:04:48 +0100 <Inst> it's only when it's nested dissimilar monads when everything goes to hell
2022-01-05 03:04:55 +0100 <EvanR> the fact that Maybe is a monad shouldn't even matter
2022-01-05 03:04:59 +0100 <EvanR> forget this fact xD
2022-01-05 03:05:20 +0100 <Inst> thank you for being encouraging
2022-01-05 03:05:23 +0100 <EvanR> it's not helping you
2022-01-05 03:05:28 +0100 <Inst> tbh i wasted like 6 hours of Functional Programming discord's time today
2022-01-05 03:05:32 +0100 <Axman6> so follow our advice and stop treating Maybe as monad, it's not even a useful thing to be thinking about at the moment
2022-01-05 03:06:11 +0100 <Axman6> in fact, the code you want to write just needs fmap at the moment
2022-01-05 03:07:15 +0100 <Inst> i guess i haven't built up the intuition for it
2022-01-05 03:07:17 +0100 <Axman6> since you're starting with IO (Maybe [Text]) and you want IO (Maybe String) that's just fmap of a function of type Maybe [Text] -> Maybe String
2022-01-05 03:07:27 +0100 <Inst> https://cdn.discordapp.com/attachments/528863657363505159/928107214500151336/unknown.png
2022-01-05 03:07:42 +0100 <Axman6> which you have written a few times already, but added in unnexessary IO stuff to complicate thing
2022-01-05 03:08:01 +0100 <Inst> i have the IO (Maybe String)
2022-01-05 03:08:02 +0100 <EvanR> data Maybe a = Nothing | Just a
2022-01-05 03:08:15 +0100 <Inst> at this point I need Maybe IO Handle or IO Maybe Handle or IO Maybe IO Handle
2022-01-05 03:08:29 +0100 <EvanR> damn the lack of parens is confusing
2022-01-05 03:08:40 +0100 <Axman6> the -> Nothing has type Maybe a, you need IO (Maybe (IO Handle))
2022-01-05 03:08:45 +0100 <Inst> Maybe (IO Handle) or IO (Maybe Handle) or IO (Maybe (IO Handle))
2022-01-05 03:08:52 +0100ensyde(~ensyde@2600:1702:2e30:1a40:d1f0:4880:2e12:11ff) (Quit: Leaving)
2022-01-05 03:09:33 +0100 <EvanR> handling Maybe is as simple as case analysis on those two cases above
2022-01-05 03:09:50 +0100 <Axman6> both branches of that case statement need to return IO <something>
2022-01-05 03:10:10 +0100 <Axman6> but at the moment, they are both return Maybe <something>
2022-01-05 03:10:18 +0100 <Axman6> IO /= Maybe
2022-01-05 03:10:26 +0100 <Axman6> how do you go from a to IO a?
2022-01-05 03:13:22 +0100 <Axman6> jackdk: just looked at acma-smuggle. I hate it
2022-01-05 03:13:27 +0100 <Axman6> acme*
2022-01-05 03:14:10 +0100 <jackdk> Axman6: ^_^
2022-01-05 03:14:24 +0100 <monochrom> smuggler*
2022-01-05 03:16:32 +0100 <Inst> thank you
2022-01-05 03:16:35 +0100 <Inst> i love you all
2022-01-05 03:16:46 +0100 <Inst> cancer.hs, interpreted)
2022-01-05 03:16:53 +0100 <Inst> Ok, one module loaded.
2022-01-05 03:17:29 +0100alx741(~alx741@157.100.93.160)
2022-01-05 03:18:21 +0100 <Inst> inb4 folks on Functional Programming Discord start going "AAAAAAAAAAH" and complain it should be written in Monad Transformers, etc etc
2022-01-05 03:18:33 +0100califax-(~califax@user/califx)
2022-01-05 03:18:54 +0100 <jackdk> eventually you will want to learn transformers and MTL, but not today.
2022-01-05 03:19:02 +0100 <jackdk> good work and good luck moving forward
2022-01-05 03:19:20 +0100 <Inst> https://pastebin.com/X4GyvTXP
2022-01-05 03:19:25 +0100 <Inst> thanks
2022-01-05 03:21:23 +0100 <Inst> here's the monolithic prototype:
2022-01-05 03:21:25 +0100 <Inst> https://cdn.discordapp.com/attachments/528863657363505159/928110841264488478/unknown.png
2022-01-05 03:21:49 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 03:22:00 +0100califax(~califax@user/califx) (Ping timeout: 276 seconds)
2022-01-05 03:22:01 +0100califax-califax
2022-01-05 03:23:00 +0100 <EvanR> you can save yourself a lot of space munging just indenting once for each level (when possible)
2022-01-05 03:23:22 +0100 <EvanR> using whatever, 2 space per tab like you did
2022-01-05 03:23:51 +0100 <EvanR> instead of 2 and a half spaces per tab
2022-01-05 03:24:03 +0100 <EvanR> er, 2.5 indents per level
2022-01-05 03:24:09 +0100 <Inst> i know
2022-01-05 03:24:46 +0100 <Inst> i have 5 different beginner haskell textbooks, the textbook on functional programming datastructures by okasaki, algorithms by bird, "the book of monads" by that Spanish guy
2022-01-05 03:24:54 +0100 <EvanR> coerceList ??
2022-01-05 03:24:57 +0100 <Inst> one of them says indent twice
2022-01-05 03:25:07 +0100 <EvanR> oh this is like string conversion
2022-01-05 03:25:13 +0100 <Inst> that's probably the wrong term, I picked that up from Haskellbook / Haskell Programming from First Principles
2022-01-05 03:25:33 +0100 <EvanR> by indent twice they might mean at least 2 space per tab
2022-01-05 03:25:40 +0100 <Inst> the original plan was to use a friend who's a good social media influencer
2022-01-05 03:25:53 +0100 <Inst> to get her to attract people to my course, once the prototypes etc were done and we had it perfected
2022-01-05 03:26:08 +0100 <Inst> now i'm planning to pay people MMO gold to do it
2022-01-05 03:27:02 +0100 <Inst> unfortunately, the friend ran off to Python and is taking a 3 week course on it
2022-01-05 03:27:04 +0100 <EvanR> you are paying people to take your Haskell course
2022-01-05 03:27:07 +0100 <Inst> yes
2022-01-05 03:27:17 +0100 <Inst> I'm very obsessed with Haskell, maybe it's autism or whatever
2022-01-05 03:27:28 +0100 <Inst> recursion, etc, it gets me going
2022-01-05 03:27:41 +0100 <Inst> I was also planning to get a friend of my friend, who's an art school graduate, to design a mascot for Haskell
2022-01-05 03:28:02 +0100 <Inst> and pay her like 40, or something, then eventually try to get Haskell Foundation to cover me
2022-01-05 03:28:07 +0100 <Inst> ballooned into 200
2022-01-05 03:28:09 +0100 <Inst> too elaborate
2022-01-05 03:28:17 +0100sagax(~sagax_nb@user/sagax) (Ping timeout: 240 seconds)
2022-01-05 03:29:22 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 03:29:22 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 03:29:22 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 03:29:25 +0100mmhat(~mmh@55d49f73.access.ecotel.net) (Ping timeout: 240 seconds)
2022-01-05 03:29:49 +0100 <Inst> my goal is to get the language to twice the difficulty of Python for new learners
2022-01-05 03:30:31 +0100 <Inst> then claim, "you're smart, don't learn Python, learn Haskell instead"
2022-01-05 03:30:33 +0100qwedfg(~qwedfg@user/qwedfg) (Read error: Connection reset by peer)
2022-01-05 03:32:39 +0100qwedfg(~qwedfg@user/qwedfg)
2022-01-05 03:32:56 +0100mikail_(~mikail@94.1.27.214)
2022-01-05 03:33:09 +0100neurocyte09(~neurocyte@IP-045128182210.dynamic.medianet-world.de)
2022-01-05 03:33:09 +0100neurocyte09(~neurocyte@IP-045128182210.dynamic.medianet-world.de) (Changing host)
2022-01-05 03:33:09 +0100neurocyte09(~neurocyte@user/neurocyte)
2022-01-05 03:35:01 +0100neurocyte0(~neurocyte@user/neurocyte) (Ping timeout: 240 seconds)
2022-01-05 03:35:01 +0100neurocyte09neurocyte0
2022-01-05 03:35:17 +0100mikail(~mikail@2a02:c7f:bc1f:4a00:1f95:fc24:559b:d565) (Ping timeout: 240 seconds)
2022-01-05 03:36:16 +0100lavaman(~lavaman@98.38.249.169)
2022-01-05 03:37:28 +0100xff0x(~xff0x@2001:1a81:53aa:f200:f1a6:48ec:fa1:3025) (Ping timeout: 268 seconds)
2022-01-05 03:38:47 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 03:39:11 +0100xff0x(~xff0x@2001:1a81:53e7:b00:1d48:798f:68c9:16a8)
2022-01-05 03:40:01 +0100alx741(~alx741@157.100.93.160)
2022-01-05 03:40:54 +0100Jing(~hedgehog@2604:a840:3::103c)
2022-01-05 03:43:04 +0100mmhat(~mmh@55d49507.access.ecotel.net)
2022-01-05 03:44:36 +0100 <dsal> openFilePath looks like `fmap unpack <$> openFileDialog "" "" [] "" False`
2022-01-05 03:45:14 +0100Instsighs
2022-01-05 03:45:14 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 03:46:10 +0100 <EvanR> fmap (fmap (fmap (...
2022-01-05 03:46:41 +0100 <Inst> why would someone [Text] anyways?
2022-01-05 03:46:47 +0100nhatanh02(~satori@123.24.172.30)
2022-01-05 03:47:11 +0100 <dsal> Oh, I missed that that was partial.
2022-01-05 03:47:11 +0100 <EvanR> the lines of a file is a thing
2022-01-05 03:47:26 +0100tomku(~tomku@user/tomku)
2022-01-05 03:47:29 +0100 <Inst> it loads up the bleeding path of a filename
2022-01-05 03:47:44 +0100 <dsal> It also asks for more than one filename.
2022-01-05 03:47:53 +0100 <dsal> Some programs work on more than one file.
2022-01-05 03:47:53 +0100 <EvanR> oh, filepicker, yeah
2022-01-05 03:48:04 +0100 <EvanR> multi-file select
2022-01-05 03:48:46 +0100 <dsal> So `fmap (unpack . head) <$> openFileDialog "" "" [] "" False` I guess.
2022-01-05 03:49:37 +0100 <EvanR> better pick a file, any file, or I'll fuckin crash
2022-01-05 03:50:01 +0100 <Inst> <$>, I forget, what's that operator? Should be fmap?
2022-01-05 03:50:08 +0100 <EvanR> it's fmap
2022-01-05 03:50:54 +0100 <Inst> EvanR: well, doing it in a hacky way is relatively easy
2022-01-05 03:51:04 +0100 <Inst> just dump random stuff, bind to fh or something
2022-01-05 03:51:08 +0100 <Inst> then cite fh
2022-01-05 03:51:09 +0100 <dsal> Partial functions are just deferred regrets.
2022-01-05 03:51:55 +0100 <Inst> also, iirc, i've ran it before, i don't think it'll crash
2022-01-05 03:51:59 +0100 <EvanR> Let It Crash
2022-01-05 03:52:01 +0100 <Inst> returns Nothing
2022-01-05 03:52:03 +0100 <dsal> It'll definitely crash.
2022-01-05 03:52:12 +0100 <Inst> hence the fucking Maybe that drove me nuts for 18 hours
2022-01-05 03:52:15 +0100 <EvanR> Fail Fast Fail Often
2022-01-05 03:52:42 +0100 <Inst> one of the annoying things about Haskell, as opposed to other languages, is that your functions can't return stuff of different types
2022-01-05 03:52:44 +0100 <EvanR> Avoid Success At All Costs
2022-01-05 03:52:45 +0100 <Inst> unless you do forall, iirc
2022-01-05 03:52:57 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2022-01-05 03:53:03 +0100 <dsal> It's a bad API, though. It looks like the Boolean at the end defines the size of the results. It also does it incorrectly.
2022-01-05 03:53:08 +0100 <EvanR> more like in those languages everything is the same type
2022-01-05 03:53:11 +0100 <dsal> Inst: What do you mean? Sure it can.
2022-01-05 03:53:13 +0100 <EvanR> e.g. Dynamic
2022-01-05 03:53:58 +0100 <Inst> it's annoying because if i'm trying to do control flows, i can't have it arbitrarily branch
2022-01-05 03:54:09 +0100 <Inst> has to have some kind of evaluation call that returns the same type... oh wait
2022-01-05 03:54:18 +0100 <dsal> I'm sorry you feel that way. I don't seem to have that issue.
2022-01-05 03:54:23 +0100 <EvanR> data Javascript = JSNum Double | JSString Text | JSArray (Vector Javascript) | ...
2022-01-05 03:54:42 +0100 <EvanR> enjoy
2022-01-05 03:54:46 +0100 <Inst> yeah just define a type for controlling stuff
2022-01-05 03:55:10 +0100 <dsal> Your limitations aren't language limitations.
2022-01-05 03:55:39 +0100 <Inst> i don't mind if you call me dumb
2022-01-05 03:56:18 +0100 <dsal> Haskell's the easiest language I've worked in over the last few years. If I have a problem, it's usually because I'm trying to do something that I'd later regret if I succeeded.
2022-01-05 03:56:47 +0100 <dsal> I'm not saying you're dumb. But you're saying things about the language that aren't about the language… they're about you. The language lets you do all kinds of things.
2022-01-05 03:57:33 +0100lavaman(~lavaman@98.38.249.169) (Read error: Connection reset by peer)
2022-01-05 03:57:33 +0100awschnap(~lavaman@98.38.249.169)
2022-01-05 03:57:33 +0100 <EvanR> control flow is one of those things that don't have to be built into haskell, because laziness
2022-01-05 03:57:36 +0100 <Inst> yeah, just a bit demoralized, first foray into trying "imperative" programming in Haskell
2022-01-05 03:58:15 +0100 <EvanR> so instead you have a small fortune of ways to control flow, some of which are techniques, some of which are in libraries
2022-01-05 03:58:45 +0100 <Inst> I tend to sing praises of Whitington's book, it's absolutely great, intros data structures and algorithms
2022-01-05 03:58:52 +0100 <EvanR> just checking a Maybe however is not something that requires much ingenuity
2022-01-05 03:59:05 +0100 <Inst> Either is probably better
2022-01-05 03:59:29 +0100 <dsal> Either complicates a lot of things and doesn't behave all the ways you'd expect.
2022-01-05 03:59:35 +0100 <dsal> Maybe is quite consistent.
2022-01-05 03:59:41 +0100joo-_(~joo-_@fsf/member/joo--) (Ping timeout: 268 seconds)
2022-01-05 03:59:50 +0100 <Inst> just wish there were a way to learn / teach Haskell so you could be making effectual programs by the end of the first or second week of the course (if it were 3-4 credit uni)
2022-01-05 04:00:45 +0100 <EvanR> there is
2022-01-05 04:00:49 +0100 <Inst> really?
2022-01-05 04:00:55 +0100 <EvanR> sure
2022-01-05 04:01:02 +0100 <Inst> i mean beyond the main = putStrLn "Hello World" nonsense
2022-01-05 04:01:11 +0100joo-_(~joo-_@87-49-147-115-mobile.dk.customer.tdc.net)
2022-01-05 04:01:11 +0100joo-_(~joo-_@87-49-147-115-mobile.dk.customer.tdc.net) (Changing host)
2022-01-05 04:01:11 +0100joo-_(~joo-_@fsf/member/joo--)
2022-01-05 04:01:15 +0100 <dsal> I'm not convinced trying to learn things in a hurry is best for most people.
2022-01-05 04:01:23 +0100 <EvanR> plenty of resources and war stories from people who do this for a living
2022-01-05 04:01:36 +0100 <Inst> oh, I could look up the ANU course
2022-01-05 04:01:57 +0100 <dsal> @where cs194
2022-01-05 04:01:57 +0100 <lambdabot> I know nothing about cs194.
2022-01-05 04:02:05 +0100 <Inst> the UPenn one
2022-01-05 04:02:11 +0100 <dsal> https://www.seas.upenn.edu/~cis194/fall16/
2022-01-05 04:02:14 +0100 <Inst> the reason I'm crazy about Haskell is that for whatever stupid reason
2022-01-05 04:02:23 +0100 <Inst> C++ never clicked for me, neither did Basic, Visual Basic, etc
2022-01-05 04:02:44 +0100 <Inst> I think I tried a few Python tutorials
2022-01-05 04:03:14 +0100 <Inst> this one did, would be fascinating if you could start targeting newbies, I wonder what it'd look like on a college application if the applicant
2022-01-05 04:03:14 +0100yauhsien(~yauhsien@61-231-58-217.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-01-05 04:03:18 +0100 <EvanR> one of the insights I got from Haskell is a better appreciation for other languages, boring industrial, also languages "beyond" haskell
2022-01-05 04:03:19 +0100 <dsal> Haskell's definitely easier than C++. heh
2022-01-05 04:03:28 +0100alx741(~alx741@157.100.93.160)
2022-01-05 04:03:28 +0100 <Inst> posted Github repositories for Haskell
2022-01-05 04:03:33 +0100 <EvanR> tooling around with Python forever does not help your soul
2022-01-05 04:03:44 +0100 <Axman6> Inst: Based on what I've seen, I feel like you're not too far off from having haskell click for you, you're pretty close. but you're making the same mistakes we all made too
2022-01-05 04:03:54 +0100 <EvanR> but all languages have their charms
2022-01-05 04:04:04 +0100 <Inst> you know Whitington's book, right?
2022-01-05 04:04:09 +0100yauhsien(~yauhsien@61-231-58-217.dynamic-ip.hinet.net)
2022-01-05 04:04:09 +0100sub0(~bc8147f2@cerf.good1.com)
2022-01-05 04:04:16 +0100 <Inst> "Haskell From the Very Beginning"
2022-01-05 04:04:28 +0100 <Inst> I spent 12-16 hours hacking at one of the problems with binary trees
2022-01-05 04:04:29 +0100 <Axman6> Inst: also, I and jackdk have both been involved with tutoring for the ANU couse (and the NICTA/Data61/System-F course too, and dibblego wrote most of it)
2022-01-05 04:04:35 +0100 <Inst> oh wow
2022-01-05 04:04:46 +0100 <Inst> enjoying your reverse spiralling toilets? :)
2022-01-05 04:05:08 +0100 <Axman6> Who even has toilets that spiral, that’s inefficient
2022-01-05 04:05:17 +0100 <jackdk> Inst: and our summer Christmases
2022-01-05 04:05:28 +0100 <Inst> wondering if Aus actually leads the world, instead of the Japanese, in toilet technology
2022-01-05 04:05:33 +0100 <Inst> best anti-Chinese weapon you have
2022-01-05 04:05:45 +0100 <Inst> their premier in the 1990s disappeared to one of your bathrooms, went missing from a conference
2022-01-05 04:05:54 +0100 <Inst> turns out he was disassembling and studying your toilets
2022-01-05 04:05:55 +0100 <Axman6> Javing lived in Japan, their toilets are definitely superior
2022-01-05 04:06:10 +0100 <Axman6> H*
2022-01-05 04:06:41 +0100awschnap(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-01-05 04:06:59 +0100 <Inst> let me look it up again
2022-01-05 04:07:17 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-01-05 04:07:21 +0100 <Inst> tbh i think reaching imperative programmers is like a dead end, because they'll just get the functional concepts dumped into their own languages
2022-01-05 04:07:36 +0100 <Inst> better to start with amateurs, students, etc
2022-01-05 04:07:42 +0100 <dsal> lol
2022-01-05 04:07:56 +0100 <Inst> https://cs.anu.edu.au/courses/comp1100/labs/01/
2022-01-05 04:08:09 +0100 <jackdk> I'm mostly here for the types. FP is a consequence of wanting good types.
2022-01-05 04:08:25 +0100 <dsal> The opinion to understanding ratio is kind of hilarious.
2022-01-05 04:09:02 +0100 <Axman6> that's one of the reasons ANU uses Haskell, much more of an even playing field, prople who know programming before they arrive don't know Haskell
2022-01-05 04:09:02 +0100 <EvanR> yes advanced types in imperative languages are mildly terrifying
2022-01-05 04:10:30 +0100 <Inst> which was whitington's line, i think he was teaching OCaml at Cambridge
2022-01-05 04:10:37 +0100yauhsien(~yauhsien@61-231-58-217.dynamic-ip.hinet.net) (Ping timeout: 240 seconds)
2022-01-05 04:10:54 +0100 <Inst> FP gives everyone an even playing field
2022-01-05 04:11:02 +0100Axman6can't even load the ANU link above
2022-01-05 04:11:17 +0100 <Inst> https://cs.anu.edu.au/courses/comp1100/
2022-01-05 04:11:52 +0100 <Axman6> yes, it's not responding for me
2022-01-05 04:11:59 +0100 <BrokenClutch> FP is too dense e complex. Like, you don't have the same flow you have with imperative languages
2022-01-05 04:12:13 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Ping timeout: 240 seconds)
2022-01-05 04:12:27 +0100 <Inst> got it working
2022-01-05 04:12:30 +0100 <dsal> How is FP more complex than imperative languages? I find the opposite.
2022-01-05 04:12:52 +0100 <EvanR> well, my FP solutions to advent of code disagree xD
2022-01-05 04:12:55 +0100 <Inst> FP doing imperative stuff seems more complex
2022-01-05 04:12:55 +0100 <BrokenClutch> I actually prefer FP, I think it's easier to reason about. But imperative makes more sense for people, It's easier to think on a sequence of commands than some complex monad computation
2022-01-05 04:13:06 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 04:13:17 +0100 <EvanR> Inst, you should try doing functional stuff in a non-functional language xD
2022-01-05 04:13:20 +0100 <dsal> Imperative makes sense to people who were trained that way.
2022-01-05 04:13:31 +0100lavaman(~lavaman@98.38.249.169)
2022-01-05 04:13:42 +0100 <Inst> when I was trying to learn C++, people in #C++ and ##programming were wagging their fingers
2022-01-05 04:13:42 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-01-05 04:13:55 +0100 <Inst> because I tried to run stuff with recursive loops
2022-01-05 04:13:58 +0100 <EvanR> BrokenClutch, this is why I only resort to monads .. as a last resort
2022-01-05 04:14:02 +0100 <Inst> "we don't have TCO, this is bad"
2022-01-05 04:14:05 +0100 <BrokenClutch> I've tried both with my 60 yrld dad and other people. They grasp imperative faster than FP
2022-01-05 04:14:42 +0100 <BrokenClutch> The idea of "statement" really helps
2022-01-05 04:14:56 +0100 <EvanR> well FP has a math component, specifically, algebraic skills like substituting
2022-01-05 04:15:04 +0100 <EvanR> many people never heard of this
2022-01-05 04:15:19 +0100 <EvanR> meanwhile, "goto" is self evident
2022-01-05 04:15:31 +0100 <Inst> i actually learned recursion in terms of goto
2022-01-05 04:16:01 +0100 <Inst> also to finish the comment about binary trees, it was to combine two binary trees
2022-01-05 04:16:17 +0100 <Inst> Whitington's solution was to melt the trees down into lists and then rebuild them
2022-01-05 04:16:29 +0100 <Inst> I got an accumulator set up after hours of moaning
2022-01-05 04:16:37 +0100 <Inst> was incredibly satisfying
2022-01-05 04:17:01 +0100 <Inst> i.e, one tree would be treated as an accumulator, the other tree would be recursively dismantled
2022-01-05 04:18:02 +0100 <BrokenClutch> I don't think FP will get popular, some FP things could get, but FP no.
2022-01-05 04:18:29 +0100 <BrokenClutch> I really like FP, it's easier to reason about, give me less headaches and keep things more fun
2022-01-05 04:18:32 +0100 <EvanR> I have to report on my own attempt to learn programming in BASIC, using only goto I had a very hard time structuring any program
2022-01-05 04:18:36 +0100 <Inst> there are some people for whom FP is native
2022-01-05 04:18:38 +0100 <EvanR> very mysterious to me as a 6 year old
2022-01-05 04:18:48 +0100 <Inst> satisfying as an 8 year old
2022-01-05 04:19:00 +0100 <Inst> or was that 11 year old? Been decades.
2022-01-05 04:19:07 +0100 <EvanR> I was like how the F could zork ever work like this
2022-01-05 04:19:58 +0100 <Inst> i mean there are people for whom FP is native, i.e, FP seems to have lower working memory requirements than imperative
2022-01-05 04:20:01 +0100 <BrokenClutch> I will probably try scheme vs go, when showing people FP vs imperative. I will write the results to see if there is some difference : D
2022-01-05 04:20:18 +0100 <jackdk> I find that explaining evaluation by substitution (especially in a nonstrict language) is much easier to teach than evaluation by moving an instruction pointer around while keeping some scratch space
2022-01-05 04:20:20 +0100 <Inst> hence why I talk about non-programmers, i.e, if they have poor working memory and FP sticks better
2022-01-05 04:20:32 +0100 <dsal> Inst: What does "native" mean? Nobody is born with any particular programming skills.
2022-01-05 04:20:40 +0100 <Inst> dsal: I mean, a type of intellect
2022-01-05 04:21:18 +0100 <EvanR> I can guarantee you the BASIC manual made no particular sense to me as a child
2022-01-05 04:21:21 +0100 <BrokenClutch> Man, this does not make sense. Like, haskellborn?
2022-01-05 04:21:32 +0100 <Inst> there was a BASIC manual?
2022-01-05 04:21:34 +0100 <EvanR> so it couldn't have been especially intuitive
2022-01-05 04:21:37 +0100 <EvanR> I had a manual
2022-01-05 04:21:52 +0100 <Inst> like, my attempts at learning imperative programming were ruined because I couldn't read the code in the textbooks
2022-01-05 04:21:57 +0100 <EvanR> though copying the code listings from the back worked
2022-01-05 04:22:04 +0100 <BrokenClutch> EvanR: I could even take a bath, like, children are f dumb
2022-01-05 04:22:04 +0100 <Inst> took way too long to process what the hell the code was supposed to do and what it actually did
2022-01-05 04:22:26 +0100 <BrokenClutch> Inst: Imperative code is harder to reason about it
2022-01-05 04:22:33 +0100 <BrokenClutch> This i can agree on
2022-01-05 04:22:37 +0100 <EvanR> at least, once it gets off 1 page
2022-01-05 04:22:55 +0100 <BrokenClutch> couldn't take a bath*
2022-01-05 04:23:20 +0100 <Inst> i don't think my math background is particularly good
2022-01-05 04:23:38 +0100 <jackdk> Is anyone about who is connected with the stackverse? I am about to ship a PR to amazonka-dynamodb that requires `hashable >=1.3.4.0` (`instance (Hashable k, Hashable v) => Hashable (Map k v)`). Latest stackage snapshots for GHC 8.10.7 still lock to `hashable-1.3.0.0`. What are the odds of this ever changing (i.e., should I work around their reluctance to update things)?
2022-01-05 04:23:53 +0100 <Inst> okay, i'll idle off, need to read my textbooks
2022-01-05 04:24:50 +0100 <Inst> as in, i dropped real analysis twice when i was younger, but got past linear algebra track with good grades
2022-01-05 04:25:21 +0100 <Inst> but haskell seemed more intuitive to me, i.e, i'm stating that there are probably more people whose intellects take more naturally to FP than imperative, and these people are probably non-coders because most code is imperative
2022-01-05 04:25:47 +0100 <BrokenClutch> Inst: Or you had bad teachers
2022-01-05 04:25:49 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-01-05 04:25:49 +0100finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-01-05 04:25:49 +0100finn_elijaFinnElija
2022-01-05 04:26:22 +0100 <dsal> Most code is buggy.
2022-01-05 04:26:53 +0100 <dsal> Imperative just means someone thinks they thought through all the details for something and wrote them down in a lot of detail for some machine to deal with.
2022-01-05 04:27:17 +0100 <dsal> We've got better abstractions. We can do things like state a goal and reuse stuff.
2022-01-05 04:27:22 +0100remexre(~remexre@user/remexre) (Remote host closed the connection)
2022-01-05 04:27:51 +0100 <dsal> And since we have a useful type system, we can do things like refactor code without being terribly afraid everything's about to break.
2022-01-05 04:27:59 +0100 <Inst> put another way, FP abstractions are harder to understand, but once you get them, they're easy to work with
2022-01-05 04:28:01 +0100 <BrokenClutch> Lot of imperative languages have good abstractions, lot of them don't even have types
2022-01-05 04:28:04 +0100 <Axman6> The majority of code that has been wirtten has been imperative because that's where we started (machine code -> assembly -> <dead languages> -> C -> ...) but that doesn't mean that it's inherently easier, it's just a more direct translation to what the machine executes. there's no reason we couldn't have started with FP
2022-01-05 04:28:18 +0100 <Inst> someone on FP discord
2022-01-05 04:28:23 +0100mmhat(~mmh@55d49507.access.ecotel.net) (Quit: WeeChat 3.4)
2022-01-05 04:28:30 +0100 <Inst> keeps on talking about the possibility of a machine that can do lambda calculus natively
2022-01-05 04:28:35 +0100 <dsal> FP abstractions aren't harder to understand. They just… exist.
2022-01-05 04:28:35 +0100 <Inst> i'm wondering if such a thing is possible
2022-01-05 04:28:38 +0100 <Axman6> ther's been a few
2022-01-05 04:28:41 +0100 <BrokenClutch> lisp machines
2022-01-05 04:28:42 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.4)
2022-01-05 04:28:45 +0100remexre(~remexre@user/remexre)
2022-01-05 04:28:47 +0100 <Axman6> the reduceron
2022-01-05 04:28:54 +0100 <Inst> but are they more performant than equivalent imperative machines?
2022-01-05 04:28:59 +0100 <BrokenClutch> no
2022-01-05 04:29:26 +0100 <BrokenClutch> Because people didn't put enough time I think, or because FP is bad. I don't think we researched enough.
2022-01-05 04:29:51 +0100alx741(~alx741@157.100.93.160)
2022-01-05 04:30:08 +0100 <Inst> somehow I get the feeling pure and mostly pure functional languages like OCaml / Haskell, etc, are probably best suited to being Python for Ivy Leaguers
2022-01-05 04:30:34 +0100 <EvanR> please don't put javascript-level of funding into hardware lambda calculus, until everyone involved in required to write a million lines of code in lambda calculus to make sure it's worth it
2022-01-05 04:30:35 +0100 <dsal> I'm not sure anyone knows what that means. Surely you don't.
2022-01-05 04:30:44 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-01-05 04:30:54 +0100 <EvanR> I say this because something better likely exists and is easier to hardware
2022-01-05 04:30:56 +0100 <Inst> I mean that I don't think that FP can displace imperative programming due to the ecosystem lead
2022-01-05 04:31:04 +0100 <dsal> python is "easy" to do a small throwaway thing in. Haskell is easier to write software in than python by far.
2022-01-05 04:31:26 +0100 <Inst> Python for Ivy Leaguers -> scripting / prototyping language for smart people
2022-01-05 04:31:52 +0100 <Inst> who are smart enough or have the type of intellect necessary to easily grasp the abstractions
2022-01-05 04:32:11 +0100Axman6is weaiting for ARM to add a Jazellescript extension to run Javascript natively
2022-01-05 04:32:14 +0100 <Axman6> waiting*
2022-01-05 04:32:18 +0100 <dsal> I don't use the abstractions because I'm smart -- I use them because I'm dumb.
2022-01-05 04:32:47 +0100 <Inst> but it takes a lot of intelligence to actually grasp the abstractions, no?
2022-01-05 04:32:54 +0100 <EvanR> I use abstractions because they're cool
2022-01-05 04:32:59 +0100 <Axman6> Inst: Facebook use Haskell for the whole spam filtering system, and specifically use it for people who aren't primarily programmers
2022-01-05 04:33:28 +0100Everything(~Everythin@37.115.210.35)
2022-01-05 04:33:38 +0100 <Inst> I use abstractions because I'm mentally disturbed and have a weird subjective experience when facing difficult ideas
2022-01-05 04:33:39 +0100 <dsal> You don't have to immediately grasp *every* abstraction, but my experience with people doing imperative languages is that they just reinvent the abstractions in every function, but are more creative with bugs.
2022-01-05 04:34:13 +0100 <Inst> as in, to make it worksafe, abstractions, ideas, etc, get me high
2022-01-05 04:34:21 +0100 <EvanR> some of the abstractions in haskell are just beautiful, if not particularly useful
2022-01-05 04:34:25 +0100 <Axman6> Inst: The majority of abstractions we use are _very_ simple - Monad is a good example, understanding the notion of "and then" is pretty easy, but it is also very abstract to learning all the ways it is applicable is difficult, precisely because the abstractions are so simple
2022-01-05 04:34:36 +0100 <Inst> yeah i finally understood today and yesterday
2022-01-05 04:34:39 +0100 <Inst> why people say monads are hard
2022-01-05 04:34:43 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 04:34:48 +0100 <Inst> monads as a concept aren't hard, understanding how to use them, on the other hand, is painful
2022-01-05 04:34:49 +0100 <EvanR> Functor, Applicative are beautiful and useful though
2022-01-05 04:34:55 +0100 <dsal> Oh good. Maybe you can explain to me why people say monads are hard.
2022-01-05 04:35:06 +0100 <Inst> because of poor branding
2022-01-05 04:35:18 +0100 <EvanR> monads are basically a meme
2022-01-05 04:35:19 +0100 <Inst> think Chevy Nova, which had to be rebranded in Hispanic markets because No Va -> No go
2022-01-05 04:35:24 +0100 <Axman6> I think a lot of that poor branding comes from people who don't understand them
2022-01-05 04:35:37 +0100 <Inst> rename them glorified boxes
2022-01-05 04:35:43 +0100 <EvanR> burritos
2022-01-05 04:35:47 +0100 <Axman6> "Monads are just a hack so you can do IO in Haskell" "Monads are just containers"
2022-01-05 04:35:49 +0100 <EvanR> night clubs
2022-01-05 04:35:55 +0100 <Inst> boxes with methods defined on them that make them predictable and useful
2022-01-05 04:35:57 +0100 <Axman6> Inst: how is a function a box?
2022-01-05 04:36:02 +0100 <Inst> actually
2022-01-05 04:36:03 +0100 <EvanR> don't ask that
2022-01-05 04:36:03 +0100 <Inst> in Chinese
2022-01-05 04:36:04 +0100 <Axman6> how is State a box?
2022-01-05 04:36:14 +0100 <Inst> functional literally means "contains numbers"
2022-01-05 04:36:24 +0100 <EvanR> "_ is a box because imagine a box with a button that when pressed, _ pops out"
2022-01-05 04:36:26 +0100 <Inst> erm, is literally composed of the word for container and numbers
2022-01-05 04:36:42 +0100 <EvanR> imagine an analogy in a box
2022-01-05 04:36:50 +0100 <Inst> imagine an analogy in an analogy
2022-01-05 04:36:59 +0100 <Axman6> you can join those analogy
2022-01-05 04:37:01 +0100 <Inst> why I love Haskell part 2323: I find recursion intrinsically hilarious
2022-01-05 04:37:04 +0100 <Axman6> therefore analogies are monads
2022-01-05 04:37:25 +0100 <EvanR> recursion is punk rock
2022-01-05 04:37:28 +0100 <Axman6> analogies*
2022-01-05 04:37:42 +0100 <Axman6> Imagine only being able to use loops, how pleb is that?
2022-01-05 04:38:17 +0100 <Inst> "Monads are strictly a typeclass in Haskell, for which types can be made instances of the Typeclass Monad by defining return/pure and >>= (or join), <*>, and fmap"
2022-01-05 04:38:30 +0100 <Axman6> "But I wanna look at both branches of the tree" "NO! You must add a data structure that represents the call tree you really wanted!"
2022-01-05 04:38:40 +0100 <Inst> see, I pissed off people on FP
2022-01-05 04:38:45 +0100 <Inst> by arguing that recursion is a form of looping
2022-01-05 04:38:48 +0100 <jackdk> "The Monad type class is a software engineering pattern to facilitate code reuse."
2022-01-05 04:38:55 +0100 <Axman6> looping is a subset of recursion
2022-01-05 04:39:07 +0100 <Axman6> jackdk wins
2022-01-05 04:39:18 +0100 <Inst> actually, the reason I like the box metaphor
2022-01-05 04:39:21 +0100 <jackdk> I just parrot the sayings of people smarter than me
2022-01-05 04:39:28 +0100 <Inst> is because boxes can be used in many ways
2022-01-05 04:39:38 +0100 <Axman6> the box metaphor is fundamentally wrong
2022-01-05 04:39:39 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 04:39:40 +0100 <EvanR> if a monad is "just a box", then what is a comonad / cobox
2022-01-05 04:39:54 +0100 <EvanR> also yes
2022-01-05 04:39:58 +0100 <Inst> so what's wrong with the box / container metaphor?
2022-01-05 04:40:19 +0100 <dsal> Like most metaphors, it artificially limits your understanding.
2022-01-05 04:40:24 +0100 <EvanR> box / container is often used as an analogy for basically anything or everything
2022-01-05 04:40:25 +0100 <Inst> houses are boxes, so are cars, so is clothing, in a way
2022-01-05 04:40:26 +0100 <Axman6> a monad is now a box, it a bowl, and because the existance of comonads, we can also program in COBOWL and earn a lot of money in finance
2022-01-05 04:40:26 +0100 <Inst> i see
2022-01-05 04:40:30 +0100 <jackdk> there is an `instance Monad ((->) r)` and functions are not boxes
2022-01-05 04:40:30 +0100 <EvanR> it's lost all meaning
2022-01-05 04:40:36 +0100 <Axman6> Inst: how is a function a box
2022-01-05 04:40:36 +0100 <dsal> Especially bad for monad because if it's a box, then you'd think you'd be able to take something out of it, but you can't take a value out of a monad.
2022-01-05 04:40:40 +0100 <dsal> (generally)
2022-01-05 04:40:49 +0100 <Inst> Axman6: are you making a sincere inquiry into Chinese?
2022-01-05 04:40:54 +0100 <Inst> 函数
2022-01-05 04:41:15 +0100 <EvanR> functions are often explained as a black box
2022-01-05 04:41:24 +0100 <EvanR> with input and output
2022-01-05 04:41:27 +0100 <Inst> contains numbers
2022-01-05 04:41:33 +0100 <Axman6> but then you view source and they become white boxes
2022-01-05 04:41:36 +0100 <Inst> that's the literal translation, i.e
2022-01-05 04:41:54 +0100 <Axman6> I have no idea what you're talking about
2022-01-05 04:41:56 +0100 <dsal> I don't think anyone cares about literal translations of Chinese here.
2022-01-05 04:42:03 +0100 <Inst> i mean a function is just a list corresponding unique inputs to outputs
2022-01-05 04:42:14 +0100ec(~ec@gateway/tor-sasl/ec) (Quit: ec)
2022-01-05 04:42:24 +0100 <EvanR> a box is simultaneously any concept and so not helpful
2022-01-05 04:42:26 +0100 <Inst> functions may not have a known source
2022-01-05 04:42:35 +0100ec(~ec@gateway/tor-sasl/ec)
2022-01-05 04:42:42 +0100 <EvanR> at least people have somehow made it that way
2022-01-05 04:42:45 +0100 <Inst> yeah
2022-01-05 04:42:58 +0100 <Inst> the course I'm paying people with MMO gold ot take
2022-01-05 04:43:06 +0100 <Inst> monads are introduced on the first problem set
2022-01-05 04:43:17 +0100retroid_(~retro@05412d78.skybroadband.com)
2022-01-05 04:43:24 +0100 <Inst> discussed briefly at the end of the second lesson
2022-01-05 04:43:27 +0100 <EvanR> Functor is a better type class to introduce first
2022-01-05 04:43:41 +0100 <dsal> Inst: You seem to understand things so poorly, I'm curious what you feel you have to offer.
2022-01-05 04:43:47 +0100 <Inst> the problem with Whitington's book is that he makes Haskell very
2022-01-05 04:43:49 +0100 <Inst> see, dsal :)
2022-01-05 04:44:12 +0100little_mac(~little_ma@2601:410:4300:3ce0:5087:9b0e:bd55:ec33) (Remote host closed the connection)
2022-01-05 04:44:20 +0100 <EvanR> I'm taking all this whitington publicity very negatively
2022-01-05 04:44:24 +0100 <Axman6> Inst: I must say, it is very frustrating trying to help someone who both claims to know very little, but also ignores any and all advice to try and change that
2022-01-05 04:44:26 +0100 <Inst> why?
2022-01-05 04:44:41 +0100little_mac(~little_ma@2601:410:4300:3ce0:5ce7:d67c:9eeb:3f76)
2022-01-05 04:44:45 +0100 <Inst> I'm familiar with the definition of Monads as "an abstraction to facilitate software reuse"
2022-01-05 04:45:05 +0100 <EvanR> boxes also do that, at least in UML
2022-01-05 04:45:07 +0100 <Inst> What I didn't finish
2022-01-05 04:45:08 +0100 <Axman6> We're here to help you and anyone else who wants it, but at this point you're wasting our time because you haven't listened to a thing we've said
2022-01-05 04:45:23 +0100ec(~ec@gateway/tor-sasl/ec) (Client Quit)
2022-01-05 04:45:35 +0100ec(~ec@gateway/tor-sasl/ec)
2022-01-05 04:45:37 +0100 <Inst> was that saying that it's of interest to me because apparently my understanding of monads is too incomplete to teach it, even as an introduction
2022-01-05 04:45:49 +0100 <EvanR> yeah probably
2022-01-05 04:45:55 +0100 <EvanR> the monad tutorial fallacy and all
2022-01-05 04:46:02 +0100 <dsal> But why are you even considering teaching things you don't understand yet?
2022-01-05 04:46:12 +0100 <Inst> it gives me an incentive and target to learn
2022-01-05 04:46:17 +0100 <Inst> erm, goal, for learning
2022-01-05 04:46:24 +0100 <EvanR> your game theory is interesting
2022-01-05 04:46:40 +0100 <EvanR> you get points for teaching the course, but don't lose any for teaching it really bad?
2022-01-05 04:46:59 +0100 <Inst> originally I was hoping to get someone to supervise it, i.e, treat it as a hybrid seminar
2022-01-05 04:47:19 +0100 <Inst> obv i realize my computer science knowledge isn't sufficient, so i'd ask someone to review lesson plans and to watch
2022-01-05 04:47:43 +0100 <Inst> not sure, still have Dad (if he's going to live much longer), some cousin at Microsoft, but neither know Haskell
2022-01-05 04:48:15 +0100 <EvanR> you might want to try getting help with haskell online
2022-01-05 04:48:17 +0100 <EvanR> somewhere
2022-01-05 04:48:22 +0100 <Axman6> I think you'll find the learning process much easier if you actually listen to the answers to the questions you ask
2022-01-05 04:48:33 +0100 <Inst> like, that my interpretation of monads was wrong?
2022-01-05 04:48:33 +0100 <dsal> You have to go through the effort of learning all the parts before suggesting that it's being taught incorrectly, though. I liked the order of HPFFP. I don't even remember when IO was introduced, but List was like, Chapter 14.
2022-01-05 04:48:49 +0100 <Inst> it was a hypothesis, one that I'm beginning to question
2022-01-05 04:49:13 +0100 <dsal> The way I learned Monads was to stop trying to learn Monads and just work with lots of different Monads until I started reaching for common tools.
2022-01-05 04:49:16 +0100 <Inst> that, since Haskell doesn't have loops, classes, etc, it might be possible to get to IO faster, but experientially, I'd either have to have ass it with libraries
2022-01-05 04:49:21 +0100 <Inst> yeah, I know
2022-01-05 04:49:42 +0100 <Inst> with my previous programming experience, I sort of gave up because I couldn't do IO fast enough
2022-01-05 04:49:45 +0100 <dsal> IO is the dirtiest part. I don't know why you'd want to hurry up and get tehre.
2022-01-05 04:49:45 +0100td_(~td@94.134.91.122) (Ping timeout: 256 seconds)
2022-01-05 04:49:51 +0100 <Axman6> like, we have literally solved the problem you were running into with using IO and Maybe several times, and you seem to have wholy ignored all of them. when we point out what you're doing wrong, you just ignore it. when we ask you questions to push you in the right direction, you don't answer. We've been doing this for a very long time, we're not just taking wild stabs in the dark, we know how to help you learn, but you are the most important in doing that
2022-01-05 04:50:03 +0100sirlensalot(~sirlensal@ool-44c5f8c9.dyn.optonline.net) (Quit: sirlensalot)
2022-01-05 04:50:23 +0100 <Inst> Axman: are you talking FP discord or here?
2022-01-05 04:50:33 +0100 <Axman6> here
2022-01-05 04:50:55 +0100 <Inst> I'm not communicative
2022-01-05 04:51:03 +0100 <Inst> I think you guys were helpful and supportive and I couldn't have done it without you
2022-01-05 04:51:24 +0100td_(~td@94.134.91.82)
2022-01-05 04:51:38 +0100 <Inst> I guess I had implicit conditions I never explained properly, and I was probably not even aware of them
2022-01-05 04:51:44 +0100 <Inst> like, the ideal was to use bind to do everything for me
2022-01-05 04:52:00 +0100 <Axman6> bind isn't magic, it does what its type says
2022-01-05 04:52:02 +0100 <Inst> finally explaining not to treat Maybe as a monad
2022-01-05 04:52:07 +0100zebrag(~chris@user/zebrag)
2022-01-05 04:52:25 +0100 <Inst> except that bind isn't apparetnly going to switch types constantly
2022-01-05 04:52:35 +0100 <dsal> Monads are also functors, and IMO, functor is easier to understand and what you actually needed in the examples you showed.
2022-01-05 04:52:37 +0100 <Axman6> no, and its type doesn't claim to
2022-01-05 04:52:47 +0100 <Axman6> :t (>>=)
2022-01-05 04:52:48 +0100 <lambdabot> Monad m => m a -> (a -> m b) -> m b
2022-01-05 04:52:52 +0100 <Axman6> all the same m
2022-01-05 04:53:03 +0100 <Axman6> m is IO, or m is Maybe, it is never both(*)
2022-01-05 04:53:16 +0100 <Inst> I apologize for being aggravating
2022-01-05 04:53:20 +0100 <dsal> Functions are concrete. If you're using a function defined in a type class, the concrete type is selected so a specific function is called.
2022-01-05 04:53:47 +0100 <edwardk> MaybeT IO.... *runs and hides*
2022-01-05 04:54:35 +0100 <Axman6> you activated my (*) card!
2022-01-05 04:55:04 +0100little_mac(~little_ma@2601:410:4300:3ce0:5ce7:d67c:9eeb:3f76) (Remote host closed the connection)
2022-01-05 04:55:05 +0100 <Inst> EvanR, btw, the point about Whitington is that that can be arguably why his book is bad
2022-01-05 04:55:15 +0100 <Inst> he teaches you how to use monads, but never explains the concept or what a monad is
2022-01-05 04:55:16 +0100 <EvanR> yeah that's what I'm getting
2022-01-05 04:55:21 +0100little_mac(~little_ma@2601:410:4300:3ce0:5087:9b0e:bd55:ec33)
2022-01-05 04:55:28 +0100 <Inst> then leaves you with a "we never explained monads" as a teaser at the end
2022-01-05 04:55:40 +0100 <Inst> I'm familiar with the monad tutorial fallacy, but that sort of drives people to get monads
2022-01-05 04:55:50 +0100 <Inst> the way he teaches everything else, though, it just seems so simple, creating perhaps a false overconfidence
2022-01-05 04:56:03 +0100 <Inst> then again, the last term is a double negative, no?
2022-01-05 04:56:21 +0100 <Inst> the other benefit, imo, is that his book seems problem set driven, and I like teaching methods that rely on that
2022-01-05 04:57:08 +0100 <Axman6> I've found that this article/video works quite well at conveying the concept on what a monad means, by using a more familiar (Ruby) syntax: https://tomstu.art/refactoring-ruby-with-monads
2022-01-05 04:57:37 +0100alx741(~alx741@157.100.93.160)
2022-01-05 04:57:40 +0100 <Inst> that said
2022-01-05 04:57:44 +0100 <Inst> in FP discord
2022-01-05 04:57:49 +0100 <lechner> Axman6: thanks for earlier! i was actually having a problem with vector but i think i got it know
2022-01-05 04:57:57 +0100 <Inst> I had a bleeding urge to teach Haskell (recursion, etc)
2022-01-05 04:58:12 +0100 <Axman6> it's not perfect, but I think it does a good job of showing that three very different types (things which might eb null, lists, futures) all have a common shape and a reasonable meaning for an `andThen` method, and that is exactly what >>= is
2022-01-05 04:58:13 +0100 <Inst> I was sort of desperate for anyone who found Haskell fun, and some Lisper asked me to teach Monads to them
2022-01-05 04:58:23 +0100 <Inst> which I did using the typeclass definition, under others' supervision
2022-01-05 04:58:40 +0100 <Axman6> lechner: no worries, I miss getting to use haswl :(
2022-01-05 04:58:43 +0100 <Axman6> hasql*
2022-01-05 04:58:58 +0100 <Inst> functor is just a typeclass for which fmap is defined, which allows you to apply a function to the inside of a functor type
2022-01-05 04:59:19 +0100 <Axman6> that's probably not too far off
2022-01-05 04:59:24 +0100 <Inst> applicative is just a typeclass for which pure and <*> are defined, with (I used the Hutton book to get what I thought was an acceptable understanding of Monads)
2022-01-05 04:59:33 +0100 <Inst> the intuition being to find ways to fmap multiple arguments
2022-01-05 04:59:43 +0100 <Axman6> we often talk about lifting a function into some context. so fmap takes (a -> b) and gives us back (f a -> f b)
2022-01-05 04:59:47 +0100 <Inst> monads share pure with applicative, but have bind, which is defined as a composition of join and fmap
2022-01-05 04:59:56 +0100 <Inst> context, tbh, is the standard term, i think?
2022-01-05 04:59:59 +0100 <EvanR> Applicative can have effects, Functor can't
2022-01-05 05:00:00 +0100 <Inst> boxes are bad because metaphors are bad
2022-01-05 05:00:07 +0100 <Inst> but context is abstract and hard to understand
2022-01-05 05:00:07 +0100 <Axman6> that context can mean many things, for Maybe, it means applying that function, if you had a Just or returning Nothing if you had a Nothing
2022-01-05 05:00:11 +0100 <Inst> what does context mean in this context?
2022-01-05 05:00:37 +0100 <Axman6> for IO, it means apply that function to the result of that IO action when it is executed. for list, it mean apply that function to every element of that list
2022-01-05 05:00:40 +0100 <Inst> which specific context are you talking about? In the context of the lesson? In the context of the learner? In the context of the program? In the context of the language?
2022-01-05 05:00:57 +0100 <Inst> the way I understand it, and for me this is more concrete
2022-01-05 05:01:10 +0100 <Inst> computations done on something which has a data constructor on it
2022-01-05 05:01:15 +0100 <Inst> or should I say type constructor?
2022-01-05 05:01:36 +0100 <Inst> what is a data constructor? A data constructor is a component of a type which can encapsulate another type
2022-01-05 05:01:44 +0100 <Inst> and iirc, playing around with it
2022-01-05 05:01:56 +0100 <Inst> i was able to find cases where you could have a functor defined but not an applicative / monad
2022-01-05 05:02:07 +0100 <Inst> someone mentioned to me a case where a functor couldn't be defined
2022-01-05 05:02:10 +0100 <Axman6> again, what data constructor do functiosn have? functions are also Functors
2022-01-05 05:02:42 +0100 <Inst> that's why i'm having difficulty understanding state monads, i.e, i'm unfamiliar with types composed of a data / type constructor imposed on a function
2022-01-05 05:03:00 +0100 <Axman6> yes, there are plenty of places where Fonctor can't be defined, but the type looks like the right shape
2022-01-05 05:03:32 +0100 <Inst> from LYAH (RIP), something something left hand of data declaration, type constructors, right side, data/value constructors
2022-01-05 05:03:38 +0100 <Axman6> newtype Predicate a = Predicate (a -> Bool) -- Can't define Functor for this, there is no function with type (a -> b) -> Predicate a -> Predicate b
2022-01-05 05:04:04 +0100 <Inst> iirc, the terminology used was that a has to be positive, i.e, (Bool -> a) is valid
2022-01-05 05:04:10 +0100 <Inst> I don't understand what positive means
2022-01-05 05:04:11 +0100 <EvanR> State s a = s -> (a, s)
2022-01-05 05:04:14 +0100 <Axman6> yep
2022-01-05 05:04:32 +0100 <Axman6> well, in this case, a is in negative position, you need to feed in an a, you're not producing one
2022-01-05 05:04:58 +0100 <Inst> yeah, i can get a rough intuition, although the idea of being able to apply data constructors onto functions is weird
2022-01-05 05:05:02 +0100 <Inst> it has to result in a polymorphic type
2022-01-05 05:05:19 +0100 <Inst> and iirc that was what the discussion turned out into
2022-01-05 05:05:23 +0100 <jackdk> https://youtu.be/JZPXzJ5tp9w?t=484 George Wilson on positive/negative positions (aside from a longer but also good talk)
2022-01-05 05:05:31 +0100 <Axman6> one of the very few things I like about scala is that is has a way to say that a type is in negative or positive (or... invariant?) position
2022-01-05 05:05:38 +0100 <EvanR> newtype Endo a = Endo (a -> a)
2022-01-05 05:05:42 +0100 <Inst> the one mystery i'm really interested in regarding monads / applicatives / functors
2022-01-05 05:05:48 +0100 <EvanR> not mind blowing
2022-01-05 05:05:53 +0100 <Axman6> there's always a good George Wilson talk
2022-01-05 05:06:10 +0100 <Inst> is how can an applicative not be reducible to a monad?
2022-01-05 05:06:38 +0100 <Inst> like, I can't think of examples wherein applicatives can't be turned into monads because there's no way to define a join
2022-01-05 05:07:02 +0100 <Axman6> Const a b is an applicative (if a is a Monoid), but can't be made a Monad
2022-01-05 05:07:21 +0100 <Axman6> daya Const a b = Const a
2022-01-05 05:07:32 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 05:07:32 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 05:07:32 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 05:07:33 +0100 <Inst> /s/daya/data
2022-01-05 05:07:39 +0100 <Axman6> yes
2022-01-05 05:08:01 +0100 <Inst> i guess it's because i don't understand type constructors
2022-01-05 05:08:02 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 05:08:39 +0100 <Inst> or rather, in that case
2022-01-05 05:08:41 +0100 <EvanR> constructors in general?
2022-01-05 05:08:53 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 05:08:53 +0100 <Inst> constructors are functions that take a value into another type
2022-01-05 05:09:01 +0100 <EvanR> imagine Const x being a heap object with x in it
2022-01-05 05:09:08 +0100 <Inst> I don't understand the notion of heap
2022-01-05 05:09:09 +0100 <EvanR> like... a box
2022-01-05 05:09:12 +0100 <jackdk> Inst: this type has no valid `Monad` instance, because it will not satisfy `(<*>) = ap` https://www.irccloud.com/pastebin/1sjEEDOV/Validation.hs
2022-01-05 05:09:14 +0100 <Inst> or rather heap object
2022-01-05 05:09:22 +0100 <EvanR> are you sure
2022-01-05 05:09:26 +0100 <Axman6> the exercise is to try to implement Functor, Applicative and Monad for Const. instance Functor (Const b) where fmap f (Const a) = ???; instance Monoid a => Applicative (Const a) where (Const l) <*> (Const r) = ???
2022-01-05 05:10:14 +0100 <Inst> i'm guessing what goes wrong with Const a b = Const a
2022-01-05 05:10:28 +0100 <Inst> is that you can't fully nest Const a b within Const a b
2022-01-05 05:10:30 +0100 <Inst> because there is no b
2022-01-05 05:10:44 +0100 <dsal> It's unclear what you mean by that. There's a b
2022-01-05 05:10:53 +0100 <EvanR> the question is why you can't write a law abiding monad instance, not whether you can't write an instance
2022-01-05 05:10:55 +0100 <Axman6> so, to be clear, in data Const a b = Const a, something of type Const Int Bool is something which contains an Int but no Bool
2022-01-05 05:10:55 +0100 <Inst> there's no b in the data constructor side
2022-01-05 05:10:59 +0100 <Inst> ah, i see
2022-01-05 05:11:37 +0100 <Axman6> Const 7 :: Const Int Bool (or also Const Int String, or Const Int (IO ()))
2022-01-05 05:11:48 +0100 <Inst> and if you pure it?
2022-01-05 05:12:05 +0100 <Axman6> using the GADT syntax, you might say data Const a b where Const :: a -> Const a b
2022-01-05 05:12:45 +0100 <Axman6> pure :: Monoid m => a -> Const m a
2022-01-05 05:12:51 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 05:13:33 +0100 <Axman6> (this is one of two reasons why we need the Monoid constraint on the a in Applicative (Const a) - without it, or something equivalent, it's impossible)
2022-01-05 05:13:57 +0100 <Inst> i barely have an understanding of monoids, i.e, a type for which a binary associative operator is defined
2022-01-05 05:14:05 +0100 <Axman6> @src Monoid
2022-01-05 05:14:05 +0100 <lambdabot> class Monoid a where
2022-01-05 05:14:05 +0100 <lambdabot> mempty :: a
2022-01-05 05:14:05 +0100 <lambdabot> mappend :: a -> a -> a
2022-01-05 05:14:05 +0100 <lambdabot> mconcat :: [a] -> a
2022-01-05 05:14:13 +0100 <Axman6> ignore mconcat
2022-01-05 05:14:47 +0100 <Inst> i.e, convenience method, not actually part of the definition, since it's requiring list
2022-01-05 05:14:52 +0100 <Axman6> mempty is a well known name for the "zero" or identity element of the monoid
2022-01-05 05:15:06 +0100 <Axman6> for lists it's []
2022-01-05 05:15:08 +0100 <Inst> also an id element
2022-01-05 05:15:28 +0100 <Axman6> mempty is the identity element for that particular a
2022-01-05 05:15:55 +0100 <Axman6> so, you can always create an a if a is a monoid, and the specific a you create will be the identity for that monoid
2022-01-05 05:16:12 +0100 <Inst> mappend, i'm guessing that's the associative binary operator
2022-01-05 05:16:19 +0100 <Axman6> yep
2022-01-05 05:16:28 +0100 <Axman6> > mappend [1,2,3] [4,5,6]
2022-01-05 05:16:29 +0100 <lambdabot> [1,2,3,4,5,6]
2022-01-05 05:16:44 +0100 <Axman6> > mappend [1,2,3] mempty
2022-01-05 05:16:45 +0100 <lambdabot> [1,2,3]
2022-01-05 05:16:51 +0100 <Axman6> > mappend mempty [1,2,3]
2022-01-05 05:16:52 +0100 <lambdabot> [1,2,3]
2022-01-05 05:17:01 +0100 <EvanR> > mappend mempty mempty
2022-01-05 05:17:02 +0100 <lambdabot> ()
2022-01-05 05:17:05 +0100 <EvanR> lol
2022-01-05 05:17:08 +0100 <Inst> actually, i'll ask the question that'll make me sound stupid
2022-01-05 05:17:13 +0100 <Inst> and this is why i'm so annoying
2022-01-05 05:17:16 +0100 <Inst> what is ap?
2022-01-05 05:17:20 +0100 <dsal> :t ap
2022-01-05 05:17:20 +0100 <lambdabot> Monad m => m (a -> b) -> m a -> m b
2022-01-05 05:17:44 +0100 <Axman6> ap is the same as Applicative's <*> but is the older name from before Applicatives had been discovered
2022-01-05 05:17:52 +0100 <Inst> but if you can't define a <*>
2022-01-05 05:18:15 +0100 <Inst> you can't define an applicative, so const a b being unmonadable
2022-01-05 05:18:21 +0100 <Inst> can't be a result of <*> = ap failure
2022-01-05 05:18:40 +0100 <Axman6> you can define an Applicative instance for Const, but you cannot define a Monad instance
2022-01-05 05:18:52 +0100 <Inst> but Const lacks an <*> / ap?
2022-01-05 05:18:59 +0100 <Axman6> no, it doesn't
2022-01-05 05:19:37 +0100 <Axman6> you can define (<*>) :: Const x (a -> b) -> Const x a -> Const x b, as long as x is a Monoid
2022-01-05 05:20:06 +0100 <Inst> so how does Const a b = Const a fail to be definable as a monad?
2022-01-05 05:20:16 +0100 <Axman6> (Const l) <*> (Const r) = ???
2022-01-05 05:20:41 +0100 <Inst> oh, I see what you mean, that it'd fail the monad laws
2022-01-05 05:20:53 +0100 <Axman6> because we need to define (>>=) :: (Const x a) -> (a -> Const x b) -> Const x b - to create that Const x b, we _need_ an a
2022-01-05 05:21:17 +0100shapr(~user@2601:7c0:c202:5190:5625:d6db:b1c1:a272) (Ping timeout: 240 seconds)
2022-01-05 05:21:24 +0100 <EvanR> I guess you don't even get to the defense of the monad laws
2022-01-05 05:21:30 +0100 <EvanR> nothing to defend
2022-01-05 05:21:37 +0100 <Axman6> how many a's does something of type Const x a contain?
2022-01-05 05:21:47 +0100 <Inst> only one
2022-01-05 05:21:52 +0100 <Axman6> try again
2022-01-05 05:22:02 +0100 <Axman6> data Const x a = Const x
2022-01-05 05:22:05 +0100jiribenes_(~jiribenes@rosa.jiribenes.com) (Ping timeout: 252 seconds)
2022-01-05 05:22:09 +0100 <Inst> ah
2022-01-05 05:22:16 +0100 <EvanR> a is phantom
2022-01-05 05:22:22 +0100 <Axman6> spooky
2022-01-05 05:22:39 +0100 <Inst> see, the real problem i guess i have, is that i don't understand monads in terms of >>=
2022-01-05 05:22:46 +0100 <Inst> >>= I just translate to composite of join and fmap
2022-01-05 05:22:56 +0100 <EvanR> that's all it is
2022-01-05 05:23:06 +0100 <Axman6> you can try defining join instead
2022-01-05 05:23:19 +0100 <Axman6> join :: Const x (Const x a) -> Const x a
2022-01-05 05:23:21 +0100jiribenes(~jiribenes@rosa.jiribenes.com)
2022-01-05 05:23:34 +0100 <Inst> that was my intuition
2022-01-05 05:23:43 +0100 <Inst> that the phantom a was blocking things
2022-01-05 05:23:48 +0100 <Axman6> you _can_ define that but it won't be lawful
2022-01-05 05:24:41 +0100alx741(~alx741@157.100.93.160)
2022-01-05 05:25:01 +0100 <Axman6> now I'm struggling to remember why
2022-01-05 05:25:07 +0100 <Inst> sorry
2022-01-05 05:25:12 +0100 <Inst> axman6, thank you for your time
2022-01-05 05:25:16 +0100 <Inst> i hope you got something out of it
2022-01-05 05:25:31 +0100 <Axman6> it;s alwaysd good to go over the basics
2022-01-05 05:25:33 +0100 <jackdk> Axman6: `join . pure = id`, which sets `x = mempty`
2022-01-05 05:25:42 +0100 <Inst> do you still teach intro haskell at ANU?
2022-01-05 05:25:48 +0100 <Axman6> like learning how to type, one day I will learn the basics of that
2022-01-05 05:25:57 +0100 <Inst> I hope at least, having to deal with someone as dense as me, can at least help you get your dumber students a C
2022-01-05 05:26:03 +0100 <Axman6> No, if I had more time I would like to
2022-01-05 05:26:19 +0100 <jackdk> that was terse. `join . pure` should be `id`, but `join . pure` for your unlawful `Const x` will always give you `Const mempty`.
2022-01-05 05:26:25 +0100 <Axman6> particularly is jackdk was around and we could do it together. what a dream team
2022-01-05 05:26:45 +0100 <jackdk> I would have so much fun, but I'm elsewhere these days
2022-01-05 05:27:35 +0100 <Inst> i might be able to pay, but depends on finances i guess
2022-01-05 05:27:40 +0100 <Inst> like i said, i need a supervisor
2022-01-05 05:28:11 +0100 <Inst> i was trying to get my lady friend a city university (as in, the university run by the city, not Columbia) of New York professor to see if she'd be willing to supervise independent study
2022-01-05 05:28:16 +0100 <Axman6> We're all here to help for free, 24ish hours a day
2022-01-05 05:28:18 +0100 <Inst> and she ran off to python :(
2022-01-05 05:29:14 +0100 <Inst> so, to recap
2022-01-05 05:29:17 +0100 <Axman6> Inst: while I remember, I would highly recommend reading https://tomstu.art/refactoring-ruby-with-monads, I think you're at a good stage to have it make a positive impact
2022-01-05 05:29:18 +0100 <Inst> and i'm sorry for my partial understanding
2022-01-05 05:29:32 +0100 <Inst> i don't know any other programming languages (in a strict sense)!
2022-01-05 05:29:32 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 05:30:25 +0100 <Inst> to recap, a type / data constructed type cannot be a functor if the type variable is not positive (i.e, at the very end)
2022-01-05 05:31:28 +0100 <Inst> an functor cannot be an applicative if no meaningful pure can be defined on it (data Useless a = Useless Int)
2022-01-05 05:31:53 +0100 <Inst> an applicative cannot be a functor if it's carrying a phantom value
2022-01-05 05:31:56 +0100 <EvanR> Useless isn't
2022-01-05 05:32:04 +0100little_mac(~little_ma@2601:410:4300:3ce0:5087:9b0e:bd55:ec33) (Remote host closed the connection)
2022-01-05 05:32:04 +0100 <EvanR> phantom types can rock
2022-01-05 05:32:19 +0100 <Inst> it's a pun on applicative
2022-01-05 05:32:21 +0100little_mac(~little_ma@2601:410:4300:3ce0:5ce7:d67c:9eeb:3f76)
2022-01-05 05:32:23 +0100 <dsal> An applicative is a functor.
2022-01-05 05:32:34 +0100 <Inst> erm
2022-01-05 05:32:36 +0100 <Inst> not applicative
2022-01-05 05:32:43 +0100 <Inst> an applicative cannot be a monad if it's carrying a phantom value
2022-01-05 05:32:46 +0100 <Axman6> useless can definitely have a meaningful pure, and (<*>)
2022-01-05 05:32:52 +0100 <Inst> oh derp
2022-01-05 05:32:57 +0100 <Axman6> it's not very useful though
2022-01-05 05:33:00 +0100 <dsal> ST is a monad with a phantom type.
2022-01-05 05:33:07 +0100 <Inst> i see
2022-01-05 05:33:55 +0100 <Inst> if the phantom type is positive?
2022-01-05 05:35:23 +0100deadmarshal(~deadmarsh@95.38.116.69)
2022-01-05 05:35:56 +0100 <Axman6> phantom types are neither positive or negative
2022-01-05 05:36:05 +0100 <Inst> yeah, i'm being stupid
2022-01-05 05:36:48 +0100 <Axman6> data TaggedFunc c a b = Funct (a -> b) -- what are the "signs" of a, b and c?
2022-01-05 05:37:12 +0100ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds)
2022-01-05 05:37:44 +0100 <Inst> b is positive, a is negative, c is phantom (none)
2022-01-05 05:37:51 +0100 <Axman6> correct
2022-01-05 05:38:00 +0100 <Inst> sorry, ANU is an elite school
2022-01-05 05:38:15 +0100 <Inst> you guys have a research tieup with Trina Solar
2022-01-05 05:38:45 +0100 <Inst> which is iirc the largest solar manufacturer in the world, or at least in china, which produces the majority of the world's solar panels
2022-01-05 05:39:13 +0100 <dsal> I have solar panels. They run Haskell code.
2022-01-05 05:39:18 +0100 <Inst> by that, i'm implying, you're very smart, you're the type that doesn't suffer idiots too gladly (i assume, but more gladly than dsal), and you have a teaching method adapted for ANU
2022-01-05 05:40:19 +0100 <EvanR> don't worry, my shrine to all idiots is burning bright
2022-01-05 05:40:25 +0100mbuf(~Shakthi@122.174.247.3)
2022-01-05 05:41:17 +0100 <Inst> philosophically, I'm oriented toward the idea that the world is full of idiots, the world is majority idiot, and making them less idiotic makes the rest of the world better off
2022-01-05 05:41:31 +0100 <Inst> so thank you again
2022-01-05 05:47:25 +0100xff0x(~xff0x@2001:1a81:53e7:b00:1d48:798f:68c9:16a8) (Ping timeout: 240 seconds)
2022-01-05 05:47:27 +0100alx741(~alx741@157.100.93.160)
2022-01-05 05:48:22 +0100xff0x(~xff0x@2001:1a81:53e7:b00:98d2:e416:e1d0:8927)
2022-01-05 05:51:56 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 05:52:12 +0100Axman6sorry for going quiet, we have sprint planning
2022-01-05 05:55:49 +0100rekahsoft(~rekahsoft@cpe0008a20f982f-cm64777d666260.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds)
2022-01-05 05:59:44 +0100 <EvanR> is there a slick way to make sure everything in a Data.Vector is evaluated (to WHNF)
2022-01-05 06:00:35 +0100yaroot(~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953) (Ping timeout: 252 seconds)
2022-01-05 06:01:01 +0100yaroot(~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953)
2022-01-05 06:01:45 +0100 <Axman6> :t foldl seq
2022-01-05 06:01:45 +0100 <lambdabot> Foldable t => a -> t a -> a
2022-01-05 06:01:50 +0100 <Axman6> :t foldl seq ()
2022-01-05 06:01:51 +0100 <lambdabot> Foldable t => t () -> ()
2022-01-05 06:02:24 +0100phma(phma@2001:5b0:210f:5ed8:55ac:926f:b49e:dcfb)
2022-01-05 06:03:05 +0100EvanRsquints
2022-01-05 06:03:44 +0100 <EvanR> interesting
2022-01-05 06:03:51 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 256 seconds)
2022-01-05 06:04:54 +0100 <Axman6> wait
2022-01-05 06:05:04 +0100 <Axman6> :t foldl (flip seq) ()
2022-01-05 06:05:05 +0100 <lambdabot> Foldable t => t a -> ()
2022-01-05 06:05:09 +0100 <Axman6> that one
2022-01-05 06:05:54 +0100 <EvanR> > foldl (flip seq) () [1,2,error "bomb",4]
2022-01-05 06:05:55 +0100 <lambdabot> *Exception: bomb
2022-01-05 06:06:01 +0100 <EvanR> > foldl seq () [1,2,error "bomb",4]
2022-01-05 06:06:02 +0100 <lambdabot> error:
2022-01-05 06:06:02 +0100 <lambdabot> • No instance for (Num ()) arising from the literal ‘1’
2022-01-05 06:06:02 +0100 <lambdabot> • In the expression: 1
2022-01-05 06:07:44 +0100 <EvanR> > foldl (flip seq) () [1,2,error "💣💣💣",4]
2022-01-05 06:07:45 +0100 <lambdabot> *Exception: 💣💣💣
2022-01-05 06:07:49 +0100 <EvanR> oh yes
2022-01-05 06:08:10 +0100 <EvanR> TOS style
2022-01-05 06:08:36 +0100alx741(~alx741@157.100.93.160)
2022-01-05 06:09:17 +0100xff0x(~xff0x@2001:1a81:53e7:b00:98d2:e416:e1d0:8927) (Ping timeout: 240 seconds)
2022-01-05 06:10:34 +0100xff0x(~xff0x@2001:1a81:53e7:b00:62fc:8f05:5cf7:41b5)
2022-01-05 06:15:59 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 06:15:59 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 06:15:59 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 06:16:41 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 06:21:26 +0100 <jackdk> % :t rnf
2022-01-05 06:21:26 +0100 <yahb> jackdk: ; <interactive>:1:1: error: Variable not in scope: rnf
2022-01-05 06:21:44 +0100 <jackdk> https://hackage.haskell.org/package/deepseq-1.4.6.1/docs/Control-DeepSeq.html#v:rnf this one
2022-01-05 06:22:05 +0100Jing(~hedgehog@2604:a840:3::103c) (Remote host closed the connection)
2022-01-05 06:22:26 +0100 <jackdk> ah, no NFData instances
2022-01-05 06:22:41 +0100Jing(~hedgehog@115.207.57.60)
2022-01-05 06:24:32 +0100monochrom(trebla@216.138.220.146) (Quit: NO CARRIER)
2022-01-05 06:26:15 +0100 <lechner> Axman6: What do you use now (instead of hasql) please?
2022-01-05 06:27:01 +0100 <EvanR> full normal form seems a bit brutal though
2022-01-05 06:27:57 +0100nattiestnate(~nate@2001:448a:20a0:4134:25e:715f:d637:5263)
2022-01-05 06:28:02 +0100monochrom(trebla@216.138.220.146)
2022-01-05 06:28:45 +0100BrokenClutch(~pioneer@2804:d41:c292:6c00:33d8:d2f1:d8af:153e) ()
2022-01-05 06:30:10 +0100monochrom(trebla@216.138.220.146) (Client Quit)
2022-01-05 06:30:23 +0100shriekingnoise(~shrieking@186.137.144.80) (Quit: Quit)
2022-01-05 06:31:05 +0100 <dsal> EvanR: It's helpful in benchmarks sometimes.
2022-01-05 06:31:57 +0100 <EvanR> I can see that
2022-01-05 06:33:39 +0100alx741(~alx741@157.100.93.160)
2022-01-05 06:37:47 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 06:39:35 +0100 <EvanR> and this is awkward xD https://paste.tomsmeding.com/YX8lax0h
2022-01-05 06:42:13 +0100mikail_(~mikail@94.1.27.214) (Ping timeout: 240 seconds)
2022-01-05 06:42:52 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-05 06:47:37 +0100 <Axman6> lechner: DAML =)
2022-01-05 06:52:57 +0100nattiestnate(~nate@2001:448a:20a0:4134:25e:715f:d637:5263) (Quit: WeeChat 3.4)
2022-01-05 06:53:05 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-01-05 06:54:04 +0100 <Axman6> EvanR: curious what this is actually a part of
2022-01-05 06:54:48 +0100alx741(~alx741@157.100.93.160)
2022-01-05 06:59:27 +0100 <EvanR> mad science at this point, I'll keep you apprised
2022-01-05 06:59:30 +0100mikail(~mikail@2a02:c7f:bc1f:4a00:1f95:fc24:559b:d565)
2022-01-05 06:59:38 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 06:59:48 +0100 <Axman6> mad science -> science -> technology -> normality
2022-01-05 07:00:09 +0100 <Axman6> how crazy was the idea of Google thirty years ago
2022-01-05 07:02:25 +0100 <Axman6> it's kinda satisfying those lines are same length
2022-01-05 07:03:51 +0100 <EvanR> fixed width fonts vindicated
2022-01-05 07:05:05 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 07:17:19 +0100alx741(~alx741@157.100.93.160)
2022-01-05 07:20:04 +0100slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2022-01-05 07:21:25 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 07:26:29 +0100zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-01-05 07:27:32 +0100retro_(~retro@05412d78.skybroadband.com)
2022-01-05 07:29:43 +0100monochrom(trebla@216.138.220.146)
2022-01-05 07:30:34 +0100retroid_(~retro@05412d78.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 07:33:17 +0100mvk(~mvk@2607:fea8:5cdd:f000::45db) (Ping timeout: 240 seconds)
2022-01-05 07:35:32 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-01-05 07:39:01 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 07:39:52 +0100alx741(~alx741@157.100.93.160)
2022-01-05 07:43:01 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 07:43:37 +0100mikail(~mikail@2a02:c7f:bc1f:4a00:1f95:fc24:559b:d565) (Ping timeout: 240 seconds)
2022-01-05 07:53:59 +0100 <Inst> anyone else read Haskell in Depth?
2022-01-05 07:54:17 +0100 <Inst> "member of the GHC steering committee"
2022-01-05 08:01:33 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 08:05:17 +0100 <Axman6> @hoogle unsafeInterleveIO
2022-01-05 08:05:17 +0100 <lambdabot> No results found
2022-01-05 08:06:01 +0100nunggu(~q@gateway/tor-sasl/nunggu) (Quit: nunggu)
2022-01-05 08:07:37 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480:1b88:50f:dae0:9293) (Ping timeout: 240 seconds)
2022-01-05 08:16:41 +0100 <Axman6> edwardk: I got the memoisation working and it does actually perform as I'd expect :tada:
2022-01-05 08:17:50 +0100 <Axman6> I can't figure out if using `unsafeDupablePerformIO` is safe in its definition though, since the implementations of the Group might not run atomically
2022-01-05 08:17:51 +0100alx741(~alx741@157.100.93.160)
2022-01-05 08:20:58 +0100califax(~califax@user/califx) (Quit: ZNC 1.8.2 - https://znc.in)
2022-01-05 08:21:18 +0100califax(~califax@user/califx)
2022-01-05 08:27:03 +0100jakalx(~jakalx@base.jakalx.net) ()
2022-01-05 08:33:12 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 08:34:02 +0100d0ku(~d0ku@178.43.3.56.ipv4.supernova.orange.pl)
2022-01-05 08:34:44 +0100`2jt(~jtomas@153.red-83-53-252.dynamicip.rima-tde.net)
2022-01-05 08:35:01 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-01-05 08:35:30 +0100little_mac(~little_ma@2601:410:4300:3ce0:5ce7:d67c:9eeb:3f76) (Remote host closed the connection)
2022-01-05 08:38:21 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-05 08:51:18 +0100alx741(~alx741@157.100.93.160)
2022-01-05 08:52:30 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-05 08:53:07 +0100phma(phma@2001:5b0:210f:5ed8:55ac:926f:b49e:dcfb) (Read error: Connection reset by peer)
2022-01-05 08:54:20 +0100phma(phma@2001:5b0:215a:cac8:aefe:d82b:57fb:72c6)
2022-01-05 08:56:39 +0100simendsjo(~user@84.211.91.241)
2022-01-05 08:59:17 +0100jakalx(~jakalx@base.jakalx.net)
2022-01-05 09:01:06 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 09:04:52 +0100sub0(~bc8147f2@cerf.good1.com) (Quit: CGI:IRC (Session timeout))
2022-01-05 09:11:35 +0100 <edwardk> i always assume that the code will be invoked from one thread at a time because its used mostly to build up single threaded promise code
2022-01-05 09:11:40 +0100 <edwardk> nothing i do races myself
2022-01-05 09:12:02 +0100 <edwardk> so i think unsafeDupablePerformIO should just work
2022-01-05 09:14:38 +0100coolnickname(uid531864@user/coolnickname)
2022-01-05 09:14:56 +0100kaph(~kaph@net-2-38-107-19.cust.vodafonedsl.it) (Read error: Connection reset by peer)
2022-01-05 09:17:15 +0100alx741(~alx741@157.100.93.160)
2022-01-05 09:23:50 +0100_ht(~quassel@82-169-194-8.biz.kpn.net)
2022-01-05 09:23:50 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 09:24:17 +0100xff0x(~xff0x@2001:1a81:53e7:b00:62fc:8f05:5cf7:41b5) (Ping timeout: 240 seconds)
2022-01-05 09:25:21 +0100xff0x(~xff0x@2001:1a81:53e7:b00:4627:8ffd:144:30b1)
2022-01-05 09:25:30 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2022-01-05 09:27:08 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-01-05 09:29:20 +0100retroid_(~retro@05412d78.skybroadband.com)
2022-01-05 09:31:26 +0100retro_(~retro@05412d78.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 09:31:51 +0100kaph(~kaph@net-2-38-107-19.cust.vodafonedsl.it)
2022-01-05 09:32:56 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2022-01-05 09:34:31 +0100retroid_(~retro@05412d78.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 09:35:28 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 09:36:45 +0100coot(~coot@89-64-85-93.dynamic.chello.pl)
2022-01-05 09:40:07 +0100 <xerox> ls /tmp/ | grep cabal-repl | wc -l ==> 222 is this something fishy or is this normal
2022-01-05 09:42:03 +0100alx741(~alx741@157.100.93.160)
2022-01-05 09:42:16 +0100 <c_wraith> looks normal to me
2022-01-05 09:42:24 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:c365:2459:70e0:4fac)
2022-01-05 09:42:35 +0100chele(~chele@user/chele)
2022-01-05 09:42:53 +0100 <c_wraith> maybe cabal should clean that up on exit.
2022-01-05 09:44:22 +0100 <c_wraith> but linux distributions tend to come with rules for cleaning out the contents of /tmp
2022-01-05 09:44:45 +0100Jing(~hedgehog@115.207.57.60) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-05 09:47:36 +0100maerwald-maerwald
2022-01-05 09:47:49 +0100maerwald(~maerwald@mail.hasufell.de) (Changing host)
2022-01-05 09:47:50 +0100maerwald(~maerwald@user/maerwald)
2022-01-05 09:48:46 +0100benin(~benin@183.82.176.241)
2022-01-05 09:49:57 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-05 09:51:36 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 09:51:36 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 09:51:36 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 09:51:36 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 09:52:10 +0100retroid_(~retro@5ec2ec1d.skybroadband.com)
2022-01-05 09:54:26 +0100retro_(~retro@5ec2ec1d.skybroadband.com)
2022-01-05 09:56:11 +0100myme1myme
2022-01-05 09:56:53 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 09:57:20 +0100retroid_(~retro@5ec2ec1d.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 09:59:56 +0100Neuromancer(~Neuromanc@user/neuromancer) (Read error: Connection reset by peer)
2022-01-05 10:02:55 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-01-05 10:03:34 +0100absence(torgeihe@hildring.pvv.ntnu.no)
2022-01-05 10:05:21 +0100retro_(~retro@5ec2ec1d.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 10:06:31 +0100retroid_(~retro@5ec2ec1d.skybroadband.com)
2022-01-05 10:06:54 +0100 <merijn> /tmp/ is normally wiped on reboot anyway
2022-01-05 10:07:06 +0100 <merijn> and some systems on logout or something along those lines
2022-01-05 10:07:29 +0100acidjnk_new(~acidjnk@p200300d0c7271e933133c43131ec7c10.dip0.t-ipconnect.de)
2022-01-05 10:07:29 +0100acidjnk(~acidjnk@p200300d0c7271e933133c43131ec7c10.dip0.t-ipconnect.de)
2022-01-05 10:08:04 +0100 <merijn> Argument for not wiping them could be to speed up repeated repl on an unchanged project
2022-01-05 10:09:35 +0100alx741(~alx741@157.100.93.160)
2022-01-05 10:11:31 +0100retroid_(~retro@5ec2ec1d.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 10:13:16 +0100mcglk(~mcglk@131.191.49.120)
2022-01-05 10:15:02 +0100mcglk_(~mcglk@131.191.49.120) (Ping timeout: 240 seconds)
2022-01-05 10:15:25 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 10:16:38 +0100retroid_(~retro@2e40edd9.skybroadband.com)
2022-01-05 10:18:22 +0100kspalaiologos(~kspalaiol@user/kspalaiologos)
2022-01-05 10:18:54 +0100 <[exa]> user sessions getting all their own tmpfs /tmp/ mounts is pretty much standard now, right?
2022-01-05 10:20:42 +0100retro_(~retro@2e40edd9.skybroadband.com)
2022-01-05 10:21:23 +0100retroid_(~retro@2e40edd9.skybroadband.com) (Ping timeout: 268 seconds)
2022-01-05 10:24:28 +0100notzmv(~zmv@user/notzmv) (Ping timeout: 268 seconds)
2022-01-05 10:25:49 +0100yahb(xsbot@user/mniip/bot/yahb) (Ping timeout: 240 seconds)
2022-01-05 10:28:41 +0100matijja(~matijja@193.77.181.201) (Quit: ZNC 1.8.1 - https://znc.in)
2022-01-05 10:29:57 +0100matijja(~matijja@193.77.181.201)
2022-01-05 10:30:05 +0100mniip(mniip@libera/staff/mniip) (Ping timeout: 630 seconds)
2022-01-05 10:31:16 +0100biog(~user1@159.224.42.85)
2022-01-05 10:31:39 +0100alx741(~alx741@157.100.93.160)
2022-01-05 10:36:10 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 10:43:06 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 10:43:38 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2022-01-05 10:43:38 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-01-05 10:45:05 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-01-05 10:47:13 +0100zyzek(~zyzek@user/zyzek)
2022-01-05 10:53:25 +0100simendsjo(~user@84.211.91.241) (Ping timeout: 256 seconds)
2022-01-05 10:54:25 +0100alx741(~alx741@157.100.93.160)
2022-01-05 10:54:27 +0100xkuru(~xkuru@user/xkuru)
2022-01-05 10:56:16 +0100matijja(~matijja@193.77.181.201) (Quit: ZNC 1.8.1 - https://znc.in)
2022-01-05 10:56:56 +0100gehmehgeh(~user@user/gehmehgeh)
2022-01-05 10:58:17 +0100bliminse(~bliminse@host86-186-17-7.range86-186.btcentralplus.com) (Quit: leaving)
2022-01-05 10:58:37 +0100Akiva(~Akiva@user/Akiva) (Ping timeout: 240 seconds)
2022-01-05 10:59:18 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 11:01:06 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2022-01-05 11:02:22 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net)
2022-01-05 11:03:07 +0100ubert(~Thunderbi@2a02:8109:9880:303c:9b:7099:7b8a:3b4d)
2022-01-05 11:03:30 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds)
2022-01-05 11:05:03 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-01-05 11:06:46 +0100bliminse(~bliminse@host86-186-17-7.range86-186.btcentralplus.com)
2022-01-05 11:07:04 +0100matijja(~matijja@193.77.181.201)
2022-01-05 11:11:28 +0100drdo(~drdo@144.172.69.89) (Quit: The Lounge - https://thelounge.chat)
2022-01-05 11:11:44 +0100drdo(~drdo@144.172.69.89)
2022-01-05 11:16:56 +0100alx741(~alx741@157.100.93.160)
2022-01-05 11:17:50 +0100drdo(~drdo@144.172.69.89) (Quit: The Lounge - https://thelounge.chat)
2022-01-05 11:18:05 +0100drdo(~drdo@144.172.69.89)
2022-01-05 11:18:08 +0100biberu\(~biberu@user/biberu)
2022-01-05 11:19:15 +0100drdo(~drdo@144.172.69.89) (Client Quit)
2022-01-05 11:19:30 +0100emergence(~emergence@vm0.max-p.me) (Quit: Ping timeout (120 seconds))
2022-01-05 11:19:54 +0100pavonia_(~user@user/siracusa)
2022-01-05 11:20:05 +0100emergence(~emergence@vm0.max-p.me)
2022-01-05 11:20:06 +0100sus(zero@user/zeromomentum) (Read error: Connection reset by peer)
2022-01-05 11:20:17 +0100biog(~user1@159.224.42.85) (Ping timeout: 240 seconds)
2022-01-05 11:20:17 +0100infinity0(~infinity0@occupy.ecodis.net) (Ping timeout: 240 seconds)
2022-01-05 11:20:17 +0100shailangsa(~shailangs@host86-162-150-202.range86-162.btcentralplus.com) (Ping timeout: 240 seconds)
2022-01-05 11:20:19 +0100sus(zero@user/zeromomentum)
2022-01-05 11:20:21 +0100n8chan(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2022-01-05 11:20:41 +0100Jing(~hedgehog@2604:a840:3::103c)
2022-01-05 11:20:54 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 11:20:57 +0100pavonia(~user@user/siracusa) (Ping timeout: 240 seconds)
2022-01-05 11:21:05 +0100pavonia_pavonia
2022-01-05 11:21:17 +0100sim590(~simon@modemcable090.207-203-24.mc.videotron.ca) (Ping timeout: 240 seconds)
2022-01-05 11:21:17 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Ping timeout: 240 seconds)
2022-01-05 11:21:37 +0100neightchan(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2022-01-05 11:21:37 +0100biberu(~biberu@user/biberu) (Ping timeout: 240 seconds)
2022-01-05 11:21:38 +0100biberu\biberu
2022-01-05 11:21:51 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-01-05 11:22:09 +0100sim590(~simon@modemcable090.207-203-24.mc.videotron.ca)
2022-01-05 11:22:24 +0100infinity0(~infinity0@occupy.ecodis.net)
2022-01-05 11:23:30 +0100zyzek(~zyzek@user/zyzek) (Remote host closed the connection)
2022-01-05 11:25:09 +0100absence(torgeihe@hildring.pvv.ntnu.no) (Ping timeout: 256 seconds)
2022-01-05 11:25:17 +0100xff0x(~xff0x@2001:1a81:53e7:b00:4627:8ffd:144:30b1) (Ping timeout: 240 seconds)
2022-01-05 11:25:19 +0100absence(torgeihe@hildring.pvv.ntnu.no)
2022-01-05 11:25:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 11:27:23 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 11:28:11 +0100drdo(~drdo@144.172.69.89)
2022-01-05 11:28:42 +0100xff0x(~xff0x@2001:1a81:53e7:b00:95c4:6090:2048:abcf)
2022-01-05 11:31:34 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-01-05 11:32:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 11:32:31 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds)
2022-01-05 11:33:18 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 11:34:22 +0100Lord_of_Life_Lord_of_Life
2022-01-05 11:36:29 +0100max22-(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr)
2022-01-05 11:38:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 11:38:57 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 11:39:28 +0100alx741(~alx741@157.100.93.160)
2022-01-05 11:42:29 +0100euouae(~euouae@user/euouae)
2022-01-05 11:42:36 +0100 <euouae> Hello
2022-01-05 11:43:42 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 11:44:33 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 11:44:55 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 11:47:58 +0100 <[exa]> ey hello!
2022-01-05 11:48:23 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2022-01-05 11:48:26 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-01-05 11:50:05 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 11:50:39 +0100cheater(~Username@user/cheater) (Ping timeout: 256 seconds)
2022-01-05 11:50:46 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 11:51:06 +0100__monty__(~toonn@user/toonn)
2022-01-05 11:52:23 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 11:52:23 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 11:52:23 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 11:57:27 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 11:58:51 +0100ubert(~Thunderbi@2a02:8109:9880:303c:9b:7099:7b8a:3b4d) (Remote host closed the connection)
2022-01-05 11:59:04 +0100ubert(~Thunderbi@2a02:8109:9880:303c:3e40:8797:f0ac:23e)
2022-01-05 11:59:47 +0100shailangsa_(~shailangs@host86-162-150-202.range86-162.btcentralplus.com)
2022-01-05 12:00:26 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-01-05 12:00:51 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 12:01:13 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk)
2022-01-05 12:02:08 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:02:52 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 12:03:23 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-01-05 12:07:01 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 12:08:01 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:12:58 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2022-01-05 12:13:19 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 12:13:37 +0100 <euouae> quick question in the category Hask, is 3 :: Int an arrow () -> Int ?
2022-01-05 12:14:02 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:14:04 +0100 <euouae> because I'm reading that types are objects of Hask and arrows are themselves
2022-01-05 12:16:00 +0100duckonomy_(~duckonomy@177.ip-144-217-84.net)
2022-01-05 12:17:01 +0100 <geekosaur> categories don't care about values
2022-01-05 12:17:29 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-01-05 12:17:37 +0100 <geekosaur> that said, 3 :: Int is secretly a function, but that function is fromInteger
2022-01-05 12:18:33 +0100duckonomy(~duckonomy@177.ip-144-217-84.net) (Ping timeout: 268 seconds)
2022-01-05 12:18:49 +0100 <geekosaur> so there is an arrow there but not because it's a value as such
2022-01-05 12:18:57 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 12:19:31 +0100alx741(~alx741@157.100.93.160)
2022-01-05 12:19:58 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:20:07 +0100 <euouae> isn't every arrow in Hask a function of Haskell?
2022-01-05 12:20:17 +0100duckonomy_(~duckonomy@177.ip-144-217-84.net) (Ping timeout: 240 seconds)
2022-01-05 12:22:23 +0100duckonomy(~duckonomy@177.ip-144-217-84.net)
2022-01-05 12:22:52 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2022-01-05 12:23:11 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 12:23:12 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 12:23:12 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 12:24:34 +0100cheater(~Username@user/cheater)
2022-01-05 12:24:58 +0100 <geekosaur> it is, but the typeclass hackery around numeric values is not an attribute of Hask
2022-01-05 12:26:04 +0100 <geekosaur> and a value like 'a' simply doesn't exist from the viewpoint of Hask, it's too low level
2022-01-05 12:26:10 +0100 <tomsmeding> euouae: if types are the objects and function types are arrows (that's what you're saying, right?), then _values_ of types aren't things in the category, right?
2022-01-05 12:26:23 +0100 <tomsmeding> I think I'm echoing geekosaur in different words
2022-01-05 12:26:32 +0100 <euouae> tomsmeding types are objects and arrows are arrow values
2022-01-05 12:26:35 +0100 <xsperry> :t 3
2022-01-05 12:26:36 +0100 <lambdabot> Num p => p
2022-01-05 12:26:38 +0100 <xsperry> how is that a function?
2022-01-05 12:26:42 +0100 <tomsmeding> euouae: oh right
2022-01-05 12:26:57 +0100 <tomsmeding> xsperry: it's a function that takes a type class dictionary for Num and produces a value
2022-01-05 12:26:59 +0100 <geekosaur> you can read => as -> where the first parameter is a dictionary
2022-01-05 12:26:59 +0100 <xsperry> :t 3 :: Int
2022-01-05 12:27:00 +0100 <lambdabot> Int
2022-01-05 12:27:18 +0100 <tomsmeding> \NumDict { fromInteger = f } -> f 3#
2022-01-05 12:27:25 +0100 <geekosaur> in this case it pulls the definition of fromInteger out of the dictionary and applies it to the Integer 3 to get the Int 3
2022-01-05 12:28:11 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 12:28:12 +0100 <xsperry> right. fromInteger (3 :: Integer) :: Int is not a function
2022-01-05 12:28:23 +0100 <geekosaur> but fromInteger is
2022-01-05 12:28:31 +0100 <xsperry> yes, but 3 is not fromInteger
2022-01-05 12:28:34 +0100 <tomsmeding> euouae: so arrows are _function_ values, right? An arrow A -> B is a function of type A -> B; 'Int' is not a function type, so a value of type Int is not an arrow, right?
2022-01-05 12:29:03 +0100 <euouae> tomsmeding yeah but the solution is that there are arrows () -> Int
2022-01-05 12:29:08 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 12:29:21 +0100 <euouae> so e.g. f :: () -> Int, f _ = 3
2022-01-05 12:29:24 +0100 <tomsmeding> well yeah, '\() -> 3 :: Int' is an arrow from () to Int
2022-01-05 12:29:37 +0100 <geekosaur> but `3 :: Int` is not such an arrow
2022-01-05 12:29:53 +0100 <tomsmeding> but '\() -> 3 :: Int' is not the same as '3 :: Int' -- their types aren't even the same :)
2022-01-05 12:29:53 +0100 <euouae> ah, I get you now
2022-01-05 12:29:53 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 12:30:12 +0100 <geekosaur> likewise 'a' is not an arrow () -> Char, it's just a Char value which is not the topic of the category
2022-01-05 12:30:13 +0100 <euouae> right, `Hask` is a simplified model of the real thing
2022-01-05 12:30:33 +0100 <geekosaur> the very first thing I said, categories do not care about values
2022-01-05 12:31:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:31:37 +0100 <geekosaur> simplified in some ways, more complicated in others. I'd say it's a matter of focus rather than simplicity
2022-01-05 12:32:33 +0100 <tomsmeding> euouae: and if `f` has an instance of Functor, then `f` corresponds to a functor from Hask to Hask, mapping objects (i.e. types) `T` to `f T` (that's what `f` does in Haskell) and arrows (from `A` to `B`) to arrows (from `f A` to `f B`) (that's what `fmap` does in Haskell)
2022-01-05 12:32:59 +0100 <tomsmeding> perhaps I should not have capitalised T there
2022-01-05 12:33:07 +0100 <tomsmeding> or meh
2022-01-05 12:33:47 +0100tomsmedingonly half-understands this stuff through repeated attempts at reading introductions in this stuff
2022-01-05 12:34:48 +0100 <euouae> from what I've read on type theory, Unit is a type, () :: Unit and that's the only value with that type
2022-01-05 12:35:01 +0100 <euouae> so I thought part of the utility of Unit is to pick up "nonarrow" values
2022-01-05 12:35:08 +0100 <tomsmeding> and haskell isn't type theory, since:
2022-01-05 12:35:13 +0100 <tomsmeding> :t undefined :: ()
2022-01-05 12:35:14 +0100 <lambdabot> ()
2022-01-05 12:35:23 +0100 <geekosaur> part of the utility of unit is to enable laziness. haskell just does that part for you
2022-01-05 12:36:03 +0100 <geekosaur> every non-strict expression e is actually \() -> e
2022-01-05 12:36:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 12:36:32 +0100 <euouae> oh. hm... ok that at least looks like what I had in mind
2022-01-05 12:36:44 +0100 <tomsmeding> euouae: A isn't magically the same as Unit -> A, but because there are exactly as many arrows from Unit to A as there are values in A, Hom(Unit, A) is in a sense isomorphic to A
2022-01-05 12:36:59 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:37:07 +0100 <geekosaur> this is more or less what you do in e.g. javascript to get a lazy value, except they spell it something like function() { e }
2022-01-05 12:37:12 +0100 <tomsmeding> haskell then makes everything more complicated because its lazy semantics do stuff like geekosaur said :p
2022-01-05 12:37:56 +0100notzmv(~zmv@user/notzmv)
2022-01-05 12:41:09 +0100 <euouae> thanks for the help
2022-01-05 12:41:12 +0100euouae(~euouae@user/euouae) (Quit: got to go)
2022-01-05 12:41:50 +0100equivrel(~user@95.172.236.133)
2022-01-05 12:43:20 +0100equivrel(~user@95.172.236.133) (Client Quit)
2022-01-05 12:45:33 +0100gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2022-01-05 12:47:01 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 12:47:03 +0100alx741(~alx741@157.100.93.160)
2022-01-05 12:48:56 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:49:37 +0100gehmehgeh(~user@user/gehmehgeh)
2022-01-05 12:50:23 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Quit: Leaving)
2022-01-05 12:52:05 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-05 12:53:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 12:53:57 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 12:53:57 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 12:53:57 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 12:54:44 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 12:55:07 +0100polyphem_(~rod@2a02:810d:640:776c:e450:3ca3:b389:687a) (Quit: WeeChat 3.3)
2022-01-05 12:56:42 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 12:59:13 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 12:59:27 +0100polyphem(~rod@2a02:810d:640:776c:e450:3ca3:b389:687a)
2022-01-05 12:59:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 13:00:32 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:06:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 13:06:46 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:07:01 +0100ircs(~ircs@2-111-85-72-cable.dk.customer.tdc.net) (Ping timeout: 240 seconds)
2022-01-05 13:08:31 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-01-05 13:09:04 +0100Vajb(~Vajb@2001:999:50:e6be:1e98:9376:d93e:4506)
2022-01-05 13:11:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 13:11:49 +0100ubert(~Thunderbi@2a02:8109:9880:303c:3e40:8797:f0ac:23e) (Ping timeout: 240 seconds)
2022-01-05 13:12:04 +0100sander(~sander@user/sander) (Quit: So long! :))
2022-01-05 13:12:40 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:13:03 +0100xb0o2(~xb0o2@user/xb0o2)
2022-01-05 13:13:58 +0100sander(~sander@user/sander)
2022-01-05 13:14:35 +0100alx741(~alx741@157.100.93.160)
2022-01-05 13:15:14 +0100ubert(~Thunderbi@2a02:8109:9880:303c:2a00:eeaf:f8c:1b54)
2022-01-05 13:15:50 +0100lavaman(~lavaman@98.38.249.169)
2022-01-05 13:16:31 +0100kuribas(~user@ptr-25vy0i91z2t2xltfc74.18120a2.ip6.access.telenet.be)
2022-01-05 13:18:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 13:18:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:19:40 +0100mmhat(~mmh@55d49507.access.ecotel.net)
2022-01-05 13:19:40 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 13:20:11 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2022-01-05 13:24:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 13:24:25 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:29:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 13:30:07 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:31:58 +0100spaceseller_(~spacesell@31.147.205.13)
2022-01-05 13:33:02 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 240 seconds)
2022-01-05 13:35:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 13:35:52 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 13:36:41 +0100alx741(~alx741@157.100.93.160)
2022-01-05 13:37:12 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-01-05 13:37:19 +0100_ht(~quassel@82-169-194-8.biz.kpn.net) (Ping timeout: 256 seconds)
2022-01-05 13:37:29 +0100_ht(~quassel@37.120.218.148)
2022-01-05 13:39:23 +0100spaceseller_(~spacesell@31.147.205.13) (Quit: Leaving)
2022-01-05 13:41:31 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2022-01-05 13:44:02 +0100rond_(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd)
2022-01-05 13:45:55 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 13:45:55 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 13:47:59 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-05 13:48:05 +0100nhatanh02(~satori@123.24.172.30) (Ping timeout: 256 seconds)
2022-01-05 13:49:52 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-01-05 13:50:13 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 240 seconds)
2022-01-05 13:54:47 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) (Ping timeout: 250 seconds)
2022-01-05 14:00:13 +0100acidjnk_new(~acidjnk@p200300d0c7271e933133c43131ec7c10.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-01-05 14:00:13 +0100acidjnk(~acidjnk@p200300d0c7271e933133c43131ec7c10.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-01-05 14:02:50 +0100alx741(~alx741@157.100.93.160)
2022-01-05 14:03:14 +0100jumper149(~jumper149@static.6.71.203.116.clients.your-server.de)
2022-01-05 14:06:02 +0100max22-(~maxime@lfbn-ren-1-1026-62.w92-139.abo.wanadoo.fr) (Ping timeout: 240 seconds)
2022-01-05 14:09:18 +0100 <Boarders_> could anyone tell me how I pass test-arguments to an executable with cabal. I am trying:
2022-01-05 14:09:18 +0100 <Boarders_> cabal run my-test -- "--color -m Prelude"
2022-01-05 14:10:23 +0100zincy_(~zincy@2a00:23c8:970c:4801:8d43:554e:d62c:915d)
2022-01-05 14:12:47 +0100 <yushyin> without the quotes it should just work, no?
2022-01-05 14:13:26 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 14:15:39 +0100 <Boarders_> ah, seems good, thanks!
2022-01-05 14:19:00 +0100zincy_(~zincy@2a00:23c8:970c:4801:8d43:554e:d62c:915d) (Remote host closed the connection)
2022-01-05 14:24:56 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-01-05 14:25:19 +0100spaceseller_(~spacesell@31.147.205.13)
2022-01-05 14:27:17 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk)
2022-01-05 14:28:05 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net)
2022-01-05 14:29:54 +0100alx741(~alx741@157.100.93.160)
2022-01-05 14:31:35 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2022-01-05 14:31:49 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net) (Ping timeout: 240 seconds)
2022-01-05 14:33:06 +0100 <Boarders_> I have a cabal file with field: hspec <2.7.9
2022-01-05 14:33:06 +0100 <Boarders_> but when I configure and then generate the freeze file I get hspec==2.8.2, does anyone know why that might be the case?
2022-01-05 14:33:54 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 14:34:37 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 240 seconds)
2022-01-05 14:35:09 +0100 <merijn> Near impossible to say without seeing the cabal file
2022-01-05 14:37:29 +0100 <Boarders_> one moment
2022-01-05 14:37:29 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 14:40:17 +0100 <Boarders_> merijn: https://gist.github.com/Boarders/8a4897ab4b2e899dc5ad32bee82d55ff
2022-01-05 14:41:00 +0100 <merijn> You ran freeze without --enable-tests, didn't you? :)
2022-01-05 14:42:40 +0100 <Boarders_> ah, yes!
2022-01-05 14:43:28 +0100 <Boarders_> but doing cabal freeze --enable-tests also gives version 2.8.2
2022-01-05 14:43:46 +0100 <merijn> Can you show the freeze file?
2022-01-05 14:44:36 +0100 <merijn> Boarders_: It is not unlikely the 2.8.2 dependency is in one of your transitive dependencies? As long as that dependency isn't linked into your test suite it should be fine
2022-01-05 14:44:50 +0100 <merijn> Boarders_: You can also use cabal-plan to visualise the transitive dependency graph
2022-01-05 14:44:55 +0100 <merijn> @hackage cabal-plan
2022-01-05 14:44:55 +0100 <lambdabot> https://hackage.haskell.org/package/cabal-plan
2022-01-05 14:45:33 +0100 <Boarders_> The problem is I need this old version because otherwise I need to import different modules between stack and cabal
2022-01-05 14:46:08 +0100 <merijn> Boarders_: Because stack has an older version?
2022-01-05 14:46:57 +0100 <merijn> Boarders_: You can easily have an ifdef around the import to check which hspec version is used at compile time and use the right import that way
2022-01-05 14:47:10 +0100 <Boarders_> it is for stack having the older version yes
2022-01-05 14:48:06 +0100 <Boarders_> shouldn't I be able to get specific versions with cabal though, seems quite bad it doesn't respect the versions asked for?
2022-01-05 14:48:29 +0100 <merijn> I am not convinced you have demonstrated it doesn't respect the version asked for
2022-01-05 14:48:51 +0100 <Boarders_> why not? where would it list the version it is building the tests with?
2022-01-05 14:48:58 +0100 <merijn> In fact, if what you *think* is happening, is happening, that'd be a pretty massive bug in cabal-install
2022-01-05 14:49:10 +0100 <Boarders_> could you be les cryptic
2022-01-05 14:49:12 +0100 <Boarders_> less*
2022-01-05 14:49:30 +0100 <merijn> Boarders_: hspec-2.8.2 appearing in the freeze file is not the same as "your tests are linked with hspec-2.8.2"
2022-01-05 14:49:50 +0100 <merijn> in fact, if that was true, building your code with compile should be a compile time error if the new version has different imports
2022-01-05 14:50:09 +0100abrantesasf(~abrantesa@187.36.170.211)
2022-01-05 14:50:13 +0100 <Boarders_> ok, but stack and cabal disagree about what is exported between tasty-hspec and hspec so it doesn't appear they are getting the same version
2022-01-05 14:50:20 +0100 <merijn> Boarders_: hspec-2.8.2 being in the freeze file just shows that "hspec-2.8.2" is *somewhere* in the build plan of your transitive-dependencies
2022-01-05 14:50:44 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd)
2022-01-05 14:50:45 +0100 <merijn> Boarders_: You don't have a bound on tasty-hspec, though?
2022-01-05 14:50:57 +0100 <Boarders_> I added one and it makes no difference
2022-01-05 14:52:15 +0100 <merijn> Boarders_: Get cabal-plan from hackage, and make it print out the transitive dependencies/full buildplan. *Then* we know what versions of which dependency are linked where, and then you can debug from there
2022-01-05 14:52:34 +0100 <Boarders_> ok, thanks very much for the info, very helpful
2022-01-05 14:53:21 +0100 <merijn> Boarders_: Also, compare the errors of the cabal build and compare with the hspec/tasty-hspec changelog to see which version's changes errors relate too
2022-01-05 14:53:39 +0100nhatanh02(~satori@123.24.172.30)
2022-01-05 14:53:43 +0100 <merijn> On a side note, that cabal file is a recipe for disaster with the entire lack of bounds
2022-01-05 14:53:57 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-01-05 14:54:11 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk)
2022-01-05 14:54:38 +0100 <yushyin> maybe cabal.project's constraints: may help?
2022-01-05 14:55:24 +0100alx741(~alx741@157.100.93.160)
2022-01-05 14:57:20 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-05 14:58:42 +0100yates(~user@fv-nc-f7af8b91e1-234237-1.tingfiber.com) (Remote host closed the connection)
2022-01-05 15:04:21 +0100Everything(~Everythin@37.115.210.35) (Quit: leaving)
2022-01-05 15:04:36 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 15:07:36 +0100abrantesasf(~abrantesa@187.36.170.211) (Read error: Connection reset by peer)
2022-01-05 15:09:06 +0100 <lechner> Hi, for anyone using Emacs (or perhaps Vim): We add small editor notations to our Perl files. Should I do something similar with Haskell? Thanks! https://salsa.debian.org/lintian/lintian/-/blob/master/bin/lintian#L1045-1049
2022-01-05 15:10:27 +0100abrantesasf(~abrantesa@187.36.170.211)
2022-01-05 15:15:58 +0100 <tomsmeding> lechner: don't know about emacs, but 'et' for sure, the rest is subjective :p
2022-01-05 15:16:12 +0100codygman[m](~codygman@2001:470:69fc:105::b4ba)
2022-01-05 15:16:17 +0100 <tomsmeding> every style you can reasonably think of is practiced by someone
2022-01-05 15:16:31 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4)
2022-01-05 15:16:45 +0100 <geekosaur> and some you can't
2022-01-05 15:16:57 +0100geekosaurwill spare everyone's sanity
2022-01-05 15:17:42 +0100 <tomsmeding> you know that kind of drops just excite people like us
2022-01-05 15:18:16 +0100geekosaurcan't find that code snippet where someone tried to turn javascript into python
2022-01-05 15:19:00 +0100 <geekosaur> probably for the best
2022-01-05 15:19:26 +0100 <tomsmeding> was it like the classic where C was turned into ALGOL
2022-01-05 15:19:34 +0100 <geekosaur> sort of, yes
2022-01-05 15:19:37 +0100 <tomsmeding> except you can't do that in js because no macros
2022-01-05 15:19:51 +0100 <lechner> okay, this one i asked before. what's everone's favorite code formatter please?
2022-01-05 15:19:51 +0100 <tomsmeding> or did they run CPP on js
2022-01-05 15:20:03 +0100 <tomsmeding> https://twitter.com/comerijn/status/1257804634833420292
2022-01-05 15:20:19 +0100 <geekosaur> actually it reminded me more of the bad old days programming perl with poor editor support so we had to put comments at the ends of lines with extra formatting to keep the editor from getting confused
2022-01-05 15:20:51 +0100kspalaiologos(~kspalaiol@user/kspalaiologos) (Quit: Leaving)
2022-01-05 15:21:12 +0100 <tomsmeding> heh, when I still coded in sublime text (which had at that time a mediocre haskell highlighting spec), I used to put `-- =` at the end of function definitions with guards
2022-01-05 15:21:27 +0100 <tomsmeding> because the highlighting was in type mode until it saw a =
2022-01-05 15:21:34 +0100alx741(~alx741@157.100.93.160)
2022-01-05 15:22:08 +0100shriekingnoise(~shrieking@186.137.144.80)
2022-01-05 15:23:59 +0100 <lechner> Hi, does cabal only work with a top level file, or can i nest them in sub-directories please?
2022-01-05 15:25:00 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-01-05 15:25:38 +0100rond_13(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd)
2022-01-05 15:26:05 +0100 <tomsmeding> I presume you're looking for https://cabal.readthedocs.io/en/latest/cabal-project.html
2022-01-05 15:26:05 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 15:26:35 +0100_ht(~quassel@37.120.218.148) (Remote host closed the connection)
2022-01-05 15:26:53 +0100rond_42(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd)
2022-01-05 15:27:36 +0100yahb(xsbot@user/mniip/bot/yahb)
2022-01-05 15:27:39 +0100 <geekosaur> I'm not sure I understand the question. cabal normally looks for a single *.cabal file in the current directory, but cabal.project can tell it where to look for multiple cabal files comprising a single project. if you mean source files, there's a cabal file directive for that
2022-01-05 15:27:56 +0100mniip(mniip@libera/staff/mniip)
2022-01-05 15:28:26 +0100spaceseller_(~spacesell@31.147.205.13) (Quit: Leaving)
2022-01-05 15:29:56 +0100_ht(~quassel@82-169-194-8.biz.kpn.net)
2022-01-05 15:29:57 +0100rond_(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd) (Ping timeout: 256 seconds)
2022-01-05 15:30:06 +0100 <lechner> yeah, i think that's it. i'm gradually converting my project to Haskell and have several parts. thanks!
2022-01-05 15:30:26 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2022-01-05 15:31:04 +0100 <lechner> what an addictive language! there ought to be a help line
2022-01-05 15:31:05 +0100rond_13(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd) (Ping timeout: 256 seconds)
2022-01-05 15:31:34 +0100 <merijn> lechner: yeah, if your problem is "I have a bunch of independent packages that depend on each other combined into one project" then cabal.project is the way to go
2022-01-05 15:31:39 +0100nhatanh02(~satori@123.24.172.30) (Ping timeout: 256 seconds)
2022-01-05 15:32:39 +0100mikoto-chan(~mikoto-ch@esm-84-240-99-143.netplaza.fi)
2022-01-05 15:32:56 +0100 <lechner> thanks! i may combine the individual cabal files when the conversion is done.
2022-01-05 15:35:10 +0100`2jt(~jtomas@153.red-83-53-252.dynamicip.rima-tde.net) (Remote host closed the connection)
2022-01-05 15:35:26 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Remote host closed the connection)
2022-01-05 15:35:34 +0100`2jt(~jtomas@153.red-83-53-252.dynamicip.rima-tde.net)
2022-01-05 15:36:17 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 15:36:17 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 15:36:17 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 15:36:48 +0100benin1(benin@gateway/vpn/protonvpn/benin)
2022-01-05 15:37:09 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-05 15:38:13 +0100benin(~benin@183.82.176.241) (Ping timeout: 240 seconds)
2022-01-05 15:38:13 +0100benin1benin
2022-01-05 15:38:24 +0100eoiles[m](~eoilesmat@2001:470:69fc:105::1:6164)
2022-01-05 15:42:30 +0100alx741(~alx741@157.100.93.160)
2022-01-05 15:43:42 +0100 <lechner> On secnod thought, i just went with a single cabal file. it's all under one license anyway
2022-01-05 15:44:33 +0100 <lechner> Is 0.1.0.0 a good first version number (these are exectables) in the Haskell ecosystem?
2022-01-05 15:44:40 +0100 <merijn> lechner: cabal.project is more for when you wanna have independent packages that work in lockstep
2022-01-05 15:44:41 +0100 <lechner> executables
2022-01-05 15:45:24 +0100 <merijn> lechner: i.e. I have package foo and package bar (depending on foo). Now new development releases will probably depend on development versions of foo, so I can't just use the hackage dependency. That kinda problem
2022-01-05 15:45:43 +0100 <merijn> lechner: If you just have a bunch of independent executables there's not much reason to not throw them in the same cabal file, no
2022-01-05 15:45:59 +0100 <merijn> 0.1.0 is pretty standard, yeah
2022-01-05 15:46:18 +0100 <lechner> three or four digits?
2022-01-05 15:46:42 +0100 <merijn> I mean, 4 doesn't seem to really serve a purpose?
2022-01-05 15:46:42 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 15:46:44 +0100 <merijn> Oh, also
2022-01-05 15:46:47 +0100 <merijn> @where pvp
2022-01-05 15:46:47 +0100 <lambdabot> https://pvp.haskell.org/
2022-01-05 15:46:50 +0100 <merijn> That
2022-01-05 15:49:47 +0100deadmarshal(~deadmarsh@95.38.116.69) (Ping timeout: 256 seconds)
2022-01-05 15:50:08 +0100 <lechner> anything ever came out of this proposal (and the 1.X.Y.Z corollary)? https://taylor.fausak.me/2016/12/28/problematic-versioning-policy/
2022-01-05 15:51:00 +0100 <lechner> although i won't be uploading to hackage
2022-01-05 15:52:12 +0100max22-(~maxime@2a01cb088335980086c6bc2422140675.ipv6.abo.wanadoo.fr)
2022-01-05 15:55:28 +0100 <merijn> lechner: No and I don't think it will
2022-01-05 15:55:49 +0100xff0x(~xff0x@2001:1a81:53e7:b00:95c4:6090:2048:abcf) (Ping timeout: 240 seconds)
2022-01-05 15:56:02 +0100 <merijn> lechner: PVP predates Semantic Version and many people prefer it. Additionally, the PVP is much more explicit about what "breaking" means compared to semver
2022-01-05 15:56:42 +0100 <merijn> I mean, there isn't a single "semver" anyway
2022-01-05 15:56:58 +0100xff0x(~xff0x@port-92-195-123-135.dynamic.as20676.net)
2022-01-05 15:57:36 +0100 <merijn> Most packages and ecosystems have their own "semver-inspired" thing they roll with. Additionally, semver doesn't really solve any of the issues he mentions
2022-01-05 15:58:40 +0100 <merijn> "PVP doesn't explicitly forbid people from doing dumb things!" I mean, I guess it doesn't? But, like, it's not there's a versioning police that stops people from doing dumb things with semver either?
2022-01-05 16:00:23 +0100 <lechner> yeah, i'm new to the PVP, but i also think semver may be a bit overrated
2022-01-05 16:01:02 +0100 <merijn> On the whole, that whole reasoning on that page seems to boil down to "I don't like PVP" with very little objective argumentation to convince me
2022-01-05 16:01:21 +0100 <lechner> like so much online
2022-01-05 16:02:55 +0100 <merijn> And far from everyone follows the PVP (strictly or otherwise), but it's by far the most common/popular approach, so if you wanna pick something and fit in, it's a good choice
2022-01-05 16:03:27 +0100alx741(~alx741@157.100.93.160)
2022-01-05 16:04:26 +0100 <tdammers> pvp is a decent idea, it's just a pity that there's no way to properly enforce it, and without enforcement, it loses much of its utility
2022-01-05 16:05:07 +0100 <tdammers> semver, however, is just pseudo-exact dynamic nonsense
2022-01-05 16:05:29 +0100husixu(~husixu@137.132.119.2)
2022-01-05 16:06:02 +0100jlamothe(~jlamothe@198.251.61.229) (Quit: leaving)
2022-01-05 16:06:24 +0100 <merijn> The main argument against PVP is usually "but we can't strictly enforce this, so it doesn't actually guarantee anything!". Which is true, but just abandoning the entire idea and going "welp...everyone's on their own...anarchy reigns!" seems...you know, counterproductive
2022-01-05 16:06:48 +0100 <maerwald> pvp not having beta/rc is a major annoyance though, which caused GHC to use odd version schemes for pre-releases
2022-01-05 16:06:53 +0100 <tdammers> well yeah. pvp doesn't guarantee anything, but all the alternatives achieve even less
2022-01-05 16:07:46 +0100 <lechner> merijn: i just want to fit in
2022-01-05 16:08:13 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 16:09:08 +0100 <merijn> lechner: Then PVP is as much "fitting in" as possible :)
2022-01-05 16:09:11 +0100 <tdammers> I actually think pvp strikes a pretty good balance. It doesn't guarantee anything, but it's good enough to guide version selection; and when it guides us wrong, then things still won't explode in our faces, we just get a project that won't build until we step in and manually fix the dependency bounds
2022-01-05 16:09:51 +0100 <maerwald> I think both PVP and semver are the wrong solutions
2022-01-05 16:09:58 +0100 <maerwald> they encourage breaking API
2022-01-05 16:10:37 +0100 <tdammers> I prefer to think that they acknowledge that breaking APIs is a fact of life
2022-01-05 16:10:51 +0100 <merijn> maerwald: You always get the API design right the first time? :p
2022-01-05 16:11:00 +0100 <merijn> tdammers++
2022-01-05 16:11:43 +0100 <maerwald> tdammers: hmm... C libraries (and go libraries for some time at least) did fine without constant API breakage
2022-01-05 16:11:52 +0100 <maerwald> it's a culture thing
2022-01-05 16:11:58 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-01-05 16:12:05 +0100 <merijn> maerwald: "unconstrained API churn" is a maintainer priority issue, not a versioning issue
2022-01-05 16:12:35 +0100 <maerwald> merijn: versioning policies make breaking API easier
2022-01-05 16:12:38 +0100 <maerwald> so it creates culture
2022-01-05 16:12:55 +0100 <lechner> merijn: why do semver (and pvp) encourage breaking api?
2022-01-05 16:12:56 +0100 <merijn> maerwald: A lot of widely used C libraries are the Nth iteration that have years of experimentation behind them before their stable APIs settled
2022-01-05 16:12:59 +0100 <lechner> maerwald: ^
2022-01-05 16:13:20 +0100 <lechner> merijn: sorry
2022-01-05 16:13:35 +0100 <tdammers> I think the argument is that if you have a mechanism that makes API changes safer, people will more readily change their APIs
2022-01-05 16:13:48 +0100 <merijn> My APIs breaking isn't a result of PVP "encouraging it", it's a result of me actively experimenting to find the API I like
2022-01-05 16:14:07 +0100 <tdammers> which, to a degree, is true; but the other side of the medal is that when API changes are dangerous and unmanaged, people will avoid them even when they would be the right thing
2022-01-05 16:14:10 +0100 <merijn> And I, frankly, don't give a shit about the stability
2022-01-05 16:14:23 +0100 <maerwald> lechner: because instead of getting hate from your users, you create a mess of contraints due to PVP, then write brittle tools that deal with all the bounds issues, then come up with stack and nix that throw all of those away, then come up with freeze files and hackage revisions (which are a huge hack)
2022-01-05 16:14:25 +0100 <maerwald> etc. etc.
2022-01-05 16:14:46 +0100 <maerwald> and people just keep experimenting with APIs
2022-01-05 16:14:53 +0100 <maerwald> because it's easy
2022-01-05 16:14:58 +0100 <maerwald> and you don't get hate
2022-01-05 16:15:03 +0100 <merijn> maerwald: Don't want me to experiment with my APIs? Pay me to maintain a stable version
2022-01-05 16:15:16 +0100 <merijn> maerwald: You shouldn't get hate anyway
2022-01-05 16:15:35 +0100 <merijn> Anyway who hates on maintainers for breaking open source stuff can fuck right off
2022-01-05 16:15:37 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 16:15:40 +0100 <merijn> s/Anyway/Anyone
2022-01-05 16:16:16 +0100 <maerwald> merijn: uhm... I broke github actions for Haskell... and was the most loved person for a week
2022-01-05 16:16:18 +0100 <maerwald> ;)
2022-01-05 16:16:26 +0100 <maerwald> and rightly so
2022-01-05 16:16:29 +0100ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-01-05 16:16:33 +0100 <merijn> Disagree
2022-01-05 16:16:40 +0100jlamothe(~jlamothe@198.251.61.229)
2022-01-05 16:16:41 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-01-05 16:17:04 +0100 <lechner> maerwald: you don't sound like the renegade who authored ghcup!
2022-01-05 16:17:23 +0100 <maerwald> it's more because virtual-environments on github are rolling release
2022-01-05 16:17:26 +0100 <merijn> You wanna have stability guarantees and support? You can bloody well pay for them
2022-01-05 16:17:30 +0100Sgeo(~Sgeo@user/sgeo)
2022-01-05 16:17:35 +0100benin5(~benin@183.82.176.241)
2022-01-05 16:17:40 +0100 <lechner> apt-get will resolve everything for you
2022-01-05 16:17:42 +0100 <maerwald> so github actions can break any week, basically
2022-01-05 16:17:54 +0100 <maerwald> if there's a bug in virtual-environments
2022-01-05 16:18:05 +0100 <maerwald> you can't freeze the instances
2022-01-05 16:18:20 +0100 <merijn> The professionalisation of open source is one of the worst things of the modern internet, together with the "verzuiling" of the web >.>
2022-01-05 16:29:29 +0100litharge(litharge@libera/bot/litharge) (*.net *.split)
2022-01-05 16:29:29 +0100benin5(~benin@183.82.176.241) (*.net *.split)
2022-01-05 16:29:29 +0100Sgeo(~Sgeo@user/sgeo) (*.net *.split)
2022-01-05 16:29:29 +0100jlamothe(~jlamothe@198.251.61.229) (*.net *.split)
2022-01-05 16:29:29 +0100husixu(~husixu@137.132.119.2) (*.net *.split)
2022-01-05 16:29:29 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (*.net *.split)
2022-01-05 16:29:29 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk) (*.net *.split)
2022-01-05 16:29:29 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net) (*.net *.split)
2022-01-05 16:29:29 +0100ubert(~Thunderbi@2a02:8109:9880:303c:2a00:eeaf:f8c:1b54) (*.net *.split)
2022-01-05 16:29:29 +0100duckonomy(~duckonomy@177.ip-144-217-84.net) (*.net *.split)
2022-01-05 16:29:29 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net) (*.net *.split)
2022-01-05 16:29:29 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (*.net *.split)
2022-01-05 16:29:29 +0100drdo(~drdo@144.172.69.89) (*.net *.split)
2022-01-05 16:29:29 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (*.net *.split)
2022-01-05 16:29:29 +0100shailangsa_(~shailangs@host86-162-150-202.range86-162.btcentralplus.com) (*.net *.split)
2022-01-05 16:29:29 +0100n8chan(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net) (*.net *.split)
2022-01-05 16:29:29 +0100matijja(~matijja@193.77.181.201) (*.net *.split)
2022-01-05 16:29:29 +0100xkuru(~xkuru@user/xkuru) (*.net *.split)
2022-01-05 16:29:29 +0100machinedgod(~machinedg@24.105.81.50) (*.net *.split)
2022-01-05 16:29:29 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:c365:2459:70e0:4fac) (*.net *.split)
2022-01-05 16:29:29 +0100kaph(~kaph@net-2-38-107-19.cust.vodafonedsl.it) (*.net *.split)
2022-01-05 16:29:29 +0100coolnickname(uid531864@user/coolnickname) (*.net *.split)
2022-01-05 16:29:29 +0100mbuf(~Shakthi@122.174.247.3) (*.net *.split)
2022-01-05 16:29:29 +0100tomku(~tomku@user/tomku) (*.net *.split)
2022-01-05 16:29:29 +0100neurocyte0(~neurocyte@user/neurocyte) (*.net *.split)
2022-01-05 16:29:29 +0100qwedfg(~qwedfg@user/qwedfg) (*.net *.split)
2022-01-05 16:29:30 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com) (*.net *.split)
2022-01-05 16:29:30 +0100kmein(~weechat@user/kmein) (*.net *.split)
2022-01-05 16:29:30 +0100_xor(~xor@dsl-50-5-233-169.fuse.net) (*.net *.split)
2022-01-05 16:29:30 +0100vysn(~vysn@user/vysn) (*.net *.split)
2022-01-05 16:29:30 +0100pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee) (*.net *.split)
2022-01-05 16:29:30 +0100bsima(~bsima@2604:a880:400:d0::19f1:7001) (*.net *.split)
2022-01-05 16:29:30 +0100doyougnu(~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) (*.net *.split)
2022-01-05 16:29:30 +0100unyu(~pyon@user/pyon) (*.net *.split)
2022-01-05 16:29:30 +0100xbreu(~xbreu@2001:470:69fc:105::1:5061) (*.net *.split)
2022-01-05 16:29:30 +0100benjamin[m]1234(~benjaminm@2001:470:69fc:105::1:3f2f) (*.net *.split)
2022-01-05 16:29:30 +0100InternetManaging(~imjmatrix@2001:470:69fc:105::1:2ea5) (*.net *.split)
2022-01-05 16:29:30 +0100ph88(~ph88@2a02:8109:9e00:71d0::7e04) (*.net *.split)
2022-01-05 16:29:30 +0100Nahra(~user@static.161.95.99.88.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:30 +0100kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net) (*.net *.split)
2022-01-05 16:29:30 +0100lechner(~lechner@debian/lechner) (*.net *.split)
2022-01-05 16:29:30 +0100meinside(uid24933@id-24933.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:30 +0100rembo10(~rembo10@remulis.com) (*.net *.split)
2022-01-05 16:29:30 +0100sprout(~quassel@2a02:a467:ccd6:1:48c8:920f:83dd:ae34) (*.net *.split)
2022-01-05 16:29:30 +0100tolt(~weechat-h@li219-154.members.linode.com) (*.net *.split)
2022-01-05 16:29:30 +0100leah2(~leah@vuxu.org) (*.net *.split)
2022-01-05 16:29:30 +0100L29Ah(~L29Ah@wikipedia/L29Ah) (*.net *.split)
2022-01-05 16:29:30 +0100SquidDev(~SquidDev@autoclave.squiddev.cc) (*.net *.split)
2022-01-05 16:29:30 +0100res0nat0r0(~Fletch@dia.whatbox.ca) (*.net *.split)
2022-01-05 16:29:30 +0100glguy(x@libera/staff/glguy) (*.net *.split)
2022-01-05 16:29:30 +0100xff0x(~xff0x@port-92-195-123-135.dynamic.as20676.net) (*.net *.split)
2022-01-05 16:29:30 +0100benin(benin@gateway/vpn/protonvpn/benin) (*.net *.split)
2022-01-05 16:29:30 +0100`2jt(~jtomas@153.red-83-53-252.dynamicip.rima-tde.net) (*.net *.split)
2022-01-05 16:29:30 +0100abrantesasf(~abrantesa@187.36.170.211) (*.net *.split)
2022-01-05 16:29:30 +0100jumper149(~jumper149@static.6.71.203.116.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:30 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (*.net *.split)
2022-01-05 16:29:31 +0100cheater(~Username@user/cheater) (*.net *.split)
2022-01-05 16:29:31 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (*.net *.split)
2022-01-05 16:29:31 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (*.net *.split)
2022-01-05 16:29:31 +0100emergence(~emergence@vm0.max-p.me) (*.net *.split)
2022-01-05 16:29:31 +0100biberu(~biberu@user/biberu) (*.net *.split)
2022-01-05 16:29:31 +0100bliminse(~bliminse@host86-186-17-7.range86-186.btcentralplus.com) (*.net *.split)
2022-01-05 16:29:31 +0100coot(~coot@89-64-85-93.dynamic.chello.pl) (*.net *.split)
2022-01-05 16:29:31 +0100td_(~td@94.134.91.82) (*.net *.split)
2022-01-05 16:29:31 +0100Erutuon(~Erutuon@user/erutuon) (*.net *.split)
2022-01-05 16:29:31 +0100Alex_test(~al_test@94.233.240.16) (*.net *.split)
2022-01-05 16:29:31 +0100AlexNoo(~AlexNoo@94.233.240.16) (*.net *.split)
2022-01-05 16:29:31 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (*.net *.split)
2022-01-05 16:29:31 +0100mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (*.net *.split)
2022-01-05 16:29:31 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (*.net *.split)
2022-01-05 16:29:31 +0100gentauro(~gentauro@user/gentauro) (*.net *.split)
2022-01-05 16:29:31 +0100tristanC(~tristanC@user/tristanc) (*.net *.split)
2022-01-05 16:29:31 +0100drewr(~drew@user/drewr) (*.net *.split)
2022-01-05 16:29:31 +0100hueso(~root@user/hueso) (*.net *.split)
2022-01-05 16:29:31 +0100vgtw(~vgtw@c-2359205c.07-348-756d651.bbcust.telenor.se) (*.net *.split)
2022-01-05 16:29:31 +0100jinsun(~quassel@user/jinsun) (*.net *.split)
2022-01-05 16:29:31 +0100mrmr(~mrmr@user/mrmr) (*.net *.split)
2022-01-05 16:29:31 +0100aku(~aku@163.172.137.34) (*.net *.split)
2022-01-05 16:29:32 +0100lemonsnicks(~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (*.net *.split)
2022-01-05 16:29:32 +0100geekosaur(~geekosaur@xmonad/geekosaur) (*.net *.split)
2022-01-05 16:29:32 +0100mikoto-chan(~mikoto-ch@esm-84-240-99-143.netplaza.fi) (*.net *.split)
2022-01-05 16:29:32 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (*.net *.split)
2022-01-05 16:29:32 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4) (*.net *.split)
2022-01-05 16:29:32 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net) (*.net *.split)
2022-01-05 16:29:32 +0100kuribas(~user@ptr-25vy0i91z2t2xltfc74.18120a2.ip6.access.telenet.be) (*.net *.split)
2022-01-05 16:29:32 +0100sander(~sander@user/sander) (*.net *.split)
2022-01-05 16:29:32 +0100absence(torgeihe@hildring.pvv.ntnu.no) (*.net *.split)
2022-01-05 16:29:32 +0100infinity0(~infinity0@occupy.ecodis.net) (*.net *.split)
2022-01-05 16:29:32 +0100Jing(~hedgehog@2604:a840:3::103c) (*.net *.split)
2022-01-05 16:29:32 +0100sus(zero@user/zeromomentum) (*.net *.split)
2022-01-05 16:29:32 +0100chele(~chele@user/chele) (*.net *.split)
2022-01-05 16:29:32 +0100d0ku(~d0ku@178.43.3.56.ipv4.supernova.orange.pl) (*.net *.split)
2022-01-05 16:29:32 +0100yaroot(~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953) (*.net *.split)
2022-01-05 16:29:32 +0100remexre(~remexre@user/remexre) (*.net *.split)
2022-01-05 16:29:32 +0100ddb(~ddb@ipv6two.tilde.club) (*.net *.split)
2022-01-05 16:29:32 +0100tito(tito@tilde.team) (*.net *.split)
2022-01-05 16:29:32 +0100awpr(uid446117@id-446117.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:32 +0100zmt00(~zmt00@user/zmt00) (*.net *.split)
2022-01-05 16:29:32 +0100zaquest(~notzaques@5.130.79.72) (*.net *.split)
2022-01-05 16:29:32 +0100Inst(~delicacie@2601:6c4:4080:3f80:f131:ad94:e07f:dfdd) (*.net *.split)
2022-01-05 16:29:32 +0100theproffesor(~theproffe@user/theproffesor) (*.net *.split)
2022-01-05 16:29:32 +0100carbolymer(~carbolyme@dropacid.net) (*.net *.split)
2022-01-05 16:29:32 +0100perro_(~perro@072-191-245-069.res.spectrum.com) (*.net *.split)
2022-01-05 16:29:32 +0100hrdl(~hrdl@mail.hrdl.eu) (*.net *.split)
2022-01-05 16:29:32 +0100TheCoffeMaker(~TheCoffeM@user/thecoffemaker) (*.net *.split)
2022-01-05 16:29:32 +0100mrmonday(~robert@what.i.hope.is.not.a.tabernaevagant.es) (*.net *.split)
2022-01-05 16:29:32 +0100Kaiepi(~Kaiepi@156.34.47.253) (*.net *.split)
2022-01-05 16:29:32 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (*.net *.split)
2022-01-05 16:29:32 +0100obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl) (*.net *.split)
2022-01-05 16:29:33 +0100lagash(lagash@lagash.shelltalk.net) (*.net *.split)
2022-01-05 16:29:33 +0100Techcable(~Techcable@168.235.93.147) (*.net *.split)
2022-01-05 16:29:33 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:33 +0100neverwas(jpneverwas@swissbox.unperson.link) (*.net *.split)
2022-01-05 16:29:33 +0100bsima1(9d7e39c8ad@2604:bf00:561:2000::dd) (*.net *.split)
2022-01-05 16:29:33 +0100opqdonut(opqdonut@pseudo.fixme.fi) (*.net *.split)
2022-01-05 16:29:33 +0100nisstyre(~wes@user/nisstyre) (*.net *.split)
2022-01-05 16:29:33 +0100greyrat(~greyrat@ip202.ip-51-178-215.eu) (*.net *.split)
2022-01-05 16:29:33 +0100Clint(~Clint@user/clint) (*.net *.split)
2022-01-05 16:29:33 +0100kristjansson(sid126207@id-126207.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:33 +0100hexology(~hexology@user/hexology) (*.net *.split)
2022-01-05 16:29:33 +0100landonf(landonf@mac68k.info) (*.net *.split)
2022-01-05 16:29:33 +0100Logio(em@kapsi.fi) (*.net *.split)
2022-01-05 16:29:33 +0100raghavgururajan(ea769b8000@user/raghavgururajan) (*.net *.split)
2022-01-05 16:29:33 +0100mstksg(~jle`@cpe-23-240-75-236.socal.res.rr.com) (*.net *.split)
2022-01-05 16:29:33 +0100totte(~totte@h-82-196-112-155.A166.priv.bahnhof.se) (*.net *.split)
2022-01-05 16:29:33 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split)
2022-01-05 16:29:33 +0100w1gz(~do@159.89.11.133) (*.net *.split)
2022-01-05 16:29:33 +0100In0perable(~PLAYER_1@fancydata.science) (*.net *.split)
2022-01-05 16:29:33 +0100iteratee_(~kyle@162.218.222.107) (*.net *.split)
2022-01-05 16:29:33 +0100ridcully(~ridcully@p57b52a9a.dip0.t-ipconnect.de) (*.net *.split)
2022-01-05 16:29:33 +0100dolio(~dolio@130.44.130.54) (*.net *.split)
2022-01-05 16:29:33 +0100stilgart(~Christoph@chezlefab.net) (*.net *.split)
2022-01-05 16:29:33 +0100nurupo(~nurupo.ga@user/nurupo) (*.net *.split)
2022-01-05 16:29:33 +0100noddy(~user@user/noddy) (*.net *.split)
2022-01-05 16:29:33 +0100enikar(~enikar@user/enikar) (*.net *.split)
2022-01-05 16:29:33 +0100farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (*.net *.split)
2022-01-05 16:29:33 +0100hughjfchen(~hughjfche@vmi556545.contaboserver.net) (*.net *.split)
2022-01-05 16:29:33 +0100andjjj23(~irc@107.170.228.47) (*.net *.split)
2022-01-05 16:29:34 +0100tubogram4(~tubogram@user/tubogram) (*.net *.split)
2022-01-05 16:29:34 +0100Axman6(~Axman6@user/axman6) (*.net *.split)
2022-01-05 16:29:34 +0100Boarders_(sid425905@id-425905.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100JSharp(sid4580@id-4580.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100ysh(sid6017@id-6017.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100saolsen(sid26430@id-26430.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100tapas(sid467876@id-467876.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100cbarrett(sid192934@id-192934.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100enemeth79(sid309041@id-309041.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100bjs(sid190364@user/bjs) (*.net *.split)
2022-01-05 16:29:34 +0100sclv(sid39734@haskell/developer/sclv) (*.net *.split)
2022-01-05 16:29:34 +0100mrianbloom(sid350277@id-350277.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100dmj`(sid72307@id-72307.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100acertain(sid470584@id-470584.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100gaze___(sid387101@id-387101.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100V(~v@anomalous.eu) (*.net *.split)
2022-01-05 16:29:34 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100hongminhee(sid295@id-295.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100Vajb(~Vajb@2001:999:50:e6be:1e98:9376:d93e:4506) (*.net *.split)
2022-01-05 16:29:34 +0100polyphem(~rod@2a02:810d:640:776c:e450:3ca3:b389:687a) (*.net *.split)
2022-01-05 16:29:34 +0100notzmv(~zmv@user/notzmv) (*.net *.split)
2022-01-05 16:29:34 +0100sim590(~simon@modemcable090.207-203-24.mc.videotron.ca) (*.net *.split)
2022-01-05 16:29:34 +0100retro_(~retro@2e40edd9.skybroadband.com) (*.net *.split)
2022-01-05 16:29:34 +0100phma(phma@2001:5b0:215a:cac8:aefe:d82b:57fb:72c6) (*.net *.split)
2022-01-05 16:29:34 +0100jiribenes(~jiribenes@rosa.jiribenes.com) (*.net *.split)
2022-01-05 16:29:34 +0100img(~img@user/img) (*.net *.split)
2022-01-05 16:29:34 +0100terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1) (*.net *.split)
2022-01-05 16:29:34 +0100euandreh(~euandreh@2804:14c:33:9fe5:58c5:6207:2988:1b06) (*.net *.split)
2022-01-05 16:29:34 +0100lally(sid388228@id-388228.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:34 +0100hugo(znc@verdigris.lysator.liu.se) (*.net *.split)
2022-01-05 16:29:34 +0100zero(~z@user/zero) (*.net *.split)
2022-01-05 16:29:34 +0100megaTherion(~therion@unix.io) (*.net *.split)
2022-01-05 16:29:34 +0100dagit(~dagit@2001:558:6025:38:6476:a063:d05a:44da) (*.net *.split)
2022-01-05 16:29:34 +0100berberman(~berberman@user/berberman) (*.net *.split)
2022-01-05 16:29:34 +0100adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) (*.net *.split)
2022-01-05 16:29:34 +0100fjmorazan(~quassel@user/fjmorazan) (*.net *.split)
2022-01-05 16:29:34 +0100xdej(~xdej@quatramaran.salle-s.org) (*.net *.split)
2022-01-05 16:29:34 +0100ezzieyguywuf(~Unknown@user/ezzieyguywuf) (*.net *.split)
2022-01-05 16:29:34 +0100eco_(~ubuntu@ec2-54-201-230-197.us-west-2.compute.amazonaws.com) (*.net *.split)
2022-01-05 16:29:34 +0100ldlework(~hexeme@user/hexeme) (*.net *.split)
2022-01-05 16:29:34 +0100jrm(~jrm@156.34.249.199) (*.net *.split)
2022-01-05 16:29:34 +0100MasseR(~MasseR@51.15.143.128) (*.net *.split)
2022-01-05 16:29:34 +0100Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (*.net *.split)
2022-01-05 16:29:34 +0100synthmeat(~synthmeat@user/synthmeat) (*.net *.split)
2022-01-05 16:29:34 +0100danso(~danso@d67-193-121-2.home3.cgocable.net) (*.net *.split)
2022-01-05 16:29:34 +0100hubvu(sid495858@user/hubvu) (*.net *.split)
2022-01-05 16:29:34 +0100tcard(~tcard@p2878075-ipngn18701hodogaya.kanagawa.ocn.ne.jp) (*.net *.split)
2022-01-05 16:29:34 +0100burakcank(~burakcank@has.arrived.and.is.ready-to.party) (*.net *.split)
2022-01-05 16:29:34 +0100aeka(~aeka@user/hiruji) (*.net *.split)
2022-01-05 16:29:34 +0100puke(~puke@user/puke) (*.net *.split)
2022-01-05 16:29:34 +0100Hafydd(~Hafydd@user/hafydd) (*.net *.split)
2022-01-05 16:29:34 +0100statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (*.net *.split)
2022-01-05 16:29:34 +0100feetwind(~mike@user/feetwind) (*.net *.split)
2022-01-05 16:29:34 +0100Ranhir(~Ranhir@157.97.53.139) (*.net *.split)
2022-01-05 16:29:34 +0100robbert-vdh(~robbert@robbertvanderhelm.nl) (*.net *.split)
2022-01-05 16:29:35 +0100Firedancer(sid336191@id-336191.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100degraafk(sid71464@id-71464.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100glowcoil(sid3405@id-3405.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100carter(sid14827@id-14827.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100aweinstock(~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com) (*.net *.split)
2022-01-05 16:29:35 +0100pie_(~pie_bnc@user/pie/x-2818909) (*.net *.split)
2022-01-05 16:29:35 +0100[exa](exa@user/exa/x-3587197) (*.net *.split)
2022-01-05 16:29:35 +0100derelict(derelict@user/derelict) (*.net *.split)
2022-01-05 16:29:35 +0100ystael(~ystael@user/ystael) (*.net *.split)
2022-01-05 16:29:35 +0100ts2(~ts@46.101.20.9) (*.net *.split)
2022-01-05 16:29:35 +0100g(x@libera/staff/glguy) (*.net *.split)
2022-01-05 16:29:35 +0100swistak(~swistak@185.21.216.141) (*.net *.split)
2022-01-05 16:29:35 +0100Arsen(arsen@managarm/dev/Arsen) (*.net *.split)
2022-01-05 16:29:35 +0100nrr__(sid20938@id-20938.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100integral(sid296274@user/integral) (*.net *.split)
2022-01-05 16:29:35 +0100gmc(sid58314@id-58314.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100dispater(~dispater@user/brprice) (*.net *.split)
2022-01-05 16:29:35 +0100jamestmartin(~james@jtmar.me) (*.net *.split)
2022-01-05 16:29:35 +0100vjoki(~vjoki@2a00:d880:3:1::fea1:9ae) (*.net *.split)
2022-01-05 16:29:35 +0100ehamberg(sid18208@id-18208.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667) (*.net *.split)
2022-01-05 16:29:35 +0100TMA(tma@twin.jikos.cz) (*.net *.split)
2022-01-05 16:29:35 +0100iphy(sid67735@id-67735.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100whez(sid470288@id-470288.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100_0x47_(sid508683@id-508683.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100teehemkay_(sid14792@id-14792.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100gregberns__(sid315709@id-315709.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100MironZ(~MironZ@nat-infra.ehlab.uk) (*.net *.split)
2022-01-05 16:29:35 +0100micro(~micro@user/micro) (*.net *.split)
2022-01-05 16:29:35 +0100russruss(~russruss@my.russellmcc.com) (*.net *.split)
2022-01-05 16:29:35 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100tnks(sid412124@id-412124.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100marienz(~marienz@libera/staff/marienz) (*.net *.split)
2022-01-05 16:29:35 +0100davetapley(sid666@id-666.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100rtpg(sid443069@id-443069.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100lightandlight(sid135476@id-135476.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100caasih(sid13241@id-13241.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100PotatoGim(sid99505@id-99505.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100travv0(sid293381@user/travv0) (*.net *.split)
2022-01-05 16:29:35 +0100philpax_(sid516926@id-516926.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100jakesyl_(sid56879@id-56879.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:35 +0100Ekho(~Ekho@user/ekho) (*.net *.split)
2022-01-05 16:29:36 +0100bbear(~znc@21212.s.t4vps.eu) (*.net *.split)
2022-01-05 16:29:36 +0100dragestil(~znc@user/dragestil) (*.net *.split)
2022-01-05 16:29:36 +0100welterde(welterde@thinkbase.srv.welterde.de) (*.net *.split)
2022-01-05 16:29:36 +0100earthy(~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) (*.net *.split)
2022-01-05 16:29:36 +0100cawfee(~root@2406:3003:2077:2758::babe) (*.net *.split)
2022-01-05 16:29:36 +0100liskin(~liskin@xmonad/liskin) (*.net *.split)
2022-01-05 16:29:36 +0100defanor(~defanor@tart.uberspace.net) (*.net *.split)
2022-01-05 16:29:36 +0100codedmart(codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split)
2022-01-05 16:29:36 +0100mikko(~mikko@2a02:7b40:d418:6a61::1) (*.net *.split)
2022-01-05 16:29:36 +0100xnbya(~xnbya@2a01:4f8:c17:cbdd::1) (*.net *.split)
2022-01-05 16:29:36 +0100bastelfreak(~bastelfre@basteles-bastelknecht.bastelfreak.org) (*.net *.split)
2022-01-05 16:29:36 +0100Adran(~adran@botters/adran) (*.net *.split)
2022-01-05 16:29:36 +0100energizer(~energizer@user/energizer) (*.net *.split)
2022-01-05 16:29:36 +0100tomjaguarpaw(~tom@li367-225.members.linode.com) (*.net *.split)
2022-01-05 16:29:36 +0100immae(~immae@2a01:4f8:141:53e7::) (*.net *.split)
2022-01-05 16:29:36 +0100cross(~cross@spitfire.i.gajendra.net) (*.net *.split)
2022-01-05 16:29:36 +0100janus(janus@anubis.0x90.dk) (*.net *.split)
2022-01-05 16:29:36 +0100phaazon(~phaazon@2001:41d0:a:fe76::1) (*.net *.split)
2022-01-05 16:29:36 +0100sphynx(~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288) (*.net *.split)
2022-01-05 16:29:36 +0100dixie(~dixie@real.wilbury.sk) (*.net *.split)
2022-01-05 16:29:36 +0100dunj3(~dunj3@kingdread.de) (*.net *.split)
2022-01-05 16:29:36 +0100cpape(~user@2a01:4f9:c010:632d::1) (*.net *.split)
2022-01-05 16:29:36 +0100sm[i](~user@plaintextaccounting/sm) (*.net *.split)
2022-01-05 16:29:36 +0100max22-(~maxime@2a01cb088335980086c6bc2422140675.ipv6.abo.wanadoo.fr) (*.net *.split)
2022-01-05 16:29:36 +0100the_last_immorta(~thelastim@2001:470:69fc:105::1:4d57) (*.net *.split)
2022-01-05 16:29:36 +0100octeep[m](~octeepoct@2001:470:69fc:105::1:3dbf) (*.net *.split)
2022-01-05 16:29:36 +0100nomeata(~nomeata@2001:470:69fc:105::1:5ed4) (*.net *.split)
2022-01-05 16:29:36 +0100fsckskye[m](~kmatrixth@2001:470:69fc:105::1:3b2f) (*.net *.split)
2022-01-05 16:29:36 +0100fcortesi(~fcortesi@2001:470:69fc:105::f3a9) (*.net *.split)
2022-01-05 16:29:36 +0100marinelli[m](~marinelli@2001:470:69fc:105::2d8) (*.net *.split)
2022-01-05 16:29:36 +0100DemiMarieObenour(~alwayscur@2001:470:69fc:105::4886) (*.net *.split)
2022-01-05 16:29:36 +0100jneira[m](~jneiramat@2001:470:69fc:105::d729) (*.net *.split)
2022-01-05 16:29:37 +0100maralorn(~maralorn@2001:470:69fc:105::251) (*.net *.split)
2022-01-05 16:29:37 +0100Arathorn(~arathorn@2001:470:69fc:105::1f) (*.net *.split)
2022-01-05 16:29:37 +0100Topik[m](~topikmatr@2001:470:69fc:105::a082) (*.net *.split)
2022-01-05 16:29:37 +0100fgaz(~fgaz@2001:470:69fc:105::842) (*.net *.split)
2022-01-05 16:29:37 +0100sofviic[m](~sofviicma@2001:470:69fc:105::1:51fd) (*.net *.split)
2022-01-05 16:29:37 +0100afotgkmnzj7asv3r(~afotgkmnz@2001:470:69fc:105::c24b) (*.net *.split)
2022-01-05 16:29:37 +0100aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net) (*.net *.split)
2022-01-05 16:29:37 +0100srk(~sorki@user/srk) (*.net *.split)
2022-01-05 16:29:37 +0100haasn(~nand@haasn.dev) (*.net *.split)
2022-01-05 16:29:37 +0100bbhoss(sid18216@id-18216.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:37 +0100scav(sid309693@id-309693.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:38 +0100bw(sid2730@user/betawaffle) (*.net *.split)
2022-01-05 16:29:38 +0100feliix42(~felix@gibbs.uberspace.de) (*.net *.split)
2022-01-05 16:29:38 +0100cln(sid336875@id-336875.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:38 +0100bgamari_(~bgamari@2001:470:e438::1) (*.net *.split)
2022-01-05 16:29:38 +0100ishutin(~ishutin@92-249-182-7.pool.digikabel.hu) (*.net *.split)
2022-01-05 16:29:38 +0100slowtyper(~slowtyper@user/slowtyper) (*.net *.split)
2022-01-05 16:29:38 +0100wrengr(~wrengr@150.12.83.34.bc.googleusercontent.com) (*.net *.split)
2022-01-05 16:29:38 +0100averell(~averell@user/averell) (*.net *.split)
2022-01-05 16:29:38 +0100mrus(~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae) (*.net *.split)
2022-01-05 16:29:38 +0100dwt_(~dwt_@c-98-198-103-176.hsd1.tx.comcast.net) (*.net *.split)
2022-01-05 16:29:38 +0100Ferdirand(~somebody@2001:4c78:2012:5000::2) (*.net *.split)
2022-01-05 16:29:38 +0100dfg(dfg@user/dfg) (*.net *.split)
2022-01-05 16:29:38 +0100Unhammer(~Unhammer@user/unhammer) (*.net *.split)
2022-01-05 16:29:38 +0100relrod(~relrod@redhat/ansible.staff.relrod) (*.net *.split)
2022-01-05 16:29:38 +0100platz_(~platz@40.122.118.113) (*.net *.split)
2022-01-05 16:29:38 +0100mht-wtf(~mht@2a03:b0c0:3:e0::1e2:c001) (*.net *.split)
2022-01-05 16:29:38 +0100kawpuh(~kawpuh@66.42.81.80) (*.net *.split)
2022-01-05 16:29:38 +0100tdammers(~tdammers@77.109.72.177.res.static.edpnet.net) (*.net *.split)
2022-01-05 16:29:38 +0100glider(~glider@user/glider) (*.net *.split)
2022-01-05 16:29:38 +0100quintasan(~quassel@quintasan.pl) (*.net *.split)
2022-01-05 16:29:38 +0100orcus(~orcus@user/brprice) (*.net *.split)
2022-01-05 16:29:38 +0100tinwood(~tinwood@canonical/tinwood) (*.net *.split)
2022-01-05 16:29:38 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:38 +0100Patternmaster(~georg@li1192-118.members.linode.com) (*.net *.split)
2022-01-05 16:29:38 +0100haskl(~haskl@user/haskl) (*.net *.split)
2022-01-05 16:29:38 +0100teddyc(theodorc@cassarossa.samfundet.no) (*.net *.split)
2022-01-05 16:29:38 +0100dyniec(~dyniec@mail.dybiec.info) (*.net *.split)
2022-01-05 16:29:38 +0100anderson(~ande@user/anderson) (*.net *.split)
2022-01-05 16:29:38 +0100hiredman(~hiredman@frontier1.downey.family) (*.net *.split)
2022-01-05 16:29:38 +0100piele(~piele@tbonesteak.creativeserver.net) (*.net *.split)
2022-01-05 16:29:38 +0100dminuoso(~dminuoso@user/dminuoso) (*.net *.split)
2022-01-05 16:29:38 +0100OscarH_(~OscarH@90.201.86.195) (*.net *.split)
2022-01-05 16:29:39 +0100arkeet(~arkeet@moriya.ca) (*.net *.split)
2022-01-05 16:29:39 +0100_ht(~quassel@82-169-194-8.biz.kpn.net) (*.net *.split)
2022-01-05 16:29:39 +0100mniip(mniip@libera/staff/mniip) (*.net *.split)
2022-01-05 16:29:39 +0100yahb(xsbot@user/mniip/bot/yahb) (*.net *.split)
2022-01-05 16:29:39 +0100shriekingnoise(~shrieking@186.137.144.80) (*.net *.split)
2022-01-05 16:29:39 +0100mmhat(~mmh@55d49507.access.ecotel.net) (*.net *.split)
2022-01-05 16:29:39 +0100__monty__(~toonn@user/toonn) (*.net *.split)
2022-01-05 16:29:39 +0100mcglk(~mcglk@131.191.49.120) (*.net *.split)
2022-01-05 16:29:39 +0100monochrom(trebla@216.138.220.146) (*.net *.split)
2022-01-05 16:29:39 +0100joo-_(~joo-_@fsf/member/joo--) (*.net *.split)
2022-01-05 16:29:39 +0100motherfsck(~motherfsc@user/motherfsck) (*.net *.split)
2022-01-05 16:29:39 +0100AlexZenon(~alzenon@94.233.240.16) (*.net *.split)
2022-01-05 16:29:39 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (*.net *.split)
2022-01-05 16:29:39 +0100juhp(~juhp@128.106.188.82) (*.net *.split)
2022-01-05 16:29:39 +0100m1dnight(~christoph@christophe.dev) (*.net *.split)
2022-01-05 16:29:39 +0100cosimone(~user@93-47-228-11.ip115.fastwebnet.it) (*.net *.split)
2022-01-05 16:29:39 +0100fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (*.net *.split)
2022-01-05 16:29:39 +0100dextaa(~DV@user/dextaa) (*.net *.split)
2022-01-05 16:29:39 +0100xlei(~akans@pool-68-129-84-118.nycmny.fios.verizon.net) (*.net *.split)
2022-01-05 16:29:39 +0100eL_Bart0(eL_Bart0@dietunichtguten.org) (*.net *.split)
2022-01-05 16:29:39 +0100jespada(~jespada@87.74.32.18) (*.net *.split)
2022-01-05 16:29:39 +0100xsperry(~xs@user/xsperry) (*.net *.split)
2022-01-05 16:29:39 +0100kritzefitz(~kritzefit@debian/kritzefitz) (*.net *.split)
2022-01-05 16:29:39 +0100bollu(~bollu@159.65.151.13) (*.net *.split)
2022-01-05 16:29:39 +0100canta(~canta@user/canta) (*.net *.split)
2022-01-05 16:29:39 +0100dsrt^(~dsrt@207.5.21.20) (*.net *.split)
2022-01-05 16:29:39 +0100sabx(~sabbas@user/sabbas) (*.net *.split)
2022-01-05 16:29:39 +0100foul_owl(~kerry@94.140.8.107) (*.net *.split)
2022-01-05 16:29:39 +0100nhs(~nhs@136.49.226.20) (*.net *.split)
2022-01-05 16:29:39 +0100mmalter(~mmalter@88.126.10.237) (*.net *.split)
2022-01-05 16:29:39 +0100koolazer(~koo@user/koolazer) (*.net *.split)
2022-01-05 16:29:39 +0100jjhoo(~jahakala@user/jjhoo) (*.net *.split)
2022-01-05 16:29:39 +0100superbil(~superbil@1-34-176-171.hinet-ip.hinet.net) (*.net *.split)
2022-01-05 16:29:39 +0100mjrosenb(~mjrosenb@pool-108-54-97-96.nycmny.fios.verizon.net) (*.net *.split)
2022-01-05 16:29:39 +0100oo_migue1(~pi@77.252.47.226) (*.net *.split)
2022-01-05 16:29:39 +0100df(~ben@justworks.xyz) (*.net *.split)
2022-01-05 16:29:40 +0100lambdabot(~lambdabot@haskell/bot/lambdabot) (*.net *.split)
2022-01-05 16:29:40 +0100exarkun(~exarkun@user/exarkun) (*.net *.split)
2022-01-05 16:29:40 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:40 +0100tv(~tv@user/tv) (*.net *.split)
2022-01-05 16:29:40 +0100maerwald(~maerwald@user/maerwald) (*.net *.split)
2022-01-05 16:29:40 +0100Maxdamantus(~Maxdamant@user/maxdamantus) (*.net *.split)
2022-01-05 16:29:40 +0100JimL(~quassel@89-162-2-132.fiber.signal.no) (*.net *.split)
2022-01-05 16:29:40 +0100acowley(~acowley@c-68-83-22-43.hsd1.nj.comcast.net) (*.net *.split)
2022-01-05 16:29:40 +0100hgolden(~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (*.net *.split)
2022-01-05 16:29:40 +0100jeffz`(~user@lambda.xen.prgmr.com) (*.net *.split)
2022-01-05 16:29:40 +0100remedan_(~remedan@octo.cafe) (*.net *.split)
2022-01-05 16:29:40 +0100SoF(~skius@user/skius) (*.net *.split)
2022-01-05 16:29:40 +0100hltk(~hltk@hltk.fi) (*.net *.split)
2022-01-05 16:29:40 +0100myme(~myme@40.51-175-185.customer.lyse.net) (*.net *.split)
2022-01-05 16:29:40 +0100nek0(~nek0@nek0.eu) (*.net *.split)
2022-01-05 16:29:40 +0100joeyh_(~joeyh@kitenet.net) (*.net *.split)
2022-01-05 16:29:40 +0100lambdap(~lambdap@static.167.190.119.168.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:40 +0100drewolson(~drewolson@user/drewolson) (*.net *.split)
2022-01-05 16:29:40 +0100caubert_(~caubert@136.244.111.235) (*.net *.split)
2022-01-05 16:29:40 +0100Brandon_1X(~brandon@178-79-138-117.ip.linodeusercontent.com) (*.net *.split)
2022-01-05 16:29:40 +0100barrucadu(~barrucadu@carcosa.barrucadu.co.uk) (*.net *.split)
2022-01-05 16:29:40 +0100siers(~ij@user/ij) (*.net *.split)
2022-01-05 16:29:40 +0100shanemikel(~shanemike@desk.roadwar.net) (*.net *.split)
2022-01-05 16:29:40 +0100heath(~heath@user/heath) (*.net *.split)
2022-01-05 16:29:40 +0100Teacup(~teacup@user/teacup) (*.net *.split)
2022-01-05 16:29:40 +0100madnight_(~madnight@static.59.103.201.195.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:40 +0100mmaruseacph2(~mihai@198.199.100.72) (*.net *.split)
2022-01-05 16:29:40 +0100bcoppens(~bartcopp@vpn2.bartcoppens.be) (*.net *.split)
2022-01-05 16:29:40 +0100spoonm(spoonm@inaba.spoonm.org) (*.net *.split)
2022-01-05 16:29:40 +0100Ram-Z(~Ram-Z@li1814-254.members.linode.com) (*.net *.split)
2022-01-05 16:29:40 +0100sajith(~sajith@user/sajith) (*.net *.split)
2022-01-05 16:29:40 +0100meejah(~meejah@rutas.meejah.ca) (*.net *.split)
2022-01-05 16:29:41 +0100eoiles[m](~eoilesmat@2001:470:69fc:105::1:6164) (*.net *.split)
2022-01-05 16:29:41 +0100hughjfchen[m](~hughjfche@2001:470:69fc:105::c29d) (*.net *.split)
2022-01-05 16:29:41 +0100soft(~soft@2001:470:69fc:105::c75) (*.net *.split)
2022-01-05 16:29:41 +0100bb010g(~bb010g@2001:470:69fc:105::9a5) (*.net *.split)
2022-01-05 16:29:41 +0100jchia[m](~jchiamatr@2001:470:69fc:105::c50b) (*.net *.split)
2022-01-05 16:29:41 +0100Magnus[m](~magthetch@2001:470:69fc:105::d1a7) (*.net *.split)
2022-01-05 16:29:41 +0100ManofLetters[m](~manoflett@2001:470:69fc:105::3be) (*.net *.split)
2022-01-05 16:29:41 +0100alex[m](~alexchete@2001:470:69fc:105::1:1001) (*.net *.split)
2022-01-05 16:29:41 +0100jinsun_(~jinsun@user/jinsun) (*.net *.split)
2022-01-05 16:29:41 +0100unrooted(~unrooted@2001:470:69fc:105::a4a) (*.net *.split)
2022-01-05 16:29:41 +0100ongy[m](~ongymatri@2001:470:69fc:105::5018) (*.net *.split)
2022-01-05 16:29:41 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4) (*.net *.split)
2022-01-05 16:29:41 +0100simmsb(~simmsb@2001:470:69fc:105::1:55c3) (*.net *.split)
2022-01-05 16:29:41 +0100Orbstheorem(~orbstheor@2001:470:69fc:105::a56) (*.net *.split)
2022-01-05 16:29:41 +0100jkachmar(~jkachmar@2001:470:69fc:105::c72d) (*.net *.split)
2022-01-05 16:29:41 +0100psydroid(~psydroid@user/psydroid) (*.net *.split)
2022-01-05 16:29:41 +0100justIrresolute(~justache@user/justache) (*.net *.split)
2022-01-05 16:29:42 +0100esoca123(uid534098@id-534098.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100Megant(megant@user/megant) (*.net *.split)
2022-01-05 16:29:42 +0100sweater(~sweater@206.81.18.26) (*.net *.split)
2022-01-05 16:29:42 +0100ft(~ft@shell.chaostreff-dortmund.de) (*.net *.split)
2022-01-05 16:29:42 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (*.net *.split)
2022-01-05 16:29:42 +0100a1paca(~a1paca@user/a1paca) (*.net *.split)
2022-01-05 16:29:42 +0100obviyus(sid415299@user/obviyus) (*.net *.split)
2022-01-05 16:29:42 +0100gonz_____(sid304396@id-304396.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100mustafa(sid502723@rockylinux/releng/mustafa) (*.net *.split)
2022-01-05 16:29:42 +0100Square(~a@user/square) (*.net *.split)
2022-01-05 16:29:42 +0100fluxit(~fluxit@techsmix.net) (*.net *.split)
2022-01-05 16:29:42 +0100davean(~davean@davean.sciesnet.net) (*.net *.split)
2022-01-05 16:29:42 +0100NemesisD(sid24071@id-24071.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100tritlo(sid58727@user/tritlo) (*.net *.split)
2022-01-05 16:29:42 +0100abrar_(~abrar@static-108-2-152-54.phlapa.fios.verizon.net) (*.net *.split)
2022-01-05 16:29:42 +0100pippijn(~pippijn@ra.xinutec.org) (*.net *.split)
2022-01-05 16:29:42 +0100shane(~shane@ana.rch.ist) (*.net *.split)
2022-01-05 16:29:42 +0100koala_man(~vidar@157.146.251.23.bc.googleusercontent.com) (*.net *.split)
2022-01-05 16:29:42 +0100edwardk(sid47016@haskell/developer/edwardk) (*.net *.split)
2022-01-05 16:29:42 +0100idnar(sid12240@debian/mithrandi) (*.net *.split)
2022-01-05 16:29:42 +0100lexi-lambda(sid92601@id-92601.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100sa1_(sid7690@id-7690.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100typetetris(sid275937@id-275937.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100rubin55(sid175221@id-175221.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100jackdk(sid373013@cssa/jackdk) (*.net *.split)
2022-01-05 16:29:42 +0100gnyeki(~gnyeki@user/gnyeki) (*.net *.split)
2022-01-05 16:29:42 +0100dkeohane2(~dkeohane@ec2-18-189-29-140.us-east-2.compute.amazonaws.com) (*.net *.split)
2022-01-05 16:29:42 +0100supersven(sid501114@id-501114.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100christiaanb(sid84827@id-84827.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:42 +0100beaky(~beaky@2a03:b0c0:0:1010::1e:a001) (*.net *.split)
2022-01-05 16:29:42 +0100spider__(~spider@vps-951ce37a.vps.ovh.ca) (*.net *.split)
2022-01-05 16:29:42 +0100c_wraith(~c_wraith@adjoint.us) (*.net *.split)
2022-01-05 16:29:42 +0100drlkf(~drlkf@2001:41d0:a:62bb::1) (*.net *.split)
2022-01-05 16:29:42 +0100xerox(~edi@user/edi) (*.net *.split)
2022-01-05 16:29:42 +0100bwe(~bwe@2a01:4f8:1c1c:4878::2) (*.net *.split)
2022-01-05 16:29:42 +0100_\_(~o@user/ding) (*.net *.split)
2022-01-05 16:29:42 +0100Rembane(~Rembane@li346-36.members.linode.com) (*.net *.split)
2022-01-05 16:29:42 +0100kaol(~kaol@94-237-42-30.nl-ams1.upcloud.host) (*.net *.split)
2022-01-05 16:29:42 +0100adium(adium@user/adium) (*.net *.split)
2022-01-05 16:29:42 +0100nckx(~nckx@tobias.gr) (*.net *.split)
2022-01-05 16:29:42 +0100edwtjo(~edwtjo@user/edwtjo) (*.net *.split)
2022-01-05 16:29:42 +0100eldritch_(~eldritch@user/eldritch/x-9272577) (*.net *.split)
2022-01-05 16:29:42 +0100Aleksejs(~Aleksejs@haskell.lv) (*.net *.split)
2022-01-05 16:29:42 +0100sm1(~sm@plaintextaccounting/sm) (*.net *.split)
2022-01-05 16:29:42 +0100schuelermine[m](~schuelerm@user/schuelermine) (*.net *.split)
2022-01-05 16:29:43 +0100Ollie[m](~ollieocha@2001:470:69fc:105::41a5) (*.net *.split)
2022-01-05 16:29:43 +0100qrpnxz(~qrpnxz@user/qrpnxz) (*.net *.split)
2022-01-05 16:29:43 +0100smichel17[m](~smichel17@2001:470:69fc:105::2d32) (*.net *.split)
2022-01-05 16:29:43 +0100quantum(~quantum@user/quantum/x-8556232) (*.net *.split)
2022-01-05 16:29:43 +0100Las[m](~lasmatrix@2001:470:69fc:105::74e) (*.net *.split)
2022-01-05 16:29:43 +0100wildsebastian(~wildsebas@2001:470:69fc:105::1:14b1) (*.net *.split)
2022-01-05 16:29:43 +0100MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22) (*.net *.split)
2022-01-05 16:29:43 +0100aveltras[m](~aveltrasm@2001:470:69fc:105::3ef9) (*.net *.split)
2022-01-05 16:29:43 +0100prrxddq[m](~prrxddqma@2001:470:69fc:105::1:4f72) (*.net *.split)
2022-01-05 16:29:43 +0100lisq(~quassel@lis.moe) (*.net *.split)
2022-01-05 16:29:43 +0100cocreature(~moritz@2a03:b0c0:3:d0::c8:f001) (*.net *.split)
2022-01-05 16:29:43 +0100martin02(~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1) (*.net *.split)
2022-01-05 16:29:43 +0100pepeiborra(sid443799@id-443799.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:43 +0100wallymathieu(uid533252@id-533252.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:43 +0100YoungFrog(~youngfrog@2a02:a03f:c21b:f900:f484:3278:789d:d6a5) (*.net *.split)
2022-01-05 16:29:43 +0100ajb_(~ajb@cupid.whatbox.ca) (*.net *.split)
2022-01-05 16:29:43 +0100cyphase(~cyphase@user/cyphase) (*.net *.split)
2022-01-05 16:29:43 +0100incertia(~incertia@24.42.241.219) (*.net *.split)
2022-01-05 16:29:43 +0100haask(~harry@user/haask) (*.net *.split)
2022-01-05 16:29:43 +0100Flow(~none@gentoo/developer/flow) (*.net *.split)
2022-01-05 16:29:43 +0100mncheck(~mncheck@193.224.205.254) (*.net *.split)
2022-01-05 16:29:43 +0100dibblego(~dibblego@haskell/developer/dibblego) (*.net *.split)
2022-01-05 16:29:43 +0100tomboy64(~tomboy64@user/tomboy64) (*.net *.split)
2022-01-05 16:29:44 +0100|beowulf|(1000@sourcemage/mage/beowulf) (*.net *.split)
2022-01-05 16:29:44 +0100aforemny(~aforemny@static.248.158.34.188.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:44 +0100wagle(~wagle@quassel.wagle.io) (*.net *.split)
2022-01-05 16:29:44 +0100APic(apic@apic.name) (*.net *.split)
2022-01-05 16:29:44 +0100ouroboros(~ouroboros@user/ouroboros) (*.net *.split)
2022-01-05 16:29:44 +0100raoul(~raoul@95.179.203.88) (*.net *.split)
2022-01-05 16:29:44 +0100joel135(sid136450@id-136450.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:44 +0100teehemkay(sid14792@id-14792.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:44 +0100PHO`(~pho@akari.cielonegro.org) (*.net *.split)
2022-01-05 16:29:44 +0100nonzen(~nonzen@user/nonzen) (*.net *.split)
2022-01-05 16:29:44 +0100lieven(~mal@ns2.wyrd.be) (*.net *.split)
2022-01-05 16:29:44 +0100choucavalier(~choucaval@peanutbuttervibes.com) (*.net *.split)
2022-01-05 16:29:44 +0100smunix(~smunix@static.26.70.12.49.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:44 +0100sudden(~cat@user/sudden) (*.net *.split)
2022-01-05 16:29:44 +0100pjlsergeant(sid143467@id-143467.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:44 +0100mcfilib(sid302703@user/mcfilib) (*.net *.split)
2022-01-05 16:29:44 +0100tureba(~tureba@tureba.org) (*.net *.split)
2022-01-05 16:29:44 +0100loonycyborg(~loonycybo@wesnoth/developer/loonycyborg) (*.net *.split)
2022-01-05 16:29:44 +0100jakalx(~jakalx@base.jakalx.net) (*.net *.split)
2022-01-05 16:29:44 +0100bah(~bah@l1.tel) (*.net *.split)
2022-01-05 16:29:44 +0100hpc(~juzz@ip98-169-35-13.dc.dc.cox.net) (*.net *.split)
2022-01-05 16:29:44 +0100alp(~alp@mail.fmap.fr) (*.net *.split)
2022-01-05 16:29:44 +0100guibou(~guibou@mail.fmap.fr) (*.net *.split)
2022-01-05 16:29:44 +0100yehoshuapw(~yehoshuap@2001:470:69fc:105::a5f) (*.net *.split)
2022-01-05 16:29:44 +0100jmcantrell(~jmcantrel@user/jmcantrell) (*.net *.split)
2022-01-05 16:29:44 +0100surgeon[m](~surge9nma@2001:470:69fc:105::f585) (*.net *.split)
2022-01-05 16:29:44 +0100SawyerBergeron[m(~sawyerber@2001:470:69fc:105::3036) (*.net *.split)
2022-01-05 16:29:44 +0100Artem[m](~artemtype@2001:470:69fc:105::75b) (*.net *.split)
2022-01-05 16:29:44 +0100Christoph[m](~hpotsirhc@2001:470:69fc:105::2ff8) (*.net *.split)
2022-01-05 16:29:44 +0100zwro[m](~zwromatri@2001:470:69fc:105::1d4) (*.net *.split)
2022-01-05 16:29:44 +0100vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe) (*.net *.split)
2022-01-05 16:29:44 +0100peddie(~peddie@2001:470:69fc:105::25d) (*.net *.split)
2022-01-05 16:29:44 +0100denbrahe[m](~denbrahem@2001:470:69fc:105::19c0) (*.net *.split)
2022-01-05 16:29:45 +0100tripa[m](~tripamatr@2001:470:69fc:105::1:4f7e) (*.net *.split)
2022-01-05 16:29:45 +0100grabb0id[m](~alangmatr@2001:470:69fc:105::b489) (*.net *.split)
2022-01-05 16:29:45 +0100wysteriary[m](~wysteriar@2001:470:69fc:105::a42e) (*.net *.split)
2022-01-05 16:29:45 +0100craige[m](~craigemcw@2001:470:69fc:105::35f1) (*.net *.split)
2022-01-05 16:29:45 +0100hays(rootvegeta@fsf/member/hays) (*.net *.split)
2022-01-05 16:29:45 +0100eruditass(uid248673@id-248673.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100SanchayanMaity(sid478177@id-478177.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100yushyin(opqz58iJgg@mail.karif.server-speed.net) (*.net *.split)
2022-01-05 16:29:45 +0100flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (*.net *.split)
2022-01-05 16:29:45 +0100agander_m(sid407952@id-407952.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100truckasaurus(sid457088@id-457088.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100kronicma1(user76545@neotame.csclub.uwaterloo.ca) (*.net *.split)
2022-01-05 16:29:45 +0100SrPx(sid108780@id-108780.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100ncopa3(~ncopa@gbr2-dev1.alpinelinux.org) (*.net *.split)
2022-01-05 16:29:45 +0100Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius) (*.net *.split)
2022-01-05 16:29:45 +0100DigitalKiwi(~kiwi@2604:a880:400:d0::12fc:5001) (*.net *.split)
2022-01-05 16:29:45 +0100Benzi-Junior(~BenziJuni@dsl-149-66-61.hive.is) (*.net *.split)
2022-01-05 16:29:45 +0100elvishjerricco(sid237756@helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100alanz(sid110616@uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100ikke(~kevin@alpine/developer/ikke) (*.net *.split)
2022-01-05 16:29:45 +0100systemfault(sid267009@id-267009.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100bradparker(sid262931@id-262931.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100jakzale(6291399afa@user/jakzale) (*.net *.split)
2022-01-05 16:29:45 +0100FragByte(~christian@user/fragbyte) (*.net *.split)
2022-01-05 16:29:45 +0100alinab(sid468903@helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100xsarnik(xsarnik@lounge.fi.muni.cz) (*.net *.split)
2022-01-05 16:29:45 +0100Pent(sid313808@id-313808.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100asm(~alexander@user/asm) (*.net *.split)
2022-01-05 16:29:45 +0100n3t(~n3t@user/n3t) (*.net *.split)
2022-01-05 16:29:45 +0100byorgey(~byorgey@155.138.238.211) (*.net *.split)
2022-01-05 16:29:45 +0100nshepperd(~nshepperd@li364-218.members.linode.com) (*.net *.split)
2022-01-05 16:29:45 +0100bjobjo(~bjobjo@user/bjobjo) (*.net *.split)
2022-01-05 16:29:45 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (*.net *.split)
2022-01-05 16:29:45 +0100Hecate(~mariposa@user/hecate) (*.net *.split)
2022-01-05 16:29:45 +0100AWizzArd(~code@user/awizzard) (*.net *.split)
2022-01-05 16:29:45 +0100aarchi(sid486183@id-486183.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100Igloo(~ian@matrix.chaos.earth.li) (*.net *.split)
2022-01-05 16:29:45 +0100aristid(sid1599@id-1599.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100sa(sid1055@id-1055.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100T_S_(sid501726@id-501726.uxbridge.irccloud.com) (*.net *.split)
2022-01-05 16:29:45 +0100Philonous(~Philonous@user/philonous) (*.net *.split)
2022-01-05 16:29:45 +0100tabemann(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net) (*.net *.split)
2022-01-05 16:29:45 +0100clever(~clever@99.192.114.98) (*.net *.split)
2022-01-05 16:29:46 +0100riatre(~quassel@2001:310:6000:f::5198:1) (*.net *.split)
2022-01-05 16:29:46 +0100skn(~znc@2001:19f0:5:701:5400:ff:fe7c:4e5c) (*.net *.split)
2022-01-05 16:29:46 +0100nerdypepper(~nerdypepp@user/nerdypepper) (*.net *.split)
2022-01-05 16:29:46 +0100edr(~edr@user/edr) (*.net *.split)
2022-01-05 16:29:46 +0100reda_(~reda@user/reda) (*.net *.split)
2022-01-05 16:29:46 +0100polux(~polux@51.15.169.172) (*.net *.split)
2022-01-05 16:29:46 +0100dy(~dy@user/dy) (*.net *.split)
2022-01-05 16:29:46 +0100djanatyn(~djanatyn@vps-7f49a6b0.vps.ovh.ca) (*.net *.split)
2022-01-05 16:29:46 +0100statusfailed(~statusfai@statusfailed.com) (*.net *.split)
2022-01-05 16:29:46 +0100shachaf(~shachaf@user/shachaf) (*.net *.split)
2022-01-05 16:29:46 +0100SridharRatnakuma(~sridmatri@2001:470:69fc:105::1c2) (*.net *.split)
2022-01-05 16:29:46 +0100pfurla-matrix(~pedrofurl@2001:470:69fc:105::1:51d7) (*.net *.split)
2022-01-05 16:29:46 +0100Deide(~deide@user/deide) (*.net *.split)
2022-01-05 16:29:46 +0100amesgen[m](~amesgenm]@2001:470:69fc:105::82b) (*.net *.split)
2022-01-05 16:29:46 +0100unclechu(~unclechu@2001:470:69fc:105::354) (*.net *.split)
2022-01-05 16:29:46 +0100bitonic(~bitonic@2001:470:69fc:105::1812) (*.net *.split)
2022-01-05 16:29:46 +0100Tisoxin(~ikosit@user/ikosit) (*.net *.split)
2022-01-05 16:29:46 +0100ormaaj(~ormaaj@user/ormaaj) (*.net *.split)
2022-01-05 16:29:46 +0100Nate[m]1(~m52957mat@2001:470:69fc:105::1:591a) (*.net *.split)
2022-01-05 16:29:46 +0100cherryblossom[m](~cherryblo@2001:470:69fc:105::b789) (*.net *.split)
2022-01-05 16:29:46 +0100james[m]123(~jamesnina@2001:470:69fc:105::1:4203) (*.net *.split)
2022-01-05 16:29:46 +0100Michal[m](~oomiguelm@2001:470:69fc:105::1:5ab0) (*.net *.split)
2022-01-05 16:29:46 +0100wz1000(~zubin@static.11.113.47.78.clients.your-server.de) (*.net *.split)
2022-01-05 16:29:46 +0100PigDude(~PigDude@159.203.16.199) (*.net *.split)
2022-01-05 16:29:46 +0100Typedfern(~Typedfern@75.red-88-22-25.staticip.rima-tde.net) (*.net *.split)
2022-01-05 16:29:46 +0100niko(~niko@libera/staff/niko) (*.net *.split)
2022-01-05 16:29:46 +0100wolfshappen(~waff@irc.furworks.de) (*.net *.split)
2022-01-05 16:29:46 +0100ProofTechnique(sid79547@id-79547.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:46 +0100forell(~forell@user/forell) (*.net *.split)
2022-01-05 16:29:46 +0100cods(~fred@82-65-232-44.subs.proxad.net) (*.net *.split)
2022-01-05 16:29:46 +0100son0p(~ff@181.136.122.143) (*.net *.split)
2022-01-05 16:29:46 +0100rookie101(~rookie@165.232.121.13) (*.net *.split)
2022-01-05 16:29:46 +0100finsternis(~X@23.226.237.192) (*.net *.split)
2022-01-05 16:29:47 +0100samebchase(~samebchas@51.15.68.182) (*.net *.split)
2022-01-05 16:29:47 +0100peutri(~peutri@ns317027.ip-94-23-46.eu) (*.net *.split)
2022-01-05 16:29:47 +0100dfordvm(~dfordivam@tk2-219-19469.vs.sakura.ne.jp) (*.net *.split)
2022-01-05 16:29:47 +0100bens(~bens@www.typius.com) (*.net *.split)
2022-01-05 16:29:47 +0100mjacob_(~mjacob@adrastea.uberspace.de) (*.net *.split)
2022-01-05 16:29:47 +0100ephemient(uid407513@id-407513.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:47 +0100auri(~quassel@fsf/member/auri) (*.net *.split)
2022-01-05 16:29:47 +0100chronon(~chronon@user/chronon) (*.net *.split)
2022-01-05 16:29:47 +0100Moyst_(~moyst@user/moyst) (*.net *.split)
2022-01-05 16:29:47 +0100dsal(sid13060@id-13060.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:47 +0100jmct_(sid160793@id-160793.tinside.irccloud.com) (*.net *.split)
2022-01-05 16:29:47 +0100astra(sid289983@user/amish) (*.net *.split)
2022-01-05 16:29:47 +0100amir(sid22336@user/amir) (*.net *.split)
2022-01-05 16:29:47 +0100hamishmack_(sid389057@id-389057.hampstead.irccloud.com) (*.net *.split)
2022-01-05 16:29:47 +0100parseval(sid239098@id-239098.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:47 +0100bsdbandit(~bwell@users.757.org) (*.net *.split)
2022-01-05 16:29:47 +0100mcfrdy(~mcfrdy@user/mcfrdy) (*.net *.split)
2022-01-05 16:29:47 +0100dexterfoo(dexter@2a01:7e00::f03c:91ff:fe86:59ec) (*.net *.split)
2022-01-05 16:29:47 +0100ringo__(~ringo@157.230.117.128) (*.net *.split)
2022-01-05 16:29:47 +0100oxytocat(~alloca@user/suppi) (*.net *.split)
2022-01-05 16:29:47 +0100kawzeg(kawzeg@2a01:7e01::f03c:92ff:fee2:ec34) (*.net *.split)
2022-01-05 16:29:47 +0100enyc(~enyc@user/enyc) (*.net *.split)
2022-01-05 16:29:47 +0100hexagoxel(~hexagoxel@2a01:4f8:c0c:e::2) (*.net *.split)
2022-01-05 16:29:47 +0100fiddlerwoaroof(~fiddlerwo@user/fiddlerwoaroof) (*.net *.split)
2022-01-05 16:29:47 +0100nshepperd2(~nshepperd@li364-218.members.linode.com) (*.net *.split)
2022-01-05 16:29:47 +0100deni(~deni@user/deni) (*.net *.split)
2022-01-05 16:29:47 +0100krjst(~krjst@2604:a880:800:c1::16b:8001) (*.net *.split)
2022-01-05 16:29:47 +0100jocke-l(jocke-l@a.x0.is) (*.net *.split)
2022-01-05 16:29:47 +0100thonkpod(~thonkpod@user/thonkpod) (*.net *.split)
2022-01-05 16:29:47 +0100codygman[m](~codygman@2001:470:69fc:105::b4ba) (*.net *.split)
2022-01-05 16:29:47 +0100zfnmxt(~zfnmxtzfn@2001:470:69fc:105::2b32) (*.net *.split)
2022-01-05 16:29:47 +0100kalxd[m](~kalxdmatr@2001:470:69fc:105::1:576e) (*.net *.split)
2022-01-05 16:29:47 +0100aidy(~aidy@2001:470:69fc:105::c7b4) (*.net *.split)
2022-01-05 16:29:47 +0100thomasjm[m](~thomasjmm@2001:470:69fc:105::c6d9) (*.net *.split)
2022-01-05 16:29:47 +0100maerwald[m](~maerwaldm@user/maerwald) (*.net *.split)
2022-01-05 16:29:47 +0100moats(~oats@user/oats) (*.net *.split)
2022-01-05 16:29:47 +0100juhp[m](~juhpmatri@2001:470:69fc:105::6e9) (*.net *.split)
2022-01-05 16:29:47 +0100ericson2314(~ericson23@2001:470:69fc:105::70c) (*.net *.split)
2022-01-05 16:29:47 +0100jophish(~jophish@2001:470:69fc:105::670) (*.net *.split)
2022-01-05 16:29:47 +0100puffnfresh[m](~puffnfres@2001:470:69fc:105::1:22da) (*.net *.split)
2022-01-05 16:29:47 +0100kadoban(~kadoban@user/kadoban) (*.net *.split)
2022-01-05 16:29:47 +0100jesser[m](~jessermat@2001:470:69fc:105::d5ae) (*.net *.split)
2022-01-05 16:29:47 +0100IgnatInsarov[m](~kindaroma@2001:470:69fc:105::f5d9) (*.net *.split)
2022-01-05 16:29:47 +0100RosarioPulella[m(~rosariopu@2001:470:69fc:105::a57) (*.net *.split)
2022-01-05 16:29:47 +0100justosophy[m](~justosoph@2001:470:69fc:105::572f) (*.net *.split)
2022-01-05 16:29:47 +0100xddq[m](~xddqmatri@2001:470:69fc:105::bfd8) (*.net *.split)
2022-01-05 16:29:47 +0100int-e(~noone@int-e.eu) (*.net *.split)
2022-01-05 16:29:47 +0100Goodbye_Vincent(cyvahl@freakshells.net) (*.net *.split)
2022-01-05 16:29:47 +0100Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (*.net *.split)
2022-01-05 16:29:47 +0100pieguy12-(~pieguy128@bras-base-mtrlpq5031w-grc-48-67-70-102-17.dsl.bell.ca) (*.net *.split)
2022-01-05 16:29:47 +0100acidsys(~LSD@2.lsd.systems) (*.net *.split)
2022-01-05 16:29:47 +0100Unode(~Unode@194.94.44.220) (*.net *.split)
2022-01-05 16:29:47 +0100jzsinatra(~jzsinatra@88-114-238-31.elisa-laajakaista.fi) (*.net *.split)
2022-01-05 16:29:47 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua) (*.net *.split)
2022-01-05 16:29:48 +0100samhh(7569f027cf@2604:bf00:561:2000::e4) (*.net *.split)
2022-01-05 16:29:48 +0100thebnq(~bnq@herrokitty.com) (*.net *.split)
2022-01-05 16:29:48 +0100Noinia(~Frank@77-162-168-71.fixed.kpn.net) (*.net *.split)
2022-01-05 16:29:48 +0100gawen_(~gawen@user/gawen) (*.net *.split)
2022-01-05 16:29:48 +0100erisco(~erisco@d24-57-249-233.home.cgocable.net) (*.net *.split)
2022-01-05 16:29:48 +0100amk(~amk@109.255.169.126) (*.net *.split)
2022-01-05 16:29:48 +0100mrkajetanp(~mrkajetan@88.98.245.28) (*.net *.split)
2022-01-05 16:29:48 +0100Putonlalla(~sapekiis@it-cyan.it.jyu.fi) (*.net *.split)
2022-01-05 16:29:48 +0100Ankhers(e99e97ef8e@2604:bf00:561:2000::2a2) (*.net *.split)
2022-01-05 16:29:48 +0100juri_(~juri@178.63.35.222) (*.net *.split)
2022-01-05 16:29:48 +0100Flonk(~Flonk@vps-zap441517-1.zap-srv.com) (*.net *.split)
2022-01-05 16:29:48 +0100urdh(~urdh@user/urdh) (*.net *.split)
2022-01-05 16:29:48 +0100m4lvin(~m4lvin@w4eg.de) (*.net *.split)
2022-01-05 16:29:48 +0100jassob(~jassob@h-155-4-71-72.A785.priv.bahnhof.se) (*.net *.split)
2022-01-05 16:29:48 +0100Vq(~vq@90-227-195-41-no77.tbcn.telia.com) (*.net *.split)
2022-01-05 16:29:48 +0100acro(~acro@user/acro) (*.net *.split)
2022-01-05 16:29:48 +0100catern(~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) (*.net *.split)
2022-01-05 16:29:48 +0100LambdaDuck(~anka@ksit.fixme.fi) (*.net *.split)
2022-01-05 16:29:48 +0100xacktm(xacktm@user/xacktm) (*.net *.split)
2022-01-05 16:29:48 +0100davl(~davl@207.154.228.18) (*.net *.split)
2022-01-05 16:29:48 +0100evanrelf(3addc196af@2604:bf00:561:2000::f0) (*.net *.split)
2022-01-05 16:29:48 +0100tomsmeding(~tomsmedin@tomsmeding.com) (*.net *.split)
2022-01-05 16:29:48 +0100m5zs7k(aquares@web10.mydevil.net) (*.net *.split)
2022-01-05 16:29:48 +0100xstill-(xstill@fimu/xstill) (*.net *.split)
2022-01-05 16:29:48 +0100lyxia(~lyxia@poisson.chat) (*.net *.split)
2022-01-05 16:29:48 +0100Athas(athas@sigkill.dk) (*.net *.split)
2022-01-05 16:29:48 +0100SIben(~SIben@ns3106586.ip-5-135-191.eu) (*.net *.split)
2022-01-05 16:29:48 +0100gabiruh(~gabiruh@vps19177.publiccloud.com.br) (*.net *.split)
2022-01-05 16:29:48 +0100ggVGc(~ggVGc@a.lowtech.earth) (*.net *.split)
2022-01-05 16:29:48 +0100ptrcmd(~ptrcmd@user/ptrcmd) (*.net *.split)
2022-01-05 16:29:48 +0100Xe(~cadey@tailscale/xe) (*.net *.split)
2022-01-05 16:29:48 +0100conjunctive(sid433686@id-433686.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:48 +0100dpratt__(sid193493@id-193493.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:48 +0100Adeon(sid418992@id-418992.lymington.irccloud.com) (*.net *.split)
2022-01-05 16:29:48 +0100rune(sid21167@id-21167.ilkley.irccloud.com) (*.net *.split)
2022-01-05 16:29:48 +0100grfn(sid449115@id-449115.helmsley.irccloud.com) (*.net *.split)
2022-01-05 16:29:48 +0100vito(sid1962@user/vito) (*.net *.split)
2022-01-05 16:29:48 +0100pierrot(~pi@user/pierrot) (*.net *.split)
2022-01-05 16:29:48 +0100bonz060(~quassel@2001:bc8:47a4:a23::1) (*.net *.split)
2022-01-05 16:29:48 +0100Jon(jon@dow.land) (*.net *.split)
2022-01-05 16:29:48 +0100Hobbyboy(Hobbyboy@hobbyboy.co.uk) (*.net *.split)
2022-01-05 16:29:48 +0100smorgasbord(buggy@user/smorgasbord) (*.net *.split)
2022-01-05 16:29:48 +0100ChanServ(ChanServ@services.libera.chat) (*.net *.split)
2022-01-05 16:29:48 +0100ProfSimm(~ProfSimm@87.227.196.109) (*.net *.split)
2022-01-05 16:29:48 +0100rond_42(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd) (*.net *.split)
2022-01-05 16:29:48 +0100xb0o2(~xb0o2@user/xb0o2) (*.net *.split)
2022-01-05 16:29:48 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd) (*.net *.split)
2022-01-05 16:29:48 +0100jpds(~jpds@gateway/tor-sasl/jpds) (*.net *.split)
2022-01-05 16:29:48 +0100gehmehgeh(~user@user/gehmehgeh) (*.net *.split)
2022-01-05 16:29:48 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo) (*.net *.split)
2022-01-05 16:29:48 +0100califax(~califax@user/califx) (*.net *.split)
2022-01-05 16:29:48 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (*.net *.split)
2022-01-05 16:29:48 +0100stiell(~stiell@gateway/tor-sasl/stiell) (*.net *.split)
2022-01-05 16:29:48 +0100azimut(~azimut@gateway/tor-sasl/azimut) (*.net *.split)
2022-01-05 16:29:48 +0100chexum(~quassel@gateway/tor-sasl/chexum) (*.net *.split)
2022-01-05 16:29:48 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (*.net *.split)
2022-01-05 16:32:15 +0100guibou(~guibou@mail.fmap.fr)
2022-01-05 16:32:15 +0100alp(~alp@mail.fmap.fr)
2022-01-05 16:32:15 +0100hpc(~juzz@ip98-169-35-13.dc.dc.cox.net)
2022-01-05 16:32:15 +0100bah(~bah@l1.tel)
2022-01-05 16:32:15 +0100loonycyborg(~loonycybo@wesnoth/developer/loonycyborg)
2022-01-05 16:32:15 +0100tureba(~tureba@tureba.org)
2022-01-05 16:32:15 +0100mcfilib(sid302703@user/mcfilib)
2022-01-05 16:32:15 +0100pjlsergeant(sid143467@id-143467.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100sudden(~cat@user/sudden)
2022-01-05 16:32:15 +0100smunix(~smunix@static.26.70.12.49.clients.your-server.de)
2022-01-05 16:32:15 +0100choucavalier(~choucaval@peanutbuttervibes.com)
2022-01-05 16:32:15 +0100lieven(~mal@ns2.wyrd.be)
2022-01-05 16:32:15 +0100nonzen(~nonzen@user/nonzen)
2022-01-05 16:32:15 +0100PHO`(~pho@akari.cielonegro.org)
2022-01-05 16:32:15 +0100teehemkay(sid14792@id-14792.lymington.irccloud.com)
2022-01-05 16:32:15 +0100joel135(sid136450@id-136450.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100raoul(~raoul@95.179.203.88)
2022-01-05 16:32:15 +0100ouroboros(~ouroboros@user/ouroboros)
2022-01-05 16:32:15 +0100APic(apic@apic.name)
2022-01-05 16:32:15 +0100wagle(~wagle@quassel.wagle.io)
2022-01-05 16:32:15 +0100aforemny(~aforemny@static.248.158.34.188.clients.your-server.de)
2022-01-05 16:32:15 +0100|beowulf|(1000@sourcemage/mage/beowulf)
2022-01-05 16:32:15 +0100tomboy64(~tomboy64@user/tomboy64)
2022-01-05 16:32:15 +0100dibblego(~dibblego@haskell/developer/dibblego)
2022-01-05 16:32:15 +0100mncheck(~mncheck@193.224.205.254)
2022-01-05 16:32:15 +0100Flow(~none@gentoo/developer/flow)
2022-01-05 16:32:15 +0100haask(~harry@user/haask)
2022-01-05 16:32:15 +0100incertia(~incertia@24.42.241.219)
2022-01-05 16:32:15 +0100cyphase(~cyphase@user/cyphase)
2022-01-05 16:32:15 +0100ajb_(~ajb@cupid.whatbox.ca)
2022-01-05 16:32:15 +0100YoungFrog(~youngfrog@2a02:a03f:c21b:f900:f484:3278:789d:d6a5)
2022-01-05 16:32:15 +0100wallymathieu(uid533252@id-533252.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100pepeiborra(sid443799@id-443799.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100martin02(~silas@2001:4ca0:0:fe00:0:5efe:a96:1bc1)
2022-01-05 16:32:15 +0100cocreature(~moritz@2a03:b0c0:3:d0::c8:f001)
2022-01-05 16:32:15 +0100lisq(~quassel@lis.moe)
2022-01-05 16:32:15 +0100prrxddq[m](~prrxddqma@2001:470:69fc:105::1:4f72)
2022-01-05 16:32:15 +0100aveltras[m](~aveltrasm@2001:470:69fc:105::3ef9)
2022-01-05 16:32:15 +0100Las[m](~lasmatrix@2001:470:69fc:105::74e)
2022-01-05 16:32:15 +0100wildsebastian(~wildsebas@2001:470:69fc:105::1:14b1)
2022-01-05 16:32:15 +0100qrpnxz(~qrpnxz@user/qrpnxz)
2022-01-05 16:32:15 +0100Ollie[m](~ollieocha@2001:470:69fc:105::41a5)
2022-01-05 16:32:15 +0100quantum(~quantum@user/quantum/x-8556232)
2022-01-05 16:32:15 +0100smichel17[m](~smichel17@2001:470:69fc:105::2d32)
2022-01-05 16:32:15 +0100schuelermine[m](~schuelerm@user/schuelermine)
2022-01-05 16:32:15 +0100sm1(~sm@plaintextaccounting/sm)
2022-01-05 16:32:15 +0100jakalx(~jakalx@base.jakalx.net)
2022-01-05 16:32:15 +0100Aleksejs(~Aleksejs@haskell.lv)
2022-01-05 16:32:15 +0100edwtjo(~edwtjo@user/edwtjo)
2022-01-05 16:32:15 +0100nckx(~nckx@tobias.gr)
2022-01-05 16:32:15 +0100adium(adium@user/adium)
2022-01-05 16:32:15 +0100kaol(~kaol@94-237-42-30.nl-ams1.upcloud.host)
2022-01-05 16:32:15 +0100Rembane(~Rembane@li346-36.members.linode.com)
2022-01-05 16:32:15 +0100_\_(~o@user/ding)
2022-01-05 16:32:15 +0100shachaf(~shachaf@user/shachaf)
2022-01-05 16:32:15 +0100statusfailed(~statusfai@statusfailed.com)
2022-01-05 16:32:15 +0100djanatyn(~djanatyn@vps-7f49a6b0.vps.ovh.ca)
2022-01-05 16:32:15 +0100dy(~dy@user/dy)
2022-01-05 16:32:15 +0100polux(~polux@51.15.169.172)
2022-01-05 16:32:15 +0100reda_(~reda@user/reda)
2022-01-05 16:32:15 +0100edr(~edr@user/edr)
2022-01-05 16:32:15 +0100nerdypepper(~nerdypepp@user/nerdypepper)
2022-01-05 16:32:15 +0100skn(~znc@2001:19f0:5:701:5400:ff:fe7c:4e5c)
2022-01-05 16:32:15 +0100riatre(~quassel@2001:310:6000:f::5198:1)
2022-01-05 16:32:15 +0100clever(~clever@99.192.114.98)
2022-01-05 16:32:15 +0100tabemann(~tabemann@172-13-49-137.lightspeed.milwwi.sbcglobal.net)
2022-01-05 16:32:15 +0100Philonous(~Philonous@user/philonous)
2022-01-05 16:32:15 +0100T_S_(sid501726@id-501726.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100sa(sid1055@id-1055.tinside.irccloud.com)
2022-01-05 16:32:15 +0100aristid(sid1599@id-1599.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100Igloo(~ian@matrix.chaos.earth.li)
2022-01-05 16:32:15 +0100aarchi(sid486183@id-486183.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100AWizzArd(~code@user/awizzard)
2022-01-05 16:32:15 +0100Hecate(~mariposa@user/hecate)
2022-01-05 16:32:15 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2022-01-05 16:32:15 +0100bjobjo(~bjobjo@user/bjobjo)
2022-01-05 16:32:15 +0100nshepperd(~nshepperd@li364-218.members.linode.com)
2022-01-05 16:32:15 +0100byorgey(~byorgey@155.138.238.211)
2022-01-05 16:32:15 +0100asm(~alexander@user/asm)
2022-01-05 16:32:15 +0100xsarnik(xsarnik@lounge.fi.muni.cz)
2022-01-05 16:32:15 +0100alinab(sid468903@helmsley.irccloud.com)
2022-01-05 16:32:15 +0100Pent(sid313808@id-313808.lymington.irccloud.com)
2022-01-05 16:32:15 +0100FragByte(~christian@user/fragbyte)
2022-01-05 16:32:15 +0100bradparker(sid262931@id-262931.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100jakzale(6291399afa@user/jakzale)
2022-01-05 16:32:15 +0100ikke(~kevin@alpine/developer/ikke)
2022-01-05 16:32:15 +0100n3t(~n3t@user/n3t)
2022-01-05 16:32:15 +0100systemfault(sid267009@id-267009.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100alanz(sid110616@uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100elvishjerricco(sid237756@helmsley.irccloud.com)
2022-01-05 16:32:15 +0100Benzi-Junior(~BenziJuni@dsl-149-66-61.hive.is)
2022-01-05 16:32:15 +0100DigitalKiwi(~kiwi@2604:a880:400:d0::12fc:5001)
2022-01-05 16:32:15 +0100Raito_Bezarius(~Raito@wireguard/tunneler/raito-bezarius)
2022-01-05 16:32:15 +0100ncopa3(~ncopa@gbr2-dev1.alpinelinux.org)
2022-01-05 16:32:15 +0100SrPx(sid108780@id-108780.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100kronicma1(user76545@neotame.csclub.uwaterloo.ca)
2022-01-05 16:32:15 +0100truckasaurus(sid457088@id-457088.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100agander_m(sid407952@id-407952.tinside.irccloud.com)
2022-01-05 16:32:15 +0100flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962)
2022-01-05 16:32:15 +0100SanchayanMaity(sid478177@id-478177.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100hays(rootvegeta@fsf/member/hays)
2022-01-05 16:32:15 +0100eruditass(uid248673@id-248673.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100craige[m](~craigemcw@2001:470:69fc:105::35f1)
2022-01-05 16:32:15 +0100wysteriary[m](~wysteriar@2001:470:69fc:105::a42e)
2022-01-05 16:32:15 +0100grabb0id[m](~alangmatr@2001:470:69fc:105::b489)
2022-01-05 16:32:15 +0100tripa[m](~tripamatr@2001:470:69fc:105::1:4f7e)
2022-01-05 16:32:15 +0100denbrahe[m](~denbrahem@2001:470:69fc:105::19c0)
2022-01-05 16:32:15 +0100peddie(~peddie@2001:470:69fc:105::25d)
2022-01-05 16:32:15 +0100vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe)
2022-01-05 16:32:15 +0100Artem[m](~artemtype@2001:470:69fc:105::75b)
2022-01-05 16:32:15 +0100Christoph[m](~hpotsirhc@2001:470:69fc:105::2ff8)
2022-01-05 16:32:15 +0100zwro[m](~zwromatri@2001:470:69fc:105::1d4)
2022-01-05 16:32:15 +0100SawyerBergeron[m(~sawyerber@2001:470:69fc:105::3036)
2022-01-05 16:32:15 +0100surgeon[m](~surge9nma@2001:470:69fc:105::f585)
2022-01-05 16:32:15 +0100jmcantrell(~jmcantrel@user/jmcantrell)
2022-01-05 16:32:15 +0100yehoshuapw(~yehoshuap@2001:470:69fc:105::a5f)
2022-01-05 16:32:15 +0100yushyin(UhIHx5Z1ii@mail.karif.server-speed.net)
2022-01-05 16:32:15 +0100dunj3(~dunj3@kingdread.de)
2022-01-05 16:32:15 +0100cpape(~user@2a01:4f9:c010:632d::1)
2022-01-05 16:32:15 +0100dixie(~dixie@real.wilbury.sk)
2022-01-05 16:32:15 +0100sphynx(~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288)
2022-01-05 16:32:15 +0100janus(janus@anubis.0x90.dk)
2022-01-05 16:32:15 +0100phaazon(~phaazon@2001:41d0:a:fe76::1)
2022-01-05 16:32:15 +0100cross(~cross@spitfire.i.gajendra.net)
2022-01-05 16:32:15 +0100immae(~immae@2a01:4f8:141:53e7::)
2022-01-05 16:32:15 +0100tomjaguarpaw(~tom@li367-225.members.linode.com)
2022-01-05 16:32:15 +0100energizer(~energizer@user/energizer)
2022-01-05 16:32:15 +0100Adran(~adran@botters/adran)
2022-01-05 16:32:15 +0100bastelfreak(~bastelfre@basteles-bastelknecht.bastelfreak.org)
2022-01-05 16:32:15 +0100xnbya(~xnbya@2a01:4f8:c17:cbdd::1)
2022-01-05 16:32:15 +0100mikko(~mikko@2a02:7b40:d418:6a61::1)
2022-01-05 16:32:15 +0100codedmart(codedmart@2600:3c01::f03c:92ff:fefe:8511)
2022-01-05 16:32:15 +0100defanor(~defanor@tart.uberspace.net)
2022-01-05 16:32:15 +0100liskin(~liskin@xmonad/liskin)
2022-01-05 16:32:15 +0100cawfee(~root@2406:3003:2077:2758::babe)
2022-01-05 16:32:15 +0100earthy(~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0)
2022-01-05 16:32:15 +0100welterde(welterde@thinkbase.srv.welterde.de)
2022-01-05 16:32:15 +0100dragestil(~znc@user/dragestil)
2022-01-05 16:32:15 +0100bbear(~znc@21212.s.t4vps.eu)
2022-01-05 16:32:15 +0100Ekho(~Ekho@user/ekho)
2022-01-05 16:32:15 +0100jakesyl_(sid56879@id-56879.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100philpax_(sid516926@id-516926.lymington.irccloud.com)
2022-01-05 16:32:15 +0100PotatoGim(sid99505@id-99505.lymington.irccloud.com)
2022-01-05 16:32:15 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100caasih(sid13241@id-13241.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100lightandlight(sid135476@id-135476.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100rtpg(sid443069@id-443069.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100davetapley(sid666@id-666.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100marienz(~marienz@libera/staff/marienz)
2022-01-05 16:32:15 +0100glguy(x@libera/staff/glguy)
2022-01-05 16:32:15 +0100tnks(sid412124@id-412124.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100Boarders_(sid425905@id-425905.lymington.irccloud.com)
2022-01-05 16:32:15 +0100JSharp(sid4580@id-4580.lymington.irccloud.com)
2022-01-05 16:32:15 +0100ysh(sid6017@id-6017.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100saolsen(sid26430@id-26430.lymington.irccloud.com)
2022-01-05 16:32:15 +0100tapas(sid467876@id-467876.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100cbarrett(sid192934@id-192934.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100enemeth79(sid309041@id-309041.lymington.irccloud.com)
2022-01-05 16:32:15 +0100bjs(sid190364@user/bjs)
2022-01-05 16:32:15 +0100sclv(sid39734@haskell/developer/sclv)
2022-01-05 16:32:15 +0100mrianbloom(sid350277@id-350277.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100dmj`(sid72307@id-72307.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100acertain(sid470584@id-470584.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100gaze___(sid387101@id-387101.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100V(~v@anomalous.eu)
2022-01-05 16:32:15 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100hongminhee(sid295@id-295.tinside.irccloud.com)
2022-01-05 16:32:15 +0100russruss(~russruss@my.russellmcc.com)
2022-01-05 16:32:15 +0100sm[i](~user@plaintextaccounting/sm)
2022-01-05 16:32:15 +0100micro(~micro@user/micro)
2022-01-05 16:32:15 +0100MironZ(~MironZ@nat-infra.ehlab.uk)
2022-01-05 16:32:15 +0100gregberns__(sid315709@id-315709.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100teehemkay_(sid14792@id-14792.lymington.irccloud.com)
2022-01-05 16:32:15 +0100whez(sid470288@id-470288.lymington.irccloud.com)
2022-01-05 16:32:15 +0100_0x47_(sid508683@id-508683.tinside.irccloud.com)
2022-01-05 16:32:15 +0100iphy(sid67735@id-67735.lymington.irccloud.com)
2022-01-05 16:32:15 +0100TMA(tma@twin.jikos.cz)
2022-01-05 16:32:15 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667)
2022-01-05 16:32:15 +0100ehamberg(sid18208@id-18208.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100vjoki(~vjoki@2a00:d880:3:1::fea1:9ae)
2022-01-05 16:32:15 +0100jamestmartin(~james@jtmar.me)
2022-01-05 16:32:15 +0100dispater(~dispater@user/brprice)
2022-01-05 16:32:15 +0100integral(sid296274@user/integral)
2022-01-05 16:32:15 +0100gmc(sid58314@id-58314.ilkley.irccloud.com)
2022-01-05 16:32:15 +0100nrr__(sid20938@id-20938.lymington.irccloud.com)
2022-01-05 16:32:15 +0100Arsen(arsen@managarm/dev/Arsen)
2022-01-05 16:32:15 +0100swistak(~swistak@185.21.216.141)
2022-01-05 16:32:15 +0100ts2(~ts@46.101.20.9)
2022-01-05 16:32:15 +0100ystael(~ystael@user/ystael)
2022-01-05 16:32:15 +0100g(x@libera/staff/glguy)
2022-01-05 16:32:15 +0100derelict(derelict@user/derelict)
2022-01-05 16:32:15 +0100[exa](exa@user/exa/x-3587197)
2022-01-05 16:32:15 +0100pie_(~pie_bnc@user/pie/x-2818909)
2022-01-05 16:32:15 +0100aweinstock(~aweinstoc@cpe-67-248-65-250.nycap.res.rr.com)
2022-01-05 16:32:15 +0100andjjj23(~irc@107.170.228.47)
2022-01-05 16:32:15 +0100carter(sid14827@id-14827.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100glowcoil(sid3405@id-3405.tinside.irccloud.com)
2022-01-05 16:32:15 +0100degraafk(sid71464@id-71464.lymington.irccloud.com)
2022-01-05 16:32:15 +0100Firedancer(sid336191@id-336191.hampstead.irccloud.com)
2022-01-05 16:32:15 +0100hughjfchen(~hughjfche@vmi556545.contaboserver.net)
2022-01-05 16:32:15 +0100robbert-vdh(~robbert@robbertvanderhelm.nl)
2022-01-05 16:32:15 +0100Ranhir(~Ranhir@157.97.53.139)
2022-01-05 16:32:15 +0100feetwind(~mike@user/feetwind)
2022-01-05 16:32:15 +0100tubogram4(~tubogram@user/tubogram)
2022-01-05 16:32:15 +0100statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com)
2022-01-05 16:32:15 +0100Hafydd(~Hafydd@user/hafydd)
2022-01-05 16:32:15 +0100Axman6(~Axman6@user/axman6)
2022-01-05 16:32:15 +0100puke(~puke@user/puke)
2022-01-05 16:32:15 +0100farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505)
2022-01-05 16:32:15 +0100aeka(~aeka@user/hiruji)
2022-01-05 16:32:15 +0100burakcank(~burakcank@has.arrived.and.is.ready-to.party)
2022-01-05 16:32:15 +0100enikar(~enikar@user/enikar)
2022-01-05 16:32:15 +0100noddy(~user@user/noddy)
2022-01-05 16:32:15 +0100tcard(~tcard@p2878075-ipngn18701hodogaya.kanagawa.ocn.ne.jp)
2022-01-05 16:32:15 +0100hubvu(sid495858@user/hubvu)
2022-01-05 16:32:15 +0100nurupo(~nurupo.ga@user/nurupo)
2022-01-05 16:32:15 +0100stilgart(~Christoph@chezlefab.net)
2022-01-05 16:32:15 +0100dolio(~dolio@130.44.130.54)
2022-01-05 16:32:15 +0100danso(~danso@d67-193-121-2.home3.cgocable.net)
2022-01-05 16:32:15 +0100synthmeat(~synthmeat@user/synthmeat)
2022-01-05 16:32:15 +0100travv0(sid293381@user/travv0)
2022-01-05 16:32:15 +0100Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
2022-01-05 16:32:15 +0100ridcully(~ridcully@p57b52a9a.dip0.t-ipconnect.de)
2022-01-05 16:32:15 +0100MasseR(~MasseR@51.15.143.128)
2022-01-05 16:32:15 +0100iteratee_(~kyle@162.218.222.107)
2022-01-05 16:32:15 +0100jrm(~jrm@156.34.249.199)
2022-01-05 16:32:15 +0100ldlework(~hexeme@user/hexeme)
2022-01-05 16:32:15 +0100eco_(~ubuntu@ec2-54-201-230-197.us-west-2.compute.amazonaws.com)
2022-01-05 16:32:15 +0100ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2022-01-05 16:32:15 +0100xdej(~xdej@quatramaran.salle-s.org)
2022-01-05 16:32:15 +0100w1gz(~do@159.89.11.133)
2022-01-05 16:32:15 +0100fjmorazan(~quassel@user/fjmorazan)
2022-01-05 16:32:15 +0100adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com)
2022-01-05 16:32:15 +0100In0perable(~PLAYER_1@fancydata.science)
2022-01-05 16:32:15 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-01-05 16:32:15 +0100berberman(~berberman@user/berberman)
2022-01-05 16:32:15 +0100dagit(~dagit@2001:558:6025:38:6476:a063:d05a:44da)
2022-01-05 16:32:15 +0100zero(~z@user/zero)
2022-01-05 16:32:15 +0100megaTherion(~therion@unix.io)
2022-01-05 16:32:15 +0100totte(~totte@h-82-196-112-155.A166.priv.bahnhof.se)
2022-01-05 16:32:15 +0100mstksg(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2022-01-05 16:32:15 +0100raghavgururajan(ea769b8000@user/raghavgururajan)
2022-01-05 16:32:15 +0100Logio(em@kapsi.fi)
2022-01-05 16:32:15 +0100hexology(~hexology@user/hexology)
2022-01-05 16:32:15 +0100landonf(landonf@mac68k.info)
2022-01-05 16:32:15 +0100hugo(znc@verdigris.lysator.liu.se)
2022-01-05 16:32:15 +0100kristjansson(sid126207@id-126207.tinside.irccloud.com)
2022-01-05 16:32:15 +0100lally(sid388228@id-388228.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100Clint(~Clint@user/clint)
2022-01-05 16:32:15 +0100greyrat(~greyrat@ip202.ip-51-178-215.eu)
2022-01-05 16:32:15 +0100nisstyre(~wes@user/nisstyre)
2022-01-05 16:32:15 +0100opqdonut(opqdonut@pseudo.fixme.fi)
2022-01-05 16:32:15 +0100bsima1(9d7e39c8ad@2604:bf00:561:2000::dd)
2022-01-05 16:32:15 +0100lemonsnicks(~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net)
2022-01-05 16:32:15 +0100neverwas(jpneverwas@swissbox.unperson.link)
2022-01-05 16:32:15 +0100szkl(uid110435@id-110435.uxbridge.irccloud.com)
2022-01-05 16:32:15 +0100Techcable(~Techcable@168.235.93.147)
2022-01-05 16:32:15 +0100lagash(lagash@lagash.shelltalk.net)
2022-01-05 16:32:15 +0100obfusk(~quassel@a82-161-150-56.adsl.xs4all.nl)
2022-01-05 16:32:15 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net)
2022-01-05 16:32:15 +0100Kaiepi(~Kaiepi@156.34.47.253)
2022-01-05 16:32:15 +0100mrmonday(~robert@what.i.hope.is.not.a.tabernaevagant.es)
2022-01-05 16:32:15 +0100aku(~aku@163.172.137.34)
2022-01-05 16:32:15 +0100TheCoffeMaker(~TheCoffeM@user/thecoffemaker)
2022-01-05 16:32:15 +0100hrdl(~hrdl@mail.hrdl.eu)
2022-01-05 16:32:15 +0100euandreh(~euandreh@2804:14c:33:9fe5:58c5:6207:2988:1b06)
2022-01-05 16:32:15 +0100mrmr(~mrmr@user/mrmr)
2022-01-05 16:32:15 +0100terrorjack(~terrorjac@2a01:4f8:1c1e:509a::1)
2022-01-05 16:32:15 +0100perro_(~perro@072-191-245-069.res.spectrum.com)
2022-01-05 16:32:15 +0100jinsun(~quassel@user/jinsun)
2022-01-05 16:32:15 +0100carbolymer(~carbolyme@dropacid.net)
2022-01-05 16:32:15 +0100theproffesor(~theproffe@user/theproffesor)
2022-01-05 16:32:15 +0100Inst(~delicacie@2601:6c4:4080:3f80:f131:ad94:e07f:dfdd)
2022-01-05 16:32:15 +0100zaquest(~notzaques@5.130.79.72)
2022-01-05 16:32:15 +0100vgtw(~vgtw@c-2359205c.07-348-756d651.bbcust.telenor.se)
2022-01-05 16:32:15 +0100zmt00(~zmt00@user/zmt00)
2022-01-05 16:32:15 +0100awpr(uid446117@id-446117.lymington.irccloud.com)
2022-01-05 16:32:15 +0100img(~img@user/img)
2022-01-05 16:32:15 +0100tito(tito@tilde.team)
2022-01-05 16:32:15 +0100hueso(~root@user/hueso)
2022-01-05 16:32:15 +0100drewr(~drew@user/drewr)
2022-01-05 16:32:15 +0100tristanC(~tristanC@user/tristanc)
2022-01-05 16:32:15 +0100gentauro(~gentauro@user/gentauro)
2022-01-05 16:32:15 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-01-05 16:32:15 +0100ddb(~ddb@ipv6two.tilde.club)
2022-01-05 16:32:15 +0100mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2022-01-05 16:32:15 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2022-01-05 16:32:15 +0100AlexNoo(~AlexNoo@94.233.240.16)
2022-01-05 16:32:15 +0100Alex_test(~al_test@94.233.240.16)
2022-01-05 16:32:15 +0100Erutuon(~Erutuon@user/erutuon)
2022-01-05 16:32:15 +0100remexre(~remexre@user/remexre)
2022-01-05 16:32:15 +0100td_(~td@94.134.91.82)
2022-01-05 16:32:15 +0100jiribenes(~jiribenes@rosa.jiribenes.com)
2022-01-05 16:32:15 +0100yaroot(~yaroot@2409:12:ac0:2300:680e:dbff:fe1e:4953)
2022-01-05 16:32:15 +0100d0ku(~d0ku@178.43.3.56.ipv4.supernova.orange.pl)
2022-01-05 16:32:15 +0100phma(phma@2001:5b0:215a:cac8:aefe:d82b:57fb:72c6)
2022-01-05 16:32:15 +0100coot(~coot@89-64-85-93.dynamic.chello.pl)
2022-01-05 16:32:15 +0100chele(~chele@user/chele)
2022-01-05 16:32:15 +0100retro_(~retro@2e40edd9.skybroadband.com)
2022-01-05 16:32:15 +0100bliminse(~bliminse@host86-186-17-7.range86-186.btcentralplus.com)
2022-01-05 16:32:15 +0100biberu(~biberu@user/biberu)
2022-01-05 16:32:15 +0100emergence(~emergence@vm0.max-p.me)
2022-01-05 16:32:15 +0100sus(zero@user/zeromomentum)
2022-01-05 16:32:15 +0100Jing(~hedgehog@2604:a840:3::103c)
2022-01-05 16:32:15 +0100sim590(~simon@modemcable090.207-203-24.mc.videotron.ca)
2022-01-05 16:32:15 +0100infinity0(~infinity0@occupy.ecodis.net)
2022-01-05 16:32:15 +0100absence(torgeihe@hildring.pvv.ntnu.no)
2022-01-05 16:32:15 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-01-05 16:32:15 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-01-05 16:32:15 +0100cheater(~Username@user/cheater)
2022-01-05 16:32:15 +0100notzmv(~zmv@user/notzmv)
2022-01-05 16:32:15 +0100polyphem(~rod@2a02:810d:640:776c:e450:3ca3:b389:687a)
2022-01-05 16:32:15 +0100Vajb(~Vajb@2001:999:50:e6be:1e98:9376:d93e:4506)
2022-01-05 16:32:15 +0100sander(~sander@user/sander)
2022-01-05 16:32:15 +0100kuribas(~user@ptr-25vy0i91z2t2xltfc74.18120a2.ip6.access.telenet.be)
2022-01-05 16:32:15 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 16:32:15 +0100jumper149(~jumper149@static.6.71.203.116.clients.your-server.de)
2022-01-05 16:32:15 +0100ouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 16:32:15 +0100abrantesasf(~abrantesa@187.36.170.211)
2022-01-05 16:32:15 +0100waleee(~waleee@2001:9b0:21d:fc00:398f:b003:b90d:acf4)
2022-01-05 16:32:15 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-01-05 16:32:15 +0100mikoto-chan(~mikoto-ch@esm-84-240-99-143.netplaza.fi)
2022-01-05 16:32:15 +0100`2jt(~jtomas@153.red-83-53-252.dynamicip.rima-tde.net)
2022-01-05 16:32:15 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2022-01-05 16:32:15 +0100xff0x(~xff0x@port-92-195-123-135.dynamic.as20676.net)
2022-01-05 16:32:15 +0100n3rdy1(~n3rdy1@2600:1700:4570:3480::41)
2022-01-05 16:32:15 +0100xb0o2(~xb0o2@user/xb0o2)
2022-01-05 16:32:15 +0100rond_42(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd)
2022-01-05 16:32:15 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-01-05 16:32:15 +0100res0nat0r0(~Fletch@dia.whatbox.ca)
2022-01-05 16:32:15 +0100SquidDev(~SquidDev@autoclave.squiddev.cc)
2022-01-05 16:32:15 +0100L29Ah(~L29Ah@wikipedia/L29Ah)
2022-01-05 16:32:15 +0100leah2(~leah@vuxu.org)
2022-01-05 16:32:15 +0100tolt(~weechat-h@li219-154.members.linode.com)
2022-01-05 16:32:15 +0100sprout(~quassel@2a02:a467:ccd6:1:48c8:920f:83dd:ae34)
2022-01-05 16:32:15 +0100rembo10(~rembo10@remulis.com)
2022-01-05 16:32:15 +0100meinside(uid24933@id-24933.helmsley.irccloud.com)
2022-01-05 16:32:15 +0100lechner(~lechner@debian/lechner)
2022-01-05 16:32:15 +0100kjak(~kjak@pool-108-45-56-21.washdc.fios.verizon.net)
2022-01-05 16:32:15 +0100Nahra(~user@static.161.95.99.88.clients.your-server.de)
2022-01-05 16:32:15 +0100ph88(~ph88@2a02:8109:9e00:71d0::7e04)
2022-01-05 16:32:15 +0100InternetManaging(~imjmatrix@2001:470:69fc:105::1:2ea5)
2022-01-05 16:32:15 +0100benjamin[m]1234(~benjaminm@2001:470:69fc:105::1:3f2f)
2022-01-05 16:32:15 +0100xbreu(~xbreu@2001:470:69fc:105::1:5061)
2022-01-05 16:32:15 +0100unyu(~pyon@user/pyon)
2022-01-05 16:32:15 +0100doyougnu(~doyougnu@c-73-25-202-122.hsd1.or.comcast.net)
2022-01-05 16:32:15 +0100bsima(~bsima@2604:a880:400:d0::19f1:7001)
2022-01-05 16:32:15 +0100vysn(~vysn@user/vysn)
2022-01-05 16:32:15 +0100_xor(~xor@dsl-50-5-233-169.fuse.net)
2022-01-05 16:32:15 +0100pooryorick(~pooryoric@87-119-174-173.tll.elisa.ee)
2022-01-05 16:32:15 +0100kmein(~weechat@user/kmein)
2022-01-05 16:32:15 +0100TonyStone(~TonyStone@cpe-74-76-51-197.nycap.res.rr.com)
2022-01-05 16:32:15 +0100qwedfg(~qwedfg@user/qwedfg)
2022-01-05 16:32:15 +0100neurocyte0(~neurocyte@user/neurocyte)
2022-01-05 16:32:15 +0100tomku(~tomku@user/tomku)
2022-01-05 16:32:15 +0100mbuf(~Shakthi@122.174.247.3)
2022-01-05 16:32:15 +0100coolnickname(uid531864@user/coolnickname)
2022-01-05 16:32:15 +0100kaph(~kaph@net-2-38-107-19.cust.vodafonedsl.it)
2022-01-05 16:32:15 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:c365:2459:70e0:4fac)
2022-01-05 16:32:15 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-05 16:32:15 +0100xkuru(~xkuru@user/xkuru)
2022-01-05 16:32:15 +0100matijja(~matijja@193.77.181.201)
2022-01-05 16:32:15 +0100n8chan(~nate@108-233-125-227.lightspeed.sntcca.sbcglobal.net)
2022-01-05 16:32:15 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-01-05 16:32:15 +0100drdo(~drdo@144.172.69.89)
2022-01-05 16:32:15 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-01-05 16:32:15 +0100shailangsa_(~shailangs@host86-162-150-202.range86-162.btcentralplus.com)
2022-01-05 16:32:15 +0100bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-01-05 16:32:15 +0100duckonomy(~duckonomy@177.ip-144-217-84.net)
2022-01-05 16:32:15 +0100ubert(~Thunderbi@2a02:8109:9880:303c:2a00:eeaf:f8c:1b54)
2022-01-05 16:32:15 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net)
2022-01-05 16:32:15 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk)
2022-01-05 16:32:15 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2022-01-05 16:32:15 +0100husixu(~husixu@137.132.119.2)
2022-01-05 16:32:15 +0100jlamothe(~jlamothe@198.251.61.229)
2022-01-05 16:32:15 +0100Sgeo(~Sgeo@user/sgeo)
2022-01-05 16:32:15 +0100benin(~benin@183.82.176.241)
2022-01-05 16:32:15 +0100ChanServ(ChanServ@services.libera.chat)
2022-01-05 16:32:15 +0100mercury.libera.chat+o ChanServ
2022-01-05 16:32:17 +0100SridharRatnakuma(~sridmatri@2001:470:69fc:105::1c2)
2022-01-05 16:32:17 +0100ormaaj(~ormaaj@user/ormaaj)
2022-01-05 16:32:17 +0100pfurla-matrix(~pedrofurl@2001:470:69fc:105::1:51d7)
2022-01-05 16:32:17 +0100Deide(~deide@user/deide)
2022-01-05 16:32:17 +0100amesgen[m](~amesgenm]@2001:470:69fc:105::82b)
2022-01-05 16:32:17 +0100unclechu(~unclechu@2001:470:69fc:105::354)
2022-01-05 16:32:17 +0100Tisoxin(~ikosit@user/ikosit)
2022-01-05 16:32:17 +0100bitonic(~bitonic@2001:470:69fc:105::1812)
2022-01-05 16:32:17 +0100Nate[m]1(~m52957mat@2001:470:69fc:105::1:591a)
2022-01-05 16:32:17 +0100cherryblossom[m](~cherryblo@2001:470:69fc:105::b789)
2022-01-05 16:32:17 +0100james[m]123(~jamesnina@2001:470:69fc:105::1:4203)
2022-01-05 16:32:17 +0100Michal[m](~oomiguelm@2001:470:69fc:105::1:5ab0)
2022-01-05 16:32:17 +0100wz1000(~zubin@static.11.113.47.78.clients.your-server.de)
2022-01-05 16:32:17 +0100PigDude(~PigDude@159.203.16.199)
2022-01-05 16:32:17 +0100Typedfern(~Typedfern@75.red-88-22-25.staticip.rima-tde.net)
2022-01-05 16:32:17 +0100niko(~niko@libera/staff/niko)
2022-01-05 16:32:17 +0100wolfshappen(~waff@irc.furworks.de)
2022-01-05 16:32:17 +0100ProofTechnique(sid79547@id-79547.ilkley.irccloud.com)
2022-01-05 16:32:17 +0100forell(~forell@user/forell)
2022-01-05 16:32:17 +0100cods(~fred@82-65-232-44.subs.proxad.net)
2022-01-05 16:32:17 +0100son0p(~ff@181.136.122.143)
2022-01-05 16:32:17 +0100rookie101(~rookie@165.232.121.13)
2022-01-05 16:32:17 +0100finsternis(~X@23.226.237.192)
2022-01-05 16:32:17 +0100samebchase(~samebchas@51.15.68.182)
2022-01-05 16:32:17 +0100enyc(~enyc@user/enyc)
2022-01-05 16:32:17 +0100peutri(~peutri@ns317027.ip-94-23-46.eu)
2022-01-05 16:32:17 +0100dfordvm(~dfordivam@tk2-219-19469.vs.sakura.ne.jp)
2022-01-05 16:32:17 +0100bens(~bens@www.typius.com)
2022-01-05 16:32:17 +0100mjacob_(~mjacob@adrastea.uberspace.de)
2022-01-05 16:32:17 +0100ephemient(uid407513@id-407513.lymington.irccloud.com)
2022-01-05 16:32:17 +0100auri(~quassel@fsf/member/auri)
2022-01-05 16:32:17 +0100chronon(~chronon@user/chronon)
2022-01-05 16:32:17 +0100Moyst_(~moyst@user/moyst)
2022-01-05 16:32:17 +0100dsal(sid13060@id-13060.lymington.irccloud.com)
2022-01-05 16:32:17 +0100jmct_(sid160793@id-160793.tinside.irccloud.com)
2022-01-05 16:32:17 +0100astra(sid289983@user/amish)
2022-01-05 16:32:17 +0100amir(sid22336@user/amir)
2022-01-05 16:32:17 +0100hamishmack_(sid389057@id-389057.hampstead.irccloud.com)
2022-01-05 16:32:17 +0100parseval(sid239098@id-239098.helmsley.irccloud.com)
2022-01-05 16:32:17 +0100bsdbandit(~bwell@users.757.org)
2022-01-05 16:32:17 +0100mcfrdy(~mcfrdy@user/mcfrdy)
2022-01-05 16:32:17 +0100dexterfoo(dexter@2a01:7e00::f03c:91ff:fe86:59ec)
2022-01-05 16:32:17 +0100ringo__(~ringo@157.230.117.128)
2022-01-05 16:32:17 +0100oxytocat(~alloca@user/suppi)
2022-01-05 16:32:17 +0100kawzeg(kawzeg@2a01:7e01::f03c:92ff:fee2:ec34)
2022-01-05 16:32:17 +0100hexagoxel(~hexagoxel@2a01:4f8:c0c:e::2)
2022-01-05 16:32:17 +0100fiddlerwoaroof(~fiddlerwo@user/fiddlerwoaroof)
2022-01-05 16:32:17 +0100nshepperd2(~nshepperd@li364-218.members.linode.com)
2022-01-05 16:32:17 +0100deni(~deni@user/deni)
2022-01-05 16:32:17 +0100krjst(~krjst@2604:a880:800:c1::16b:8001)
2022-01-05 16:32:17 +0100jocke-l(jocke-l@a.x0.is)
2022-01-05 16:32:17 +0100thonkpod(~thonkpod@user/thonkpod)
2022-01-05 16:32:18 +0100enyc(~enyc@user/enyc) (Max SendQ exceeded)
2022-01-05 16:32:18 +0100wolfshappen(~waff@irc.furworks.de) (Max SendQ exceeded)
2022-01-05 16:32:18 +0100ormaaj(~ormaaj@user/ormaaj) (Max SendQ exceeded)
2022-01-05 16:32:18 +0100nhatanh02(~satori@123.24.172.30)
2022-01-05 16:32:27 +0100max22-(~maxime@2a01cb088335980086c6bc2422140675.ipv6.abo.wanadoo.fr)
2022-01-05 16:32:27 +0100the_last_immorta(~thelastim@2001:470:69fc:105::1:4d57)
2022-01-05 16:32:27 +0100octeep[m](~octeepoct@2001:470:69fc:105::1:3dbf)
2022-01-05 16:32:27 +0100nomeata(~nomeata@2001:470:69fc:105::1:5ed4)
2022-01-05 16:32:27 +0100fsckskye[m](~kmatrixth@2001:470:69fc:105::1:3b2f)
2022-01-05 16:32:27 +0100fcortesi(~fcortesi@2001:470:69fc:105::f3a9)
2022-01-05 16:32:27 +0100DemiMarieObenour(~alwayscur@2001:470:69fc:105::4886)
2022-01-05 16:32:27 +0100jneira[m](~jneiramat@2001:470:69fc:105::d729)
2022-01-05 16:32:27 +0100marinelli[m](~marinelli@2001:470:69fc:105::2d8)
2022-01-05 16:32:27 +0100maralorn(~maralorn@2001:470:69fc:105::251)
2022-01-05 16:32:27 +0100Topik[m](~topikmatr@2001:470:69fc:105::a082)
2022-01-05 16:32:27 +0100Arathorn(~arathorn@2001:470:69fc:105::1f)
2022-01-05 16:32:27 +0100fgaz(~fgaz@2001:470:69fc:105::842)
2022-01-05 16:32:27 +0100sofviic[m](~sofviicma@2001:470:69fc:105::1:51fd)
2022-01-05 16:32:27 +0100afotgkmnzj7asv3r(~afotgkmnz@2001:470:69fc:105::c24b)
2022-01-05 16:32:27 +0100aplainzetakind(~johndoe@captainludd.powered.by.lunarbnc.net)
2022-01-05 16:32:27 +0100srk(~sorki@user/srk)
2022-01-05 16:32:27 +0100haasn(~nand@haasn.dev)
2022-01-05 16:32:27 +0100bbhoss(sid18216@id-18216.tinside.irccloud.com)
2022-01-05 16:32:27 +0100bw(sid2730@user/betawaffle)
2022-01-05 16:32:27 +0100scav(sid309693@id-309693.helmsley.irccloud.com)
2022-01-05 16:32:27 +0100feliix42(~felix@gibbs.uberspace.de)
2022-01-05 16:32:27 +0100cln(sid336875@id-336875.ilkley.irccloud.com)
2022-01-05 16:32:27 +0100bgamari_(~bgamari@2001:470:e438::1)
2022-01-05 16:32:27 +0100ishutin(~ishutin@92-249-182-7.pool.digikabel.hu)
2022-01-05 16:32:27 +0100slowtyper(~slowtyper@user/slowtyper)
2022-01-05 16:32:27 +0100wrengr(~wrengr@150.12.83.34.bc.googleusercontent.com)
2022-01-05 16:32:27 +0100averell(~averell@user/averell)
2022-01-05 16:32:27 +0100mrus(~mrus@2001:19f0:5:1535:5400:3ff:fe7d:10ae)
2022-01-05 16:32:27 +0100dwt_(~dwt_@c-98-198-103-176.hsd1.tx.comcast.net)
2022-01-05 16:32:27 +0100Ferdirand(~somebody@2001:4c78:2012:5000::2)
2022-01-05 16:32:27 +0100dfg(dfg@user/dfg)
2022-01-05 16:32:27 +0100Unhammer(~Unhammer@user/unhammer)
2022-01-05 16:32:27 +0100relrod(~relrod@redhat/ansible.staff.relrod)
2022-01-05 16:32:27 +0100platz_(~platz@40.122.118.113)
2022-01-05 16:32:27 +0100mht-wtf(~mht@2a03:b0c0:3:e0::1e2:c001)
2022-01-05 16:32:27 +0100kawpuh(~kawpuh@66.42.81.80)
2022-01-05 16:32:27 +0100tdammers(~tdammers@77.109.72.177.res.static.edpnet.net)
2022-01-05 16:32:27 +0100glider(~glider@user/glider)
2022-01-05 16:32:27 +0100quintasan(~quassel@quintasan.pl)
2022-01-05 16:32:27 +0100orcus(~orcus@user/brprice)
2022-01-05 16:32:27 +0100tinwood(~tinwood@canonical/tinwood)
2022-01-05 16:32:27 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2022-01-05 16:32:27 +0100Patternmaster(~georg@li1192-118.members.linode.com)
2022-01-05 16:32:27 +0100haskl(~haskl@user/haskl)
2022-01-05 16:32:27 +0100teddyc(theodorc@cassarossa.samfundet.no)
2022-01-05 16:32:27 +0100dyniec(~dyniec@mail.dybiec.info)
2022-01-05 16:32:27 +0100anderson(~ande@user/anderson)
2022-01-05 16:32:27 +0100hiredman(~hiredman@frontier1.downey.family)
2022-01-05 16:32:27 +0100piele(~piele@tbonesteak.creativeserver.net)
2022-01-05 16:32:27 +0100dminuoso(~dminuoso@user/dminuoso)
2022-01-05 16:32:27 +0100OscarH_(~OscarH@90.201.86.195)
2022-01-05 16:32:27 +0100arkeet(~arkeet@moriya.ca)
2022-01-05 16:32:27 +0100siraben(~siraben@user/siraben) (Max SendQ exceeded)
2022-01-05 16:32:27 +0100jmcantrell(~jmcantrel@user/jmcantrell) (Max SendQ exceeded)
2022-01-05 16:32:28 +0100surgeon[m](~surge9nma@2001:470:69fc:105::f585) (Max SendQ exceeded)
2022-01-05 16:32:33 +0100schuelermine[m](~schuelerm@user/schuelermine) (Ping timeout: 240 seconds)
2022-01-05 16:32:33 +0100aveltras[m](~aveltrasm@2001:470:69fc:105::3ef9) (Ping timeout: 240 seconds)
2022-01-05 16:32:37 +0100benjamin[m]1234(~benjaminm@2001:470:69fc:105::1:3f2f) (Ping timeout: 240 seconds)
2022-01-05 16:32:42 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd)
2022-01-05 16:32:42 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2022-01-05 16:32:42 +0100gehmehgeh(~user@user/gehmehgeh)
2022-01-05 16:32:42 +0100alMalsamo(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-01-05 16:32:42 +0100califax(~califax@user/califx)
2022-01-05 16:32:42 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-01-05 16:32:42 +0100stiell(~stiell@gateway/tor-sasl/stiell)
2022-01-05 16:32:42 +0100azimut(~azimut@gateway/tor-sasl/azimut)
2022-01-05 16:32:42 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2022-01-05 16:32:42 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2022-01-05 16:32:43 +0100Artem[m](~artemtype@2001:470:69fc:105::75b) (Ping timeout: 250 seconds)
2022-01-05 16:32:43 +0100zwro[m](~zwromatri@2001:470:69fc:105::1d4) (Ping timeout: 250 seconds)
2022-01-05 16:32:43 +0100vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe) (Ping timeout: 250 seconds)
2022-01-05 16:32:43 +0100wysteriary[m](~wysteriar@2001:470:69fc:105::a42e) (Ping timeout: 250 seconds)
2022-01-05 16:32:47 +0100dsrt^(~dsrt@207.5.21.20)
2022-01-05 16:32:49 +0100eoiles[m](~eoilesmat@2001:470:69fc:105::1:6164)
2022-01-05 16:32:49 +0100hughjfchen[m](~hughjfche@2001:470:69fc:105::c29d)
2022-01-05 16:32:49 +0100soft(~soft@2001:470:69fc:105::c75)
2022-01-05 16:32:49 +0100bb010g(~bb010g@2001:470:69fc:105::9a5)
2022-01-05 16:32:49 +0100jchia[m](~jchiamatr@2001:470:69fc:105::c50b)
2022-01-05 16:32:49 +0100jinsun_(~jinsun@user/jinsun)
2022-01-05 16:32:49 +0100ManofLetters[m](~manoflett@2001:470:69fc:105::3be)
2022-01-05 16:32:49 +0100alex[m](~alexchete@2001:470:69fc:105::1:1001)
2022-01-05 16:32:49 +0100Magnus[m](~magthetch@2001:470:69fc:105::d1a7)
2022-01-05 16:32:49 +0100ongy[m](~ongymatri@2001:470:69fc:105::5018)
2022-01-05 16:32:49 +0100unrooted(~unrooted@2001:470:69fc:105::a4a)
2022-01-05 16:32:49 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4)
2022-01-05 16:32:49 +0100simmsb(~simmsb@2001:470:69fc:105::1:55c3)
2022-01-05 16:32:49 +0100Orbstheorem(~orbstheor@2001:470:69fc:105::a56)
2022-01-05 16:32:49 +0100jkachmar(~jkachmar@2001:470:69fc:105::c72d)
2022-01-05 16:32:49 +0100justIrresolute(~justache@user/justache)
2022-01-05 16:32:49 +0100esoca123(uid534098@id-534098.tinside.irccloud.com)
2022-01-05 16:32:49 +0100Megant(megant@user/megant)
2022-01-05 16:32:49 +0100sweater(~sweater@206.81.18.26)
2022-01-05 16:32:49 +0100ft(~ft@shell.chaostreff-dortmund.de)
2022-01-05 16:32:49 +0100ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net)
2022-01-05 16:32:49 +0100a1paca(~a1paca@user/a1paca)
2022-01-05 16:32:49 +0100obviyus(sid415299@user/obviyus)
2022-01-05 16:32:49 +0100gonz_____(sid304396@id-304396.lymington.irccloud.com)
2022-01-05 16:32:49 +0100mustafa(sid502723@rockylinux/releng/mustafa)
2022-01-05 16:32:49 +0100Square(~a@user/square)
2022-01-05 16:32:49 +0100fluxit(~fluxit@techsmix.net)
2022-01-05 16:32:49 +0100davean(~davean@davean.sciesnet.net)
2022-01-05 16:32:49 +0100tritlo(sid58727@user/tritlo)
2022-01-05 16:32:49 +0100NemesisD(sid24071@id-24071.lymington.irccloud.com)
2022-01-05 16:32:49 +0100abrar_(~abrar@static-108-2-152-54.phlapa.fios.verizon.net)
2022-01-05 16:32:49 +0100pippijn(~pippijn@ra.xinutec.org)
2022-01-05 16:32:49 +0100shane(~shane@ana.rch.ist)
2022-01-05 16:32:49 +0100koala_man(~vidar@157.146.251.23.bc.googleusercontent.com)
2022-01-05 16:32:49 +0100edwardk(sid47016@haskell/developer/edwardk)
2022-01-05 16:32:49 +0100idnar(sid12240@debian/mithrandi)
2022-01-05 16:32:49 +0100lexi-lambda(sid92601@id-92601.hampstead.irccloud.com)
2022-01-05 16:32:49 +0100sa1_(sid7690@id-7690.ilkley.irccloud.com)
2022-01-05 16:32:49 +0100typetetris(sid275937@id-275937.tinside.irccloud.com)
2022-01-05 16:32:49 +0100rubin55(sid175221@id-175221.hampstead.irccloud.com)
2022-01-05 16:32:49 +0100jackdk(sid373013@cssa/jackdk)
2022-01-05 16:32:49 +0100gnyeki(~gnyeki@user/gnyeki)
2022-01-05 16:32:49 +0100dkeohane2(~dkeohane@ec2-18-189-29-140.us-east-2.compute.amazonaws.com)
2022-01-05 16:32:49 +0100supersven(sid501114@id-501114.ilkley.irccloud.com)
2022-01-05 16:32:49 +0100christiaanb(sid84827@id-84827.lymington.irccloud.com)
2022-01-05 16:32:49 +0100beaky(~beaky@2a03:b0c0:0:1010::1e:a001)
2022-01-05 16:32:49 +0100spider__(~spider@vps-951ce37a.vps.ovh.ca)
2022-01-05 16:32:49 +0100c_wraith(~c_wraith@adjoint.us)
2022-01-05 16:32:49 +0100drlkf(~drlkf@2001:41d0:a:62bb::1)
2022-01-05 16:32:49 +0100xerox(~edi@user/edi)
2022-01-05 16:32:49 +0100bwe(~bwe@2a01:4f8:1c1c:4878::2)
2022-01-05 16:32:51 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4) (Max SendQ exceeded)
2022-01-05 16:32:51 +0100jinsun_(~jinsun@user/jinsun) (Max SendQ exceeded)
2022-01-05 16:32:51 +0100justIrresolute(~justache@user/justache) (Max SendQ exceeded)
2022-01-05 16:32:51 +0100soft(~soft@2001:470:69fc:105::c75) (Ping timeout: 245 seconds)
2022-01-05 16:32:51 +0100bb010g(~bb010g@2001:470:69fc:105::9a5) (Ping timeout: 245 seconds)
2022-01-05 16:32:51 +0100alex[m](~alexchete@2001:470:69fc:105::1:1001) (Ping timeout: 245 seconds)
2022-01-05 16:32:51 +0100unrooted(~unrooted@2001:470:69fc:105::a4a) (Ping timeout: 245 seconds)
2022-01-05 16:32:57 +0100oak-(~oakuniver@2001:470:69fc:105::fcd) (Ping timeout: 250 seconds)
2022-01-05 16:32:57 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd) (Ping timeout: 250 seconds)
2022-01-05 16:32:57 +0100alexfmpe[m](~alexfmpem@2001:470:69fc:105::38ba) (Ping timeout: 250 seconds)
2022-01-05 16:32:57 +0100carmysilna(~brightly-@2001:470:69fc:105::2190) (Ping timeout: 250 seconds)
2022-01-05 16:32:57 +0100boxscape(~boxscape@user/boxscape) (Ping timeout: 250 seconds)
2022-01-05 16:32:57 +0100rednaZ[m](~r3dnazmat@2001:470:69fc:105::ba70) (Ping timeout: 250 seconds)
2022-01-05 16:33:01 +0100xbreu(~xbreu@2001:470:69fc:105::1:5061) (Ping timeout: 240 seconds)
2022-01-05 16:33:02 +0100Ollie[m](~ollieocha@2001:470:69fc:105::41a5) (Ping timeout: 240 seconds)
2022-01-05 16:33:02 +0100quantum(~quantum@user/quantum/x-8556232) (Ping timeout: 240 seconds)
2022-01-05 16:33:02 +0100Las[m](~lasmatrix@2001:470:69fc:105::74e) (Ping timeout: 240 seconds)
2022-01-05 16:33:02 +0100prrxddq[m](~prrxddqma@2001:470:69fc:105::1:4f72) (Ping timeout: 240 seconds)
2022-01-05 16:33:05 +0100the_last_immorta(~thelastim@2001:470:69fc:105::1:4d57) (Ping timeout: 252 seconds)
2022-01-05 16:33:05 +0100nomeata(~nomeata@2001:470:69fc:105::1:5ed4) (Ping timeout: 252 seconds)
2022-01-05 16:33:05 +0100fcortesi(~fcortesi@2001:470:69fc:105::f3a9) (Ping timeout: 252 seconds)
2022-01-05 16:33:05 +0100DemiMarieObenour(~alwayscur@2001:470:69fc:105::4886) (Ping timeout: 252 seconds)
2022-01-05 16:33:05 +0100codygman[m](~codygman@2001:470:69fc:105::b4ba)
2022-01-05 16:33:05 +0100zfnmxt(~zfnmxtzfn@2001:470:69fc:105::2b32)
2022-01-05 16:33:05 +0100kalxd[m](~kalxdmatr@2001:470:69fc:105::1:576e)
2022-01-05 16:33:05 +0100aidy(~aidy@2001:470:69fc:105::c7b4)
2022-01-05 16:33:05 +0100thomasjm[m](~thomasjmm@2001:470:69fc:105::c6d9)
2022-01-05 16:33:05 +0100maerwald[m](~maerwaldm@user/maerwald)
2022-01-05 16:33:05 +0100moats(~oats@user/oats)
2022-01-05 16:33:05 +0100juhp[m](~juhpmatri@2001:470:69fc:105::6e9)
2022-01-05 16:33:05 +0100jophish(~jophish@2001:470:69fc:105::670)
2022-01-05 16:33:05 +0100ericson2314(~ericson23@2001:470:69fc:105::70c)
2022-01-05 16:33:05 +0100puffnfresh[m](~puffnfres@2001:470:69fc:105::1:22da)
2022-01-05 16:33:05 +0100kadoban(~kadoban@user/kadoban)
2022-01-05 16:33:05 +0100jesser[m](~jessermat@2001:470:69fc:105::d5ae)
2022-01-05 16:33:05 +0100IgnatInsarov[m](~kindaroma@2001:470:69fc:105::f5d9)
2022-01-05 16:33:05 +0100RosarioPulella[m(~rosariopu@2001:470:69fc:105::a57)
2022-01-05 16:33:05 +0100justosophy[m](~justosoph@2001:470:69fc:105::572f)
2022-01-05 16:33:05 +0100xddq[m](~xddqmatri@2001:470:69fc:105::bfd8)
2022-01-05 16:33:05 +0100int-e(~noone@int-e.eu)
2022-01-05 16:33:05 +0100Goodbye_Vincent(cyvahl@freakshells.net)
2022-01-05 16:33:05 +0100acidsys(~LSD@2.lsd.systems)
2022-01-05 16:33:05 +0100Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2022-01-05 16:33:05 +0100pieguy12-(~pieguy128@bras-base-mtrlpq5031w-grc-48-67-70-102-17.dsl.bell.ca)
2022-01-05 16:33:05 +0100Unode(~Unode@194.94.44.220)
2022-01-05 16:33:05 +0100troydm(~troydm@host-176-37-124-197.b025.la.net.ua)
2022-01-05 16:33:05 +0100jzsinatra(~jzsinatra@88-114-238-31.elisa-laajakaista.fi)
2022-01-05 16:33:05 +0100samhh(7569f027cf@2604:bf00:561:2000::e4)
2022-01-05 16:33:05 +0100thebnq(~bnq@herrokitty.com)
2022-01-05 16:33:05 +0100Noinia(~Frank@77-162-168-71.fixed.kpn.net)
2022-01-05 16:33:05 +0100gawen_(~gawen@user/gawen)
2022-01-05 16:33:05 +0100erisco(~erisco@d24-57-249-233.home.cgocable.net)
2022-01-05 16:33:05 +0100amk(~amk@109.255.169.126)
2022-01-05 16:33:05 +0100mrkajetanp(~mrkajetan@88.98.245.28)
2022-01-05 16:33:05 +0100Putonlalla(~sapekiis@it-cyan.it.jyu.fi)
2022-01-05 16:33:05 +0100Ankhers(e99e97ef8e@2604:bf00:561:2000::2a2)
2022-01-05 16:33:05 +0100juri_(~juri@178.63.35.222)
2022-01-05 16:33:05 +0100Flonk(~Flonk@vps-zap441517-1.zap-srv.com)
2022-01-05 16:33:05 +0100urdh(~urdh@user/urdh)
2022-01-05 16:33:05 +0100m4lvin(~m4lvin@w4eg.de)
2022-01-05 16:33:05 +0100jassob(~jassob@h-155-4-71-72.A785.priv.bahnhof.se)
2022-01-05 16:33:05 +0100Vq(~vq@90-227-195-41-no77.tbcn.telia.com)
2022-01-05 16:33:05 +0100acro(~acro@user/acro)
2022-01-05 16:33:05 +0100catern(~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407)
2022-01-05 16:33:05 +0100xacktm(xacktm@user/xacktm)
2022-01-05 16:33:05 +0100LambdaDuck(~anka@ksit.fixme.fi)
2022-01-05 16:33:05 +0100evanrelf(3addc196af@2604:bf00:561:2000::f0)
2022-01-05 16:33:05 +0100davl(~davl@207.154.228.18)
2022-01-05 16:33:05 +0100tomsmeding(~tomsmedin@tomsmeding.com)
2022-01-05 16:33:05 +0100m5zs7k(aquares@web10.mydevil.net)
2022-01-05 16:33:05 +0100xstill-(xstill@fimu/xstill)
2022-01-05 16:33:05 +0100lyxia(~lyxia@poisson.chat)
2022-01-05 16:33:05 +0100Athas(athas@sigkill.dk)
2022-01-05 16:33:05 +0100SIben(~SIben@ns3106586.ip-5-135-191.eu)
2022-01-05 16:33:05 +0100gabiruh(~gabiruh@vps19177.publiccloud.com.br)
2022-01-05 16:33:05 +0100ggVGc(~ggVGc@a.lowtech.earth)
2022-01-05 16:33:05 +0100ptrcmd(~ptrcmd@user/ptrcmd)
2022-01-05 16:33:05 +0100bonz060(~quassel@2001:bc8:47a4:a23::1)
2022-01-05 16:33:05 +0100Xe(~cadey@tailscale/xe)
2022-01-05 16:33:05 +0100dpratt__(sid193493@id-193493.helmsley.irccloud.com)
2022-01-05 16:33:05 +0100conjunctive(sid433686@id-433686.helmsley.irccloud.com)
2022-01-05 16:33:05 +0100Adeon(sid418992@id-418992.lymington.irccloud.com)
2022-01-05 16:33:05 +0100rune(sid21167@id-21167.ilkley.irccloud.com)
2022-01-05 16:33:05 +0100grfn(sid449115@id-449115.helmsley.irccloud.com)
2022-01-05 16:33:05 +0100smorgasbord(buggy@user/smorgasbord)
2022-01-05 16:33:05 +0100vito(sid1962@user/vito)
2022-01-05 16:33:05 +0100pierrot(~pi@user/pierrot)
2022-01-05 16:33:05 +0100Jon(jon@dow.land)
2022-01-05 16:33:05 +0100Hobbyboy(Hobbyboy@hobbyboy.co.uk)
2022-01-05 16:33:05 +0100Arathorn(~arathorn@2001:470:69fc:105::1f) (Ping timeout: 252 seconds)
2022-01-05 16:33:05 +0100Topik[m](~topikmatr@2001:470:69fc:105::a082) (Ping timeout: 252 seconds)
2022-01-05 16:33:07 +0100kadoban(~kadoban@user/kadoban) (Max SendQ exceeded)
2022-01-05 16:33:07 +0100ericson2314(~ericson23@2001:470:69fc:105::70c) (Ping timeout: 260 seconds)
2022-01-05 16:33:07 +0100jophish(~jophish@2001:470:69fc:105::670) (Ping timeout: 260 seconds)
2022-01-05 16:33:07 +0100RosarioPulella[m(~rosariopu@2001:470:69fc:105::a57) (Ping timeout: 260 seconds)
2022-01-05 16:33:09 +0100yehoshuapw(~yehoshuap@2001:470:69fc:105::a5f) (Ping timeout: 250 seconds)
2022-01-05 16:33:09 +0100SawyerBergeron[m(~sawyerber@2001:470:69fc:105::3036) (Ping timeout: 250 seconds)
2022-01-05 16:33:10 +0100tripa[m](~tripamatr@2001:470:69fc:105::1:4f7e) (Ping timeout: 250 seconds)
2022-01-05 16:33:10 +0100grabb0id[m](~alangmatr@2001:470:69fc:105::b489) (Ping timeout: 250 seconds)
2022-01-05 16:33:10 +0100enyc(~enyc@user/enyc)
2022-01-05 16:33:15 +0100SridharRatnakuma(~sridmatri@2001:470:69fc:105::1c2) (Ping timeout: 268 seconds)
2022-01-05 16:33:16 +0100Nate[m]1(~m52957mat@2001:470:69fc:105::1:591a) (Ping timeout: 268 seconds)
2022-01-05 16:33:16 +0100wolfshappen(~waff@irc.furworks.de) (Max SendQ exceeded)
2022-01-05 16:33:16 +0100SoF(~skius@user/skius) (Max SendQ exceeded)
2022-01-05 16:33:16 +0100eoiles[m](~eoilesmat@2001:470:69fc:105::1:6164) (Ping timeout: 245 seconds)
2022-01-05 16:33:16 +0100hughjfchen[m](~hughjfche@2001:470:69fc:105::c29d) (Ping timeout: 245 seconds)
2022-01-05 16:33:16 +0100jchia[m](~jchiamatr@2001:470:69fc:105::c50b) (Ping timeout: 245 seconds)
2022-01-05 16:33:16 +0100ManofLetters[m](~manoflett@2001:470:69fc:105::3be) (Ping timeout: 245 seconds)
2022-01-05 16:33:16 +0100ongy[m](~ongymatri@2001:470:69fc:105::5018) (Ping timeout: 245 seconds)
2022-01-05 16:33:17 +0100bitonic(~bitonic@2001:470:69fc:105::1812) (Max SendQ exceeded)
2022-01-05 16:33:22 +0100wolfshappen(~waff@irc.furworks.de)
2022-01-05 16:33:23 +0100reza[m](~rezaphone@2001:470:69fc:105::3eda) (Ping timeout: 250 seconds)
2022-01-05 16:33:23 +0100Heffalump[m](~hsenagmat@2001:470:69fc:105::e11) (Ping timeout: 250 seconds)
2022-01-05 16:33:23 +0100finalti[m](~finaltima@2001:470:69fc:105::d909) (Ping timeout: 250 seconds)
2022-01-05 16:33:23 +0100cdsmith(~cdsmithma@2001:470:69fc:105::284) (Ping timeout: 250 seconds)
2022-01-05 16:33:25 +0100AlexZenon(~alzenon@94.233.240.16) (Ping timeout: 256 seconds)
2022-01-05 16:33:25 +0100InternetManaging(~imjmatrix@2001:470:69fc:105::1:2ea5) (Ping timeout: 240 seconds)
2022-01-05 16:33:25 +0100acowley(~acowley@c-68-83-22-43.hsd1.nj.comcast.net) (Ping timeout: 256 seconds)
2022-01-05 16:33:32 +0100sm1(~sm@plaintextaccounting/sm) (Ping timeout: 240 seconds)
2022-01-05 16:33:32 +0100smichel17[m](~smichel17@2001:470:69fc:105::2d32) (Ping timeout: 240 seconds)
2022-01-05 16:33:32 +0100wildsebastian(~wildsebas@2001:470:69fc:105::1:14b1) (Ping timeout: 240 seconds)
2022-01-05 16:33:34 +0100codygman[m](~codygman@2001:470:69fc:105::b4ba) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100zfnmxt(~zfnmxtzfn@2001:470:69fc:105::2b32) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100kalxd[m](~kalxdmatr@2001:470:69fc:105::1:576e) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100aidy(~aidy@2001:470:69fc:105::c7b4) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100thomasjm[m](~thomasjmm@2001:470:69fc:105::c6d9) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100maerwald[m](~maerwaldm@user/maerwald) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100moats(~oats@user/oats) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100juhp[m](~juhpmatri@2001:470:69fc:105::6e9) (Ping timeout: 260 seconds)
2022-01-05 16:33:34 +0100jesser[m](~jessermat@2001:470:69fc:105::d5ae) (Ping timeout: 260 seconds)
2022-01-05 16:33:35 +0100xddq[m](~xddqmatri@2001:470:69fc:105::bfd8) (Ping timeout: 260 seconds)
2022-01-05 16:33:35 +0100Christoph[m](~hpotsirhc@2001:470:69fc:105::2ff8) (Ping timeout: 250 seconds)
2022-01-05 16:33:35 +0100peddie(~peddie@2001:470:69fc:105::25d) (Ping timeout: 250 seconds)
2022-01-05 16:33:35 +0100denbrahe[m](~denbrahem@2001:470:69fc:105::19c0) (Ping timeout: 250 seconds)
2022-01-05 16:33:36 +0100craige[m](~craigemcw@2001:470:69fc:105::35f1) (Ping timeout: 250 seconds)
2022-01-05 16:33:38 +0100octeep[m](~octeepoct@2001:470:69fc:105::1:3dbf) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100fsckskye[m](~kmatrixth@2001:470:69fc:105::1:3b2f) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100marinelli[m](~marinelli@2001:470:69fc:105::2d8) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100jneira[m](~jneiramat@2001:470:69fc:105::d729) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100maralorn(~maralorn@2001:470:69fc:105::251) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100fgaz(~fgaz@2001:470:69fc:105::842) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100sofviic[m](~sofviicma@2001:470:69fc:105::1:51fd) (Ping timeout: 252 seconds)
2022-01-05 16:33:38 +0100afotgkmnzj7asv3r(~afotgkmnz@2001:470:69fc:105::c24b) (Ping timeout: 252 seconds)
2022-01-05 16:33:39 +0100justIrresolute5(~justache@user/justache)
2022-01-05 16:33:41 +0100Magnus[m](~magthetch@2001:470:69fc:105::d1a7) (Ping timeout: 245 seconds)
2022-01-05 16:33:41 +0100simmsb(~simmsb@2001:470:69fc:105::1:55c3) (Ping timeout: 245 seconds)
2022-01-05 16:33:41 +0100Orbstheorem(~orbstheor@2001:470:69fc:105::a56) (Ping timeout: 245 seconds)
2022-01-05 16:33:41 +0100jkachmar(~jkachmar@2001:470:69fc:105::c72d) (Ping timeout: 245 seconds)
2022-01-05 16:33:45 +0100 <lechner> Hi, how can print a Vector (Text, Text) as lines with a space between the two columns, please? Thanks!
2022-01-05 16:33:49 +0100inkbottle[m](~inkbottle@2001:470:69fc:105::2ff5) (Ping timeout: 250 seconds)
2022-01-05 16:33:49 +0100AlainJourez[m](~sherekahn@2001:470:69fc:105::1:4a71) (Ping timeout: 250 seconds)
2022-01-05 16:33:49 +0100TomasJakl[m](~jaklttchn@2001:470:69fc:105::a42) (Ping timeout: 250 seconds)
2022-01-05 16:33:52 +0100pfurla-matrix(~pedrofurl@2001:470:69fc:105::1:51d7) (Ping timeout: 268 seconds)
2022-01-05 16:33:52 +0100unclechu(~unclechu@2001:470:69fc:105::354) (Ping timeout: 268 seconds)
2022-01-05 16:33:52 +0100cherryblossom[m](~cherryblo@2001:470:69fc:105::b789) (Ping timeout: 268 seconds)
2022-01-05 16:33:52 +0100james[m]123(~jamesnina@2001:470:69fc:105::1:4203) (Ping timeout: 268 seconds)
2022-01-05 16:33:52 +0100Michal[m](~oomiguelm@2001:470:69fc:105::1:5ab0) (Ping timeout: 268 seconds)
2022-01-05 16:34:02 +0100puffnfresh[m](~puffnfres@2001:470:69fc:105::1:22da) (Ping timeout: 260 seconds)
2022-01-05 16:34:02 +0100IgnatInsarov[m](~kindaroma@2001:470:69fc:105::f5d9) (Ping timeout: 260 seconds)
2022-01-05 16:34:02 +0100justosophy[m](~justosoph@2001:470:69fc:105::572f) (Ping timeout: 260 seconds)
2022-01-05 16:34:09 +0100acowley(~acowley@c-68-83-22-43.hsd1.nj.comcast.net)
2022-01-05 16:34:16 +0100litharge(litharge@libera/bot/litharge)
2022-01-05 16:34:33 +0100siers(~ij@user/ij) (Ping timeout: 256 seconds)
2022-01-05 16:34:38 +0100jgeerds_(~jgeerds@55d4ac73.access.ecotel.net)
2022-01-05 16:35:03 +0100SoF(~skius@user/skius)
2022-01-05 16:35:21 +0100rubin55(sid175221@id-175221.hampstead.irccloud.com) (Ping timeout: 245 seconds)
2022-01-05 16:35:41 +0100remedan_(~remedan@octo.cafe) (Ping timeout: 256 seconds)
2022-01-05 16:35:41 +0100rubin55(sid175221@id-175221.hampstead.irccloud.com)
2022-01-05 16:36:25 +0100hook54321(sid149355@user/hook54321) (Ping timeout: 250 seconds)
2022-01-05 16:36:27 +0100eldritch_(~eldritch@user/eldritch/x-9272577)
2022-01-05 16:37:01 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 240 seconds)
2022-01-05 16:37:05 +0100siers(~ij@user/ij)
2022-01-05 16:37:37 +0100remedan(~remedan@octo.cafe)
2022-01-05 16:37:51 +0100AlexZenon(~alzenon@94.233.240.16)
2022-01-05 16:37:57 +0100koolazer(~koo@user/koolazer) (Ping timeout: 256 seconds)
2022-01-05 16:38:10 +0100hook54321(sid149355@user/hook54321)
2022-01-05 16:39:21 +0100acidsys(~LSD@2.lsd.systems) (Excess Flood)
2022-01-05 16:39:39 +0100 <g> There isn't a canned implementation of that. You'll have to write it
2022-01-05 16:39:54 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 16:39:54 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 16:39:54 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 16:40:18 +0100acidsys(~LSD@2.lsd.systems)
2022-01-05 16:40:26 +0100 <geekosaur> there are prettyprinter classes on hackage that might help
2022-01-05 16:40:27 +0100 <jumper149> lechner: Something like: `putStr . unlines . toList . fmap (\ (x,y) -> x ++ " " ++ y)`
2022-01-05 16:42:06 +0100 <merijn> or: forM_ myVec $ \(x, y) -> putStrLn (x ++ " " ++ y)
2022-01-05 16:42:09 +0100 <lechner> jumper149: look great, thanks!
2022-01-05 16:42:13 +0100 <merijn> Which seems much simpler :p
2022-01-05 16:42:38 +0100 <lechner> merijn: yeah, maybe
2022-01-05 16:42:41 +0100 <merijn> I guess forM_ is just for_ now
2022-01-05 16:42:43 +0100 <merijn> :t forM_
2022-01-05 16:42:44 +0100 <lambdabot> (Foldable t, Monad m) => t a -> (a -> m b) -> m ()
2022-01-05 16:42:45 +0100 <merijn> :t for_
2022-01-05 16:42:46 +0100 <lambdabot> (Foldable t, Applicative f) => t a -> (a -> f b) -> f ()
2022-01-05 16:42:48 +0100 <merijn> yeah
2022-01-05 16:43:19 +0100 <merijn> alternately "for_ (V.toList myVec) $ ..." if it's not a foldable vector :p
2022-01-05 16:44:12 +0100 <jumper149> I would prefer: `traverse (\ (x,y) -> putStrLn $ x ++ " " ++ y)`
2022-01-05 16:44:30 +0100 <jumper149> But it doesnt really matter
2022-01-05 16:44:43 +0100 <merijn> jumper149: traverse_ then :p
2022-01-05 16:44:53 +0100 <merijn> but for_ is just flipped traverse :p
2022-01-05 16:45:03 +0100 <merijn> *traverse_
2022-01-05 16:45:06 +0100 <merijn> :t traverse_
2022-01-05 16:45:07 +0100 <jumper149> haha :D
2022-01-05 16:45:07 +0100 <lambdabot> (Foldable t, Applicative f) => (a -> f b) -> t a -> f ()
2022-01-05 16:45:14 +0100 <merijn> jumper149: No, like, literally
2022-01-05 16:45:17 +0100 <merijn> :t for_
2022-01-05 16:45:18 +0100 <lambdabot> (Foldable t, Applicative f) => t a -> (a -> f b) -> f ()
2022-01-05 16:45:49 +0100 <jumper149> I know, I just laughed at you for doing the same mistake missing the '_'
2022-01-05 16:45:55 +0100 <jumper149> :p
2022-01-05 16:46:01 +0100 <merijn> I find for_ works nicely with lambdas
2022-01-05 16:46:15 +0100litharge(litharge@libera/bot/litharge) (*.net *.split)
2022-01-05 16:46:26 +0100alx741(~alx741@157.100.93.160)
2022-01-05 16:46:46 +0100 <merijn> You can make it look like a regular for loop with lambda + do: https://github.com/merijn/Belewitte/blob/55722e6374a7820b0d5925bc98cbd1686d4265a7/benchmark-analys…
2022-01-05 16:47:14 +0100 <merijn> Then you don't have to invent a name. That style doesn't really work with traverse_
2022-01-05 16:47:15 +0100 <jumper149> But with traverse you write something like: putStrLn `traverse` someLines
2022-01-05 16:47:27 +0100 <jumper149> But honestly it really doesnt matter :D
2022-01-05 16:48:14 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 16:49:12 +0100 <jumper149> On another note, my first solution doesn't perform multiple IO actions. That can be a performance improvement.
2022-01-05 16:49:51 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 16:50:24 +0100koolazer(~koo@user/koolazer)
2022-01-05 16:52:41 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2022-01-05 16:52:49 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 16:53:42 +0100ec(~ec@gateway/tor-sasl/ec)
2022-01-05 16:53:44 +0100chele(~chele@user/chele) (Remote host closed the connection)
2022-01-05 16:54:02 +0100 <lechner> thanks, eveyone! Haskell is such an elegant and concise language. after each line i feel like i made the world a better place---with your help
2022-01-05 16:55:58 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 16:56:10 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 16:56:10 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 16:56:10 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 16:56:26 +0100gaff(~gaff@49.207.199.195)
2022-01-05 16:56:38 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2022-01-05 16:57:00 +0100 <gaff> "learn you a haskell for good" book -- is it no longer online?
2022-01-05 16:57:03 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-05 16:57:51 +0100 <geekosaur> site went offline last month, nobody knows why. still available via the wayback machine
2022-01-05 16:57:52 +0100 <jumper149> gaff: I think I read something like that in a reddit post.
2022-01-05 16:57:55 +0100dsrt^(~dsrt@207.5.21.20) (Remote host closed the connection)
2022-01-05 16:58:02 +0100litharge(litharge@libera/bot/litharge)
2022-01-05 16:58:28 +0100 <gaff> i see
2022-01-05 16:59:02 +0100 <gaff> where is the "wayback machine"? is there a link or something?
2022-01-05 16:59:12 +0100 <geekosaur> web.archive.org
2022-01-05 16:59:23 +0100 <lechner> https://archive.org/search.php?query=learn%20you%20a%20haskell
2022-01-05 16:59:35 +0100 <lechner> there you can also find the paper copy
2022-01-05 16:59:45 +0100 <lechner> pdf
2022-01-05 16:59:55 +0100 <geekosaur> https://web.archive.org/web/20211204094509/http://learnyouahaskell.com/
2022-01-05 17:00:13 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 17:00:16 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd) (Quit: leaving)
2022-01-05 17:00:34 +0100 <lechner> we should all donate to brewster kahle
2022-01-05 17:01:51 +0100 <gaff> lechner: thanks much
2022-01-05 17:02:57 +0100 <lechner> gaff: i am a newbie here (but a library commissioner in real life). the honor belongs to evybody else!
2022-01-05 17:03:12 +0100 <lechner> everybody here
2022-01-05 17:04:10 +0100 <gaff> oh i see
2022-01-05 17:04:21 +0100 <gaff> geekosaur: thanks much
2022-01-05 17:04:33 +0100 <lechner> there you go!
2022-01-05 17:04:35 +0100 <gaff> i wonder what happened to that site
2022-01-05 17:04:43 +0100 <[itchyjunk]> hm, so 1: is a partial function too it seems right? what was it a sugar syntax for?
2022-01-05 17:04:46 +0100 <geekosaur> best we can tell, the owner stopped paying for it
2022-01-05 17:05:35 +0100 <geekosaur> someone tried dropping its old IP address into their hosts file and got a page saying the site was offline probably for nonpayment
2022-01-05 17:06:06 +0100 <gaff> i see
2022-01-05 17:06:06 +0100 <geekosaur> [itchyjunk], (1:) is partially applied, yes. (please remember that "partial function" means something else in Haskell)
2022-01-05 17:06:18 +0100 <geekosaur> \x -> 1:x
2022-01-05 17:06:23 +0100 <[itchyjunk]> Oh right, partially applied
2022-01-05 17:06:41 +0100gaff(~gaff@49.207.199.195) ()
2022-01-05 17:06:57 +0100remexre(~remexre@user/remexre) (Ping timeout: 240 seconds)
2022-01-05 17:07:32 +0100ericson2314(~ericson23@2001:470:69fc:105::70c)
2022-01-05 17:07:41 +0100zfnmxt(~zfnmxtzfn@2001:470:69fc:105::2b32)
2022-01-05 17:07:42 +0100maerwald[m](~maerwaldm@2001:470:69fc:105::1ee)
2022-01-05 17:07:43 +0100puffnfresh[m](~puffnfres@2001:470:69fc:105::1:22da)
2022-01-05 17:07:44 +0100xddq[m](~xddqmatri@2001:470:69fc:105::bfd8)
2022-01-05 17:07:46 +0100RosarioPulella[m(~rosariopu@2001:470:69fc:105::a57)
2022-01-05 17:08:40 +0100finalti[m](~finaltima@2001:470:69fc:105::d909)
2022-01-05 17:08:53 +0100rednaZ[m](~r3dnazmat@2001:470:69fc:105::ba70)
2022-01-05 17:09:07 +0100reza[m](~rezaphone@2001:470:69fc:105::3eda)
2022-01-05 17:09:07 +0100Heffalump[m](~hsenagmat@2001:470:69fc:105::e11)
2022-01-05 17:09:08 +0100TomasJakl[m](~jaklttchn@2001:470:69fc:105::a42)
2022-01-05 17:09:09 +0100alexfmpe[m](~alexfmpem@2001:470:69fc:105::38ba)
2022-01-05 17:09:10 +0100carmysilna(~brightly-@2001:470:69fc:105::2190)
2022-01-05 17:09:10 +0100inkbottle[m](~inkbottle@2001:470:69fc:105::2ff5)
2022-01-05 17:11:01 +0100vysn(~vysn@user/vysn) (Ping timeout: 240 seconds)
2022-01-05 17:11:47 +0100 <[itchyjunk]> Is the solution really this simple? https://bpa.st/OHRQ
2022-01-05 17:12:58 +0100 <geekosaur> looks like it does what the problem calls for, yes
2022-01-05 17:13:58 +0100alx741(~alx741@157.100.93.160)
2022-01-05 17:13:59 +0100soft(~soft@2001:470:69fc:105::c75)
2022-01-05 17:15:17 +0100d0ku(~d0ku@178.43.3.56.ipv4.supernova.orange.pl) (Ping timeout: 240 seconds)
2022-01-05 17:16:29 +0100simmsb(~simmsb@2001:470:69fc:105::1:55c3)
2022-01-05 17:17:12 +0100Ollie[m](~ollieocha@2001:470:69fc:105::41a5)
2022-01-05 17:17:40 +0100shapr(~user@2601:7c0:c202:5190:cecd:8e39:7234:9a0d)
2022-01-05 17:17:42 +0100IgnatInsarov[m](~kindaroma@2001:470:69fc:105::f5d9)
2022-01-05 17:18:33 +0100wysteriary[m](~wysteriar@2001:470:69fc:105::a42e)
2022-01-05 17:19:12 +0100Arathorn(~arathorn@2001:470:69fc:105::1f)
2022-01-05 17:19:29 +0100benjamin[m]1234(~benjaminm@2001:470:69fc:105::1:3f2f)
2022-01-05 17:19:29 +0100Artem[m](~artemtype@2001:470:69fc:105::75b)
2022-01-05 17:20:04 +0100amesgen[m](~amesgenm]@2001:470:69fc:105::82b)
2022-01-05 17:20:24 +0100alex[m](~alexchete@2001:470:69fc:105::1:1001)
2022-01-05 17:20:55 +0100schuelermine[m](~schuelerm@user/schuelermine)
2022-01-05 17:20:56 +0100prrxddq[m](~prrxddqma@2001:470:69fc:105::1:4f72)
2022-01-05 17:21:00 +0100SridharRatnakuma(~sridmatri@2001:470:69fc:105::1c2)
2022-01-05 17:21:06 +0100zwro[m](~zwromatri@2001:470:69fc:105::1d4)
2022-01-05 17:21:12 +0100DemiMarieObenour(~alwayscur@2001:470:69fc:105::4886)
2022-01-05 17:21:13 +0100vaibhavsagar[m](~vaibhavsa@2001:470:69fc:105::ffe)
2022-01-05 17:21:14 +0100Deide(~deide@user/deide)
2022-01-05 17:21:31 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 17:21:31 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 17:21:31 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 17:21:36 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd)
2022-01-05 17:21:36 +0100unrooted(~unrooted@2001:470:69fc:105::a4a)
2022-01-05 17:22:27 +0100oak-(~oakuniver@2001:470:69fc:105::fcd)
2022-01-05 17:22:44 +0100wyrd(~wyrd@gateway/tor-sasl/wyrd)
2022-01-05 17:22:45 +0100Topik[m](~topikmatr@2001:470:69fc:105::a082)
2022-01-05 17:22:52 +0100SawyerBergeron[m(~sawyerber@2001:470:69fc:105::3036)
2022-01-05 17:23:25 +0100cheater(~Username@user/cheater) (Ping timeout: 256 seconds)
2022-01-05 17:23:26 +0100yehoshuapw(~yehoshuap@2001:470:69fc:105::a5f)
2022-01-05 17:23:35 +0100moats(~oats@user/oats)
2022-01-05 17:24:04 +0100ormaaj(~ormaaj@user/ormaaj)
2022-01-05 17:24:04 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 17:25:17 +0100tripa[m](~tripamatr@2001:470:69fc:105::1:4f7e)
2022-01-05 17:25:17 +0100remexre(~remexre@user/remexre)
2022-01-05 17:25:32 +0100Las[m](~lasmatrix@2001:470:69fc:105::74e)
2022-01-05 17:25:38 +0100juhp[m](~juhpmatri@2001:470:69fc:105::6e9)
2022-01-05 17:26:59 +0100grabb0id[m](~alangmatr@2001:470:69fc:105::b489)
2022-01-05 17:27:01 +0100cheater(~Username@user/cheater)
2022-01-05 17:27:16 +0100gallup(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 17:27:20 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 17:27:32 +0100ec(~ec@gateway/tor-sasl/ec) (Quit: ec)
2022-01-05 17:27:55 +0100aidy(~aidy@2001:470:69fc:105::c7b4)
2022-01-05 17:28:37 +0100husixu(~husixu@137.132.119.2) (Quit: Leaving)
2022-01-05 17:28:43 +0100fsckskye[m](~kmatrixth@2001:470:69fc:105::1:3b2f)
2022-01-05 17:29:06 +0100gallup(~gallup@192-222-138-215.qc.cable.ebox.net) (Client Quit)
2022-01-05 17:29:16 +0100peddie(~peddie@2001:470:69fc:105::25d)
2022-01-05 17:29:18 +0100denbrahe[m](~denbrahem@2001:470:69fc:105::19c0)
2022-01-05 17:29:20 +0100unclechu(~unclechu@2001:470:69fc:105::354)
2022-01-05 17:29:24 +0100gallup(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 17:29:28 +0100bitonic(~bitonic@2001:470:69fc:105::1812)
2022-01-05 17:29:32 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 17:29:34 +0100slowButPresent(~slowButPr@user/slowbutpresent)
2022-01-05 17:29:37 +0100gallup(~gallup@192-222-138-215.qc.cable.ebox.net) (Client Quit)
2022-01-05 17:30:02 +0100remexre(~remexre@user/remexre) (Ping timeout: 240 seconds)
2022-01-05 17:30:03 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:c365:2459:70e0:4fac) (Quit: WeeChat 2.8)
2022-01-05 17:30:09 +0100cdsmith(~cdsmithma@2001:470:69fc:105::284)
2022-01-05 17:30:12 +0100remexre(~remexre@user/remexre)
2022-01-05 17:30:21 +0100Orbstheorem(~orbstheor@2001:470:69fc:105::a56)
2022-01-05 17:30:23 +0100siraben(~siraben@user/siraben)
2022-01-05 17:30:27 +0100wildsebastian(~wildsebas@2001:470:69fc:105::1:14b1)
2022-01-05 17:30:27 +0100sofviic[m](~sofviicma@2001:470:69fc:105::1:51fd)
2022-01-05 17:30:52 +0100MatrixTravelerbo(~voyagert2@2001:470:69fc:105::22)
2022-01-05 17:31:09 +0100AlainJourez[m](~sherekahn@2001:470:69fc:105::1:4a71)
2022-01-05 17:31:38 +0100Christoph[m](~hpotsirhc@2001:470:69fc:105::2ff8)
2022-01-05 17:31:39 +0100jmcantrell(~jmcantrel@user/jmcantrell)
2022-01-05 17:31:55 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2022-01-05 17:33:17 +0100kadoban(~kadoban@user/kadoban)
2022-01-05 17:33:19 +0100sirlensalot(~sirlensal@ool-44c5f8c9.dyn.optonline.net)
2022-01-05 17:33:24 +0100craige[m](~craigemcw@2001:470:69fc:105::35f1)
2022-01-05 17:34:00 +0100ec(~ec@gateway/tor-sasl/ec)
2022-01-05 17:34:32 +0100fgaz(~fgaz@2001:470:69fc:105::842)
2022-01-05 17:34:33 +0100surgeon[m](~surge9nma@2001:470:69fc:105::f585)
2022-01-05 17:34:49 +0100octeep[m](~octeepoct@2001:470:69fc:105::1:3dbf)
2022-01-05 17:35:22 +0100justosophy[m](~justosoph@2001:470:69fc:105::572f)
2022-01-05 17:37:47 +0100thomasjm[m](~thomasjmm@2001:470:69fc:105::c6d9)
2022-01-05 17:37:52 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 17:37:52 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 17:37:52 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 17:38:20 +0100jkachmar(~jkachmar@2001:470:69fc:105::c72d)
2022-01-05 17:39:33 +0100ManofLetters[m](~manoflett@2001:470:69fc:105::3be)
2022-01-05 17:39:40 +0100Tisoxin(~ikosit@user/ikosit)
2022-01-05 17:40:04 +0100deadmarshal(~deadmarsh@95.38.116.69)
2022-01-05 17:41:00 +0100 <lechner> Hi, how can i simplify that, please? putStrLn (intercalate " " [Text.unpack name, show errors, show warnings, show info, show pedantic, show experimental, show overrides])
2022-01-05 17:41:18 +0100alx741(~alx741@157.100.93.160)
2022-01-05 17:41:31 +0100 <lechner> the others are numbers Int64
2022-01-05 17:42:29 +0100the_last_immorta(~thelastim@2001:470:69fc:105::1:4d57)
2022-01-05 17:42:35 +0100bb010g(~bb010g@2001:470:69fc:105::9a5)
2022-01-05 17:42:41 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 17:42:56 +0100 <Cale> I guess you could use unwords rather than intercalate " ", they mean the same thing
2022-01-05 17:43:02 +0100nomeata(~nomeata@2001:470:69fc:105::1:5ed4)
2022-01-05 17:43:07 +0100fcortesi(~fcortesi@2001:470:69fc:105::f3a9)
2022-01-05 17:44:04 +0100quantum(~quantum@user/quantum/x-8556232)
2022-01-05 17:44:23 +0100 <geekosaur> map show [errors, warnings, info, pedantic, experimental, overrides] ? (if they're all the same type. You said Int64?)
2022-01-05 17:44:29 +0100jinsun_(~jinsun@user/jinsun)
2022-01-05 17:44:37 +0100 <lechner> yes
2022-01-05 17:44:41 +0100boxscape(~boxscape@user/boxscape)
2022-01-05 17:44:55 +0100 <lechner> i tried a mix of concat and map
2022-01-05 17:44:59 +0100 <lechner> but got errors
2022-01-05 17:45:05 +0100Michal[m](~oomiguelm@2001:470:69fc:105::1:5ab0)
2022-01-05 17:45:22 +0100 <geekosaur> @where paste
2022-01-05 17:45:22 +0100 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2022-01-05 17:45:58 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 17:46:51 +0100james[m]123(~jamesnina@2001:470:69fc:105::1:4203)
2022-01-05 17:47:47 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2022-01-05 17:47:59 +0100eoiles[m](~eoilesmat@2001:470:69fc:105::1:6164)
2022-01-05 17:48:52 +0100marinelli[m](~marinelli@2001:470:69fc:105::2d8)
2022-01-05 17:49:37 +0100maralorn(~maralorn@2001:470:69fc:105::251)
2022-01-05 17:49:44 +0100jchia[m](~jchiamatr@2001:470:69fc:105::c50b)
2022-01-05 17:49:59 +0100kalxd[m](~kalxdmatr@2001:470:69fc:105::1:576e)
2022-01-05 17:50:00 +0100InternetManaging(~imjmatrix@2001:470:69fc:105::1:2ea5)
2022-01-05 17:50:12 +0100ongy[m](~ongymatri@2001:470:69fc:105::5018)
2022-01-05 17:50:35 +0100sm1(~sm@plaintextaccounting/sm)
2022-01-05 17:50:46 +0100smichel17[m](~smichel17@2001:470:69fc:105::2d32)
2022-01-05 17:53:02 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4)
2022-01-05 17:54:14 +0100 <lechner> sorry to keey you waiting https://paste.tomsmeding.com/CKb0yrsa
2022-01-05 17:54:20 +0100Magnus[m](~magthetch@2001:470:69fc:105::d1a7)
2022-01-05 17:54:40 +0100 <lechner> i should have formatted
2022-01-05 17:54:51 +0100jneira[m](~jneiramat@2001:470:69fc:105::d729)
2022-01-05 17:55:59 +0100 <lechner> what's everyone's favorite formatter, please?
2022-01-05 17:56:08 +0100xeroxlooks at his spacebar
2022-01-05 17:56:32 +0100 <geekosaur> sorry, I meant the "mix of concat and map" and the resulting errors
2022-01-05 17:56:37 +0100cherryblossom[m](~cherryblo@2001:470:69fc:105::b789)
2022-01-05 17:56:45 +0100geekosaurformats by hand, doesn't like existing formatters
2022-01-05 17:56:46 +0100 <monochrom> The tab key for me, but it's in emacs and it inserts spaces.
2022-01-05 17:56:53 +0100afotgkmnzj7asv3r(~afotgkmnz@2001:470:69fc:105::c24b)
2022-01-05 17:57:29 +0100pfurla-matrix(~pedrofurl@2001:470:69fc:105::1:51d7)
2022-01-05 17:58:05 +0100Nate[m]1(~m52957mat@2001:470:69fc:105::1:591a)
2022-01-05 17:58:26 +0100 <geekosaur> and I expect any formatter would break on that qq'd SQL statement
2022-01-05 17:59:56 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-01-05 18:00:17 +0100 <monochrom> "computer" used to refer to people whose job is to compute. Now it refers to hardware that does the job.
2022-01-05 18:00:34 +0100ubert(~Thunderbi@2a02:8109:9880:303c:2a00:eeaf:f8c:1b54) (Remote host closed the connection)
2022-01-05 18:00:37 +0100 <monochrom> "typesetter" and "formatter" went down the same road.
2022-01-05 18:00:58 +0100 <monochrom> Perhaps it's high time "programmer" also went that way.
2022-01-05 18:01:15 +0100 <Rembane> I prefer to be an amateurgrammer.
2022-01-05 18:01:34 +0100 <monochrom> "What's your favourite indenter?" "Oh, I just let my programmer do it."
2022-01-05 18:04:02 +0100alx741(~alx741@157.100.93.160)
2022-01-05 18:04:20 +0100Jing(~hedgehog@2604:a840:3::103c) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-01-05 18:05:05 +0100aveltras[m](~aveltrasm@2001:470:69fc:105::3ef9)
2022-01-05 18:05:42 +0100mbuf(~Shakthi@122.174.247.3) (Quit: Leaving)
2022-01-05 18:08:18 +0100 <lechner> for sql, hasql-th is nice for beginners and easier than pg-simple. i'd ultimetaly like to upgrade to opaleye or perhaps even rel8, although maybe not for that query
2022-01-05 18:08:40 +0100hughjfchen[m](~hughjfche@2001:470:69fc:105::c29d)
2022-01-05 18:09:24 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 18:09:50 +0100 <EvanR> monochrom, how about "politician"
2022-01-05 18:10:01 +0100 <EvanR> oops off topic
2022-01-05 18:10:44 +0100cosimone(~user@93-47-228-11.ip115.fastwebnet.it) (Read error: Connection reset by peer)
2022-01-05 18:11:16 +0100econo(uid147250@user/econo)
2022-01-05 18:12:48 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 18:13:50 +0100 <lechner> the first line doesn't compile, followed by the error https://paste.tomsmeding.com/TQtSLY34
2022-01-05 18:14:22 +0100 <lechner> i loved editing that line, which read originally: the first line does not work...
2022-01-05 18:15:24 +0100 <c_wraith> did you want a ++ in there or something?
2022-01-05 18:15:26 +0100coot(~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot)
2022-01-05 18:15:28 +0100 <geekosaur> you are saying (concat x xs) when it's (concat xs)
2022-01-05 18:15:42 +0100 <lechner> is see
2022-01-05 18:15:51 +0100 <lechner> i see
2022-01-05 18:15:55 +0100 <geekosaur> you might have wanted (:) in fact
2022-01-05 18:15:57 +0100 <lechner> or maybe i dont
2022-01-05 18:16:06 +0100 <lechner> yes!
2022-01-05 18:18:42 +0100 <lechner> geekosaur: thanks so much! and sorry about being so poor a haskeller. i make up for it with my enthusiasm
2022-01-05 18:22:50 +0100jophish(~jophish@2001:470:69fc:105::670)
2022-01-05 18:22:50 +0100psydroid(~psydroid@user/psydroid)
2022-01-05 18:22:55 +0100ircs(~ircs@2-111-85-72-cable.dk.customer.tdc.net)
2022-01-05 18:22:58 +0100jesser[m](~jessermat@2001:470:69fc:105::d5ae)
2022-01-05 18:23:29 +0100rond_42(~rond_@2a01:115f:943:5e00:d97e:b793:ae8f:1ddd) (Quit: Client closed)
2022-01-05 18:24:25 +0100coolnickname(uid531864@user/coolnickname) (Quit: Connection closed for inactivity)
2022-01-05 18:25:35 +0100codygman[m](~codygman@2001:470:69fc:105::b4ba)
2022-01-05 18:25:55 +0100xbreu(~xbreu@2001:470:69fc:105::1:5061)
2022-01-05 18:25:57 +0100 <lechner> with manual indenting a favorite here, is there a manual of style?
2022-01-05 18:26:53 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 256 seconds)
2022-01-05 18:27:22 +0100coolnickname(uid531864@user/coolnickname)
2022-01-05 18:27:57 +0100 <lechner> also, is there a consensus as to when $ is acceptable?
2022-01-05 18:29:39 +0100 <lechner> are -> and $ good positions for line breaks?
2022-01-05 18:30:07 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20)
2022-01-05 18:30:08 +0100 <[itchyjunk]> This is the only way I could think of doing this. It does seem like it works. :: https://bpa.st/BDVA
2022-01-05 18:30:26 +0100alx741(~alx741@157.100.93.160)
2022-01-05 18:30:29 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-01-05 18:30:58 +0100FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-01-05 18:31:18 +0100 <ProfSimm> Could we reduce Haskell to just s-expr
2022-01-05 18:32:08 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20) (Remote host closed the connection)
2022-01-05 18:32:11 +0100 <c_wraith> [itchyjunk]: seems a bit odd to not just use the length function. But it's probably homewhere where you can't do that, in which case... that looks absolutely fine.
2022-01-05 18:32:24 +0100 <geekosaur> s-expr is just a way to represent an AST. Haskell can be represented by an AST. therefore, yes
2022-01-05 18:32:36 +0100 <[itchyjunk]> c_wraith, this is random problem set i googled for :x. i don't know a lot of inbuilt functions yet
2022-01-05 18:32:51 +0100 <c_wraith> > length "the"
2022-01-05 18:32:53 +0100 <lambdabot> 3
2022-01-05 18:32:58 +0100 <geekosaur> whether it's useful is another question
2022-01-05 18:32:58 +0100 <[itchyjunk]> oh..
2022-01-05 18:33:00 +0100 <ProfSimm> geekosaur: it's a very restricted way of presenting an AST.
2022-01-05 18:33:19 +0100 <[itchyjunk]> I wonder how length counts it
2022-01-05 18:33:31 +0100 <[itchyjunk]> i was stucking thinking about a counter loop for a bit
2022-01-05 18:33:43 +0100 <[itchyjunk]> but then i realized i could map each char to 1's and add those
2022-01-05 18:33:56 +0100 <c_wraith> both ideas work fine.
2022-01-05 18:34:01 +0100 <geekosaur> list/Foldable, recursion
2022-01-05 18:34:01 +0100 <[itchyjunk]> hmm
2022-01-05 18:35:58 +0100 <c_wraith> here's an interesting thing for you to think about: that last line could be lengths = map strLength
2022-01-05 18:36:43 +0100 <[itchyjunk]> hmm without any parameter?
2022-01-05 18:36:55 +0100werneta(~werneta@137.79.226.240)
2022-01-05 18:36:57 +0100 <c_wraith> without naming the parameter, anyway.
2022-01-05 18:37:07 +0100 <c_wraith> the important idea is that functions are values
2022-01-05 18:37:25 +0100 <geekosaur> if you have foo x = bar x, you can drop the x from both sides of the =
2022-01-05 18:37:37 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 18:37:45 +0100 <[itchyjunk]> :O
2022-01-05 18:37:54 +0100 <c_wraith> map strLength is a function of type [String] -> [Int]
2022-01-05 18:37:55 +0100 <geekosaur> (only if it's exactly that form)
2022-01-05 18:38:21 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 18:38:26 +0100 <[itchyjunk]> ahh
2022-01-05 18:38:33 +0100cosimone(~user@2001:b07:ae5:db26:c24a:d20:4d91:1e20)
2022-01-05 18:38:51 +0100 <[itchyjunk]> lengths just become a sugar notation for map strLength, a shorthand in that sense
2022-01-05 18:38:54 +0100 <[itchyjunk]> makes sense!
2022-01-05 18:38:57 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-01-05 18:39:18 +0100 <c_wraith> yep. being able to think about functions like that helps a lot for working in Haskell.
2022-01-05 18:39:18 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 18:39:43 +0100 <c_wraith> You don't always have to write code that way, but you should be comfortable reading it
2022-01-05 18:39:52 +0100 <[itchyjunk]> Right!
2022-01-05 18:39:55 +0100alx741(~alx741@157.100.93.160)
2022-01-05 18:44:34 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 18:46:49 +0100werneta(~werneta@137.79.226.240) (Quit: leaving)
2022-01-05 18:47:02 +0100werneta(~werneta@137.79.226.240)
2022-01-05 18:59:48 +0100 <monochrom> lechner: I don't follow it strictly, but most of it is reasonable most of the time: https://github.com/tibbe/haskell-style-guide/blob/master/haskell-style.md
2022-01-05 19:00:22 +0100ec(~ec@gateway/tor-sasl/ec) (Quit: ec)
2022-01-05 19:00:45 +0100ec(~ec@gateway/tor-sasl/ec)
2022-01-05 19:01:25 +0100 <lechner> monochrom: thanks!
2022-01-05 19:02:31 +0100alx741(~alx741@157.100.93.160)
2022-01-05 19:02:33 +0100 <lechner> Hi, i got an error building hlint from hackage with ghc 8.10.7 http://paste.debian.net/1226024/
2022-01-05 19:03:14 +0100 <lechner> The failure occurred during the
2022-01-05 19:03:15 +0100 <lechner> final install step
2022-01-05 19:03:21 +0100 <lechner> is that a loca issue?
2022-01-05 19:03:28 +0100 <lechner> local?
2022-01-05 19:04:03 +0100 <monochrom> "Installing library in ..." doesn't sound like failure.
2022-01-05 19:04:42 +0100 <monochrom> Oh, "copyFile: resource exhausted (No space left on device)"?
2022-01-05 19:04:53 +0100 <lechner> whoops
2022-01-05 19:06:06 +0100coot(~coot@89-64-85-93.dynamic.chello.pl)
2022-01-05 19:07:27 +0100 <lechner> sorry, a loca ghc build i had forgotten about took up 8G
2022-01-05 19:07:37 +0100 <lechner> plus, i can't type
2022-01-05 19:08:41 +0100 <lechner> on that note, is there a good strategy for cleaning up CABAL-DIR, other than 'rm -rf'?
2022-01-05 19:09:45 +0100xb0o2(~xb0o2@user/xb0o2) (Quit: Client closed)
2022-01-05 19:09:51 +0100 <monochrom> Perhaps my https://github.com/treblacy/cabalgc helps.
2022-01-05 19:10:02 +0100xb0o2(~xb0o2@user/xb0o2)
2022-01-05 19:10:03 +0100Vajb(~Vajb@2001:999:50:e6be:1e98:9376:d93e:4506) (Read error: Connection reset by peer)
2022-01-05 19:10:14 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-01-05 19:11:48 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 19:12:07 +0100 <lechner> monochrom: thanks! is there a reason it's not on Hackage?
2022-01-05 19:13:25 +0100 <monochrom> I am a poor maintainer.
2022-01-05 19:13:28 +0100 <APic> Ok
2022-01-05 19:13:32 +0100 <APic> s/ //
2022-01-05 19:15:22 +0100 <lechner> monochrom: i'd upload it to Debian but the program is so development-oriented, it may belong onto Hackage even if there is a danger it might remove itself
2022-01-05 19:18:13 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk) (Remote host closed the connection)
2022-01-05 19:19:25 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-05 19:19:27 +0100 <lechner> monochrom: thanks for the style link. that's where i came across the strictness thing i mentioned here in an aeson context a few months ago. is that consensus? https://github.com/tibbe/haskell-style-guide/blob/master/haskell-style.md#data-types
2022-01-05 19:20:07 +0100 <monochrom> This one no. One of the few exceptions.
2022-01-05 19:20:17 +0100 <lechner> ok, thanks!
2022-01-05 19:22:21 +0100 <c_wraith> he was one of the pioneers in that cargo cult. :P
2022-01-05 19:23:40 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2022-01-05 19:23:41 +0100 <monochrom> Data type strictness is a case of two echo chambers refusing to acknowledge that the other one exists.
2022-01-05 19:24:08 +0100 <c_wraith> data type strictness is great - when it doesn't break code.
2022-01-05 19:24:21 +0100 <c_wraith> He broke a library I was using once by making it unnecessarily strict.
2022-01-05 19:24:24 +0100 <monochrom> One echo chamber always does number crunching and their data types are always records of numbers. Of course the number fields should be strict, even unboxed.
2022-01-05 19:25:05 +0100 <monochrom> The other echo chamber always does huge but non-strict data structures. Of course the recursive fields should be non-strict.
2022-01-05 19:25:35 +0100 <lechner> i think i am on the non-strict side, but not sure
2022-01-05 19:25:45 +0100 <monochrom> Overall, of course the whole point of echo chamber confort zone is to deny that someone out there may be doing something else.
2022-01-05 19:26:37 +0100werneta(~werneta@137.79.226.240) (Ping timeout: 240 seconds)
2022-01-05 19:28:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 19:29:27 +0100 <c_wraith> I get a lot of value from even making numeric fields non-strict. It comes in really handy for a bunch of cases to be able to use mfix to evaluate things.
2022-01-05 19:30:03 +0100alx741(~alx741@157.100.93.160)
2022-01-05 19:30:23 +0100rond_(~rond_@2a01:115f:943:5e00:b66:5768:df7:4b57)
2022-01-05 19:30:26 +0100 <lechner> yay! brittany left my hasql qq intact
2022-01-05 19:30:44 +0100 <c_wraith> given that whitespace inside a qq is significant, it had better. :P
2022-01-05 19:31:03 +0100 <c_wraith> well. may be significant, at least. depends on the particular qq
2022-01-05 19:31:59 +0100 <lechner> someone speculated earlier that non-human formatters might change it
2022-01-05 19:32:18 +0100ProfSimm(~ProfSimm@87.227.196.109) (Remote host closed the connection)
2022-01-05 19:32:21 +0100 <geekosaur> that was me. some are known to at least break on quasiquoters
2022-01-05 19:32:35 +0100 <geekosaur> (not necessarily reformat, just refuse to continue)
2022-01-05 19:32:36 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-01-05 19:33:03 +0100jgeerds_(~jgeerds@55d4ac73.access.ecotel.net) (Ping timeout: 256 seconds)
2022-01-05 19:33:39 +0100pretty_dumm_guypretty_dumm_guy_
2022-01-05 19:33:40 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 19:34:02 +0100 <lechner> i don't blame them. qq used to scare me too, but i love them with hasql
2022-01-05 19:34:08 +0100pretty_dumm_guy_pdg_afk
2022-01-05 19:37:19 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-01-05 19:38:09 +0100pdg_afkpretty_dumm_guy
2022-01-05 19:41:11 +0100CiaoSen(~Jura@p200300c957347b002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-01-05 19:44:31 +0100caubert_(~caubert@136.244.111.235) (Quit: WeeChat 3.3)
2022-01-05 19:44:46 +0100caubert(~caubert@136.244.111.235)
2022-01-05 19:48:03 +0100o-90(~o-90@139.60.178.30)
2022-01-05 19:48:45 +0100 <lechner> Hi, is brittany's style silly? https://yairchu.github.io/posts/silly-haskell-formatting
2022-01-05 19:49:04 +0100o-90(~o-90@139.60.178.30) ()
2022-01-05 19:50:03 +0100xlei(~akans@pool-68-129-84-118.nycmny.fios.verizon.net) (Ping timeout: 256 seconds)
2022-01-05 19:50:43 +0100gallup(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 19:50:58 +0100gallupotherouestbillie
2022-01-05 19:51:11 +0100otherouestbillie(~gallup@192-222-138-215.qc.cable.ebox.net) (Client Quit)
2022-01-05 19:51:13 +0100xlei(~akans@pool-68-129-84-118.nycmny.fios.verizon.net)
2022-01-05 19:51:40 +0100alx741(~alx741@157.100.93.160)
2022-01-05 19:51:49 +0100 <lyxia> do you think people would make it if they thought it were silly
2022-01-05 19:52:09 +0100eastbillie(~gallup@192-222-138-215.qc.cable.ebox.net)
2022-01-05 19:52:47 +0100 <lechner> no. in fact i like it, but i am new
2022-01-05 19:54:07 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2022-01-05 19:54:29 +0100pottsy(~pottsy@129.227.183.244)
2022-01-05 19:55:33 +0100 <lechner> facing broad disapproval, i am looking for the lesser evil among hindent, hfmt, ormolu and brittany (and perhaps others) as seen by the people
2022-01-05 19:56:13 +0100o-90(~o-90@gateway/tor-sasl/o-90)
2022-01-05 19:56:24 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 19:57:43 +0100bsimalikes ormolu
2022-01-05 19:57:59 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk)
2022-01-05 20:00:57 +0100o-90(~o-90@gateway/tor-sasl/o-90) (Quit: Leaving)
2022-01-05 20:01:13 +0100vicfred(~vicfred@user/vicfred)
2022-01-05 20:01:17 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 20:03:16 +0100 <polyphem> lechner: here is a strawpoll https://strawpoll.de/b823715 , now everybody in here can vote
2022-01-05 20:03:27 +0100hammock(~Hammock@2600:1700:19a1:3330::588)
2022-01-05 20:04:09 +0100 <geekosaur> oughtta put it on reddit and twitter too given that the article says they differed about formatting
2022-01-05 20:04:17 +0100burnsidesLlama(~burnsides@dhcp168-021.wadham.ox.ac.uk) (Ping timeout: 240 seconds)
2022-01-05 20:04:19 +0100vicfred_(~vicfred@user/vicfred)
2022-01-05 20:04:32 +0100 <lechner> polyphem: thanks! i was just about to post one from pollcode
2022-01-05 20:05:00 +0100 <lechner> polyphem: stylish-haskell may be missing
2022-01-05 20:05:22 +0100 <lechner> also, it is in german
2022-01-05 20:05:24 +0100rond_(~rond_@2a01:115f:943:5e00:b66:5768:df7:4b57) (Quit: Client closed)
2022-01-05 20:05:42 +0100 <lechner> or maybe it can tell that i speak german
2022-01-05 20:05:56 +0100 <geekosaur> it's in German here too
2022-01-05 20:06:01 +0100 <geekosaur> well, half in german
2022-01-05 20:06:13 +0100 <lechner> how about this one? https://vote.pollcode.com/95187937
2022-01-05 20:06:19 +0100 <geekosaur> \I had to apply the translator to make sure I was pressing the right button, highlighting notwithstanding
2022-01-05 20:06:57 +0100vicfred(~vicfred@user/vicfred) (Ping timeout: 240 seconds)
2022-01-05 20:07:04 +0100hammock(~Hammock@2600:1700:19a1:3330::588) (Client Quit)
2022-01-05 20:07:12 +0100 <polyphem> yeah, dont know how to edit possible answers now, after its live, and yeah it defaulted to german
2022-01-05 20:07:41 +0100 <Clint> you also may end up accidentally conflating style with practical concerns like how badly it chokes on CPP directives and such
2022-01-05 20:09:07 +0100incertia(~incertia@24.42.241.219) (Quit: ZNC 1.7.5 - https://znc.in)
2022-01-05 20:10:05 +0100 <lechner> this one is much prettier https://www.polltab.com/4Q-JMh73xw
2022-01-05 20:10:33 +0100 <geekosaur> so now we have to vote in 3 places? :þ
2022-01-05 20:10:46 +0100incertia(~incertia@24.42.241.219)
2022-01-05 20:11:06 +0100 <polyphem> last one has captchas , duh
2022-01-05 20:12:37 +0100Akiva(~Akiva@user/Akiva)
2022-01-05 20:12:48 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Excess Flood)
2022-01-05 20:13:04 +0100 <polyphem> its ironic however, how haskellers voting one different source formatters need to explore the problem space also for the voting tools ....
2022-01-05 20:13:27 +0100 <polyphem> s/one/on/
2022-01-05 20:13:44 +0100 <Cale> My favourite source formatter is none
2022-01-05 20:13:52 +0100 <geekosaur> which is most strongly typed? :þ
2022-01-05 20:14:12 +0100alx741(~alx741@157.100.93.160)
2022-01-05 20:14:50 +0100 <lechner> more seriously, i am not sure the last one offers interim results before the end of february!
2022-01-05 20:15:34 +0100 <polyphem> lechner: says live votes , and flashes red dot
2022-01-05 20:16:12 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-01-05 20:16:46 +0100 <Cale> I also greatly prefer having arrows at the start of the lines in type signatures. Putting them at the end is hard to read.
2022-01-05 20:17:18 +0100jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 276 seconds)
2022-01-05 20:18:04 +0100 <lechner> i just vote on the last one, as one of three
2022-01-05 20:18:23 +0100 <yushyin> but ... but ormolu!
2022-01-05 20:18:56 +0100jpds(~jpds@gateway/tor-sasl/jpds)
2022-01-05 20:18:56 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 20:18:59 +0100 <Cale> Also, all of the implementations of sortByM in this blog post are obnoxiously written. Use do-notation when appropriate.
2022-01-05 20:21:13 +0100deadmarshal(~deadmarsh@95.38.116.69) (Ping timeout: 256 seconds)
2022-01-05 20:21:44 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 20:21:44 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 20:21:44 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 20:21:50 +0100emf(~emf@2620:10d:c090:400::5:c06d)
2022-01-05 20:22:23 +0100jgeerds_(~jgeerds@55d4ac73.access.ecotel.net)
2022-01-05 20:22:55 +0100jgeerds_(~jgeerds@55d4ac73.access.ecotel.net) (Remote host closed the connection)
2022-01-05 20:27:42 +0100ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds)
2022-01-05 20:27:57 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 20:30:07 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-05 20:31:49 +0100machinedgod(~machinedg@24.105.81.50) (Remote host closed the connection)
2022-01-05 20:32:17 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 240 seconds)
2022-01-05 20:32:30 +0100werneta(~werneta@137.79.233.19)
2022-01-05 20:34:09 +0100ircs(~ircs@2-111-85-72-cable.dk.customer.tdc.net) (Excess Flood)
2022-01-05 20:35:08 +0100alx741(~alx741@157.100.93.160)
2022-01-05 20:36:49 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 20:36:50 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 20:36:50 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 20:37:43 +0100machinedgod(~machinedg@24.105.81.50)
2022-01-05 20:38:27 +0100Pickchea(~private@user/pickchea)
2022-01-05 20:39:32 +0100 <lechner> Hi, someone once told me to put qualified imports below explicit ones (and use no others), What about this pattern? import qualified Data.Text as Text; import Data.Text (Text(..)) ? Thanks!
2022-01-05 20:39:32 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 20:39:43 +0100 <Cale> Who cares
2022-01-05 20:39:51 +0100werneta(~werneta@137.79.233.19) (Quit: leaving)
2022-01-05 20:40:04 +0100werneta(~werneta@137.79.233.19)
2022-01-05 20:40:05 +0100 <Cale> It really doesn't matter whether qualified imports come first or what
2022-01-05 20:40:46 +0100 <Cale> The order in general doesn't matter, but it's nice to sort them just for the sake of being able to navigate through them and tell whether you have something in particular imported
2022-01-05 20:40:59 +0100 <lechner> okay, i just put them all together. brittany will sort them
2022-01-05 20:41:45 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 20:42:56 +0100Tuplanolla(~Tuplanoll@91-159-69-90.elisa-laajakaista.fi)
2022-01-05 20:44:03 +0100 <geekosaur> I'd say what's more important is to do it consistently across a project
2022-01-05 20:45:44 +0100 <Cale> I also don't think I care very much about consistency between modules, so long as in each file it's not a jumbled mess and it's not formatted in some obnoxious way that's hard to edit.
2022-01-05 20:46:17 +0100nhatanh02(~satori@123.24.172.30) (Ping timeout: 256 seconds)
2022-01-05 20:46:41 +0100cryptomonad(~cryptomon@194.191.225.149)
2022-01-05 20:47:37 +0100 <tomsmeding> Cale: would you count this as obnoxious? https://paste.tomsmeding.com/bpwrBBcP
2022-01-05 20:47:58 +0100 <Cale> haha, yes
2022-01-05 20:48:04 +0100 <Cale> because of the spaces, lol
2022-01-05 20:48:15 +0100 <tomsmeding> that's for making room for 'qualified'
2022-01-05 20:48:20 +0100 <tomsmeding> this is hfmt's default behaviour
2022-01-05 20:50:13 +0100 <tomsmeding> Cale: watch what happens when you make the module name longer https://paste.tomsmeding.com/q9EV7wTH
2022-01-05 20:50:27 +0100 <Cale> glorious
2022-01-05 20:50:55 +0100 <tomsmeding> luckily I'm not the only one disliking this style
2022-01-05 20:51:24 +0100 <Cale> I have never seen an automatic Haskell source formatter that I liked
2022-01-05 20:51:43 +0100 <Cale> They all ultimately do something super obnoxious somewhere
2022-01-05 20:52:06 +0100 <EvanR> they should get it over with, double down, and just do obnoxious things everywhere
2022-01-05 20:52:14 +0100 <EvanR> the something awful haskell formatter
2022-01-05 20:52:17 +0100werneta(~werneta@137.79.233.19) (Ping timeout: 240 seconds)
2022-01-05 20:52:28 +0100 <tomsmeding> like, if we all scream equally loudly, at least we're agreeing on that?
2022-01-05 20:52:41 +0100 <geekosaur> some claim that's ormolu :þ
2022-01-05 20:52:56 +0100 <geekosaur> de gustibus…
2022-01-05 20:53:46 +0100coot(~coot@89-64-85-93.dynamic.chello.pl) (Quit: coot)
2022-01-05 20:54:26 +0100werneta(~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net)
2022-01-05 20:55:35 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 20:55:35 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 20:55:35 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 20:56:08 +0100coot(~coot@2a02:a310:e03f:8500:5cc8:47c:8ec0:b827)
2022-01-05 20:57:40 +0100alx741(~alx741@157.100.93.160)
2022-01-05 21:00:16 +0100 <tomsmeding> if only some claim it, then apparently it isn't so :p
2022-01-05 21:00:45 +0100 <geekosaur> someone must disagree since it's used
2022-01-05 21:01:45 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 21:03:54 +0100vicfred_(~vicfred@user/vicfred) (Quit: Leaving)
2022-01-05 21:05:25 +0100juhp(~juhp@128.106.188.82) (Ping timeout: 256 seconds)
2022-01-05 21:08:21 +0100juhp(~juhp@128.106.188.82)
2022-01-05 21:08:37 +0100tomku(~tomku@user/tomku) (Ping timeout: 240 seconds)
2022-01-05 21:13:00 +0100 <monochrom> I use emacs haskell-mode's C-c C-, to sort and format imports. It does put extra spaces when other import lines have "qualified". I don't mind either way. Some thing is lined up and I'm happy.
2022-01-05 21:13:32 +0100vysn(~vysn@user/vysn)
2022-01-05 21:13:34 +0100 <monochrom> In the long run, GHC has a new extension for "import X qualified" to help.
2022-01-05 21:14:30 +0100 <geekosaur> if that's helping
2022-01-05 21:14:39 +0100 <polyphem> i think 80% a good job formatting is worth somthing , especially if you consider consistent formating of all files in a project
2022-01-05 21:15:03 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 21:17:48 +0100rond_(~rond_@2a01:115f:943:5e00:b66:5768:df7:4b57)
2022-01-05 21:19:25 +0100lavaman(~lavaman@98.38.249.169)
2022-01-05 21:20:11 +0100alx741(~alx741@157.100.93.160)
2022-01-05 21:23:24 +0100 <EvanR> qualified import X
2022-01-05 21:23:37 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 240 seconds)
2022-01-05 21:23:40 +0100 <EvanR> very lined up
2022-01-05 21:23:41 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 21:23:42 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 21:23:42 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 21:23:57 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 21:23:58 +0100tomku(~tomku@user/tomku)
2022-01-05 21:25:15 +0100ProfSimm(~ProfSimm@87.227.196.109) (Ping timeout: 256 seconds)
2022-01-05 21:26:31 +0100 <tomsmeding> the only elements of an import line that can be confused are the module name and the as-alias; hence as long as we require that the module name comes before the as-alias, any ordering is unambiguous
2022-01-05 21:26:48 +0100 <tomsmeding> as (empty) qualified Data.Text Text import
2022-01-05 21:27:24 +0100 <monochrom> import M which is the local alias for Data.Map
2022-01-05 21:27:29 +0100 <monochrom> (Sorry for the COBOL haha)
2022-01-05 21:27:36 +0100ProfSimm(~ProfSimm@87.227.196.109)
2022-01-05 21:28:13 +0100tomsmedingwas briefly confused what you were referring to when writing "COBOL", but then realised that's probably the actual syntax in that language
2022-01-05 21:28:29 +0100tomsmedingthinks of AppleScript
2022-01-05 21:29:43 +0100 <monochrom> Oh, I just like to pick on COBOL's "it reads like English". Plus, IIRC, "multiple x by y into z" is actual COBOL (except I use lower case here to be less annoying).
2022-01-05 21:30:29 +0100xff0x(~xff0x@port-92-195-123-135.dynamic.as20676.net) (Ping timeout: 256 seconds)
2022-01-05 21:31:11 +0100Megant(megant@user/megant) (Ping timeout: 245 seconds)
2022-01-05 21:32:45 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 21:33:04 +0100Megant(megant@user/megant)
2022-01-05 21:33:09 +0100xff0x(~xff0x@2001:1a81:53e7:b00:f827:c356:f4f8:aa66)
2022-01-05 21:36:01 +0100kuribas(~user@ptr-25vy0i91z2t2xltfc74.18120a2.ip6.access.telenet.be) (Quit: ERC (IRC client for Emacs 26.3))
2022-01-05 21:38:42 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 21:38:42 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 21:38:43 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 21:38:43 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 21:41:15 +0100deadmarshal(~deadmarsh@95.38.116.69)
2022-01-05 21:41:30 +0100 <tomsmeding> I'm really not a fan of languages that try to be readable like english (applescript, as mentioned, is another offender) -- it invariably makes writing harder and forces weird formulations in places
2022-01-05 21:41:48 +0100alx741(~alx741@157.100.93.160)
2022-01-05 21:42:08 +0100 <tomsmeding> and I feel like it doesn't help; `z := x * y` might need explanation of the := symbol, but is afterwards more compact and more extensible, and hence more readable
2022-01-05 21:42:39 +0100 <tomsmeding> I concede that := might be easier to explain than = in an imperative language to non-programmers
2022-01-05 21:44:17 +0100 <geekosaur> algol68, where you get both and need to know when to use each?
2022-01-05 21:44:30 +0100 <monochrom> haha
2022-01-05 21:45:17 +0100deadmarshal(~deadmarsh@95.38.116.69) (Ping timeout: 240 seconds)
2022-01-05 21:46:09 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 21:50:55 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Quit: WeeChat 3.4)
2022-01-05 21:52:01 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-01-05 21:53:09 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2022-01-05 21:57:02 +0100jumper149(~jumper149@static.6.71.203.116.clients.your-server.de) (Quit: WeeChat 3.3)
2022-01-05 21:58:37 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2022-01-05 22:01:15 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 22:01:15 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 22:01:15 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 22:02:45 +0100alx741(~alx741@157.100.93.160)
2022-01-05 22:03:45 +0100_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2022-01-05 22:04:11 +0100jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-01-05 22:05:37 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 22:05:59 +0100rond_(~rond_@2a01:115f:943:5e00:b66:5768:df7:4b57) (Quit: Client closed)
2022-01-05 22:06:49 +0100pavonia(~user@user/siracusa)
2022-01-05 22:08:13 +0100abrantesasf(~abrantesa@187.36.170.211) (Remote host closed the connection)
2022-01-05 22:11:57 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 22:14:41 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 256 seconds)
2022-01-05 22:15:24 +0100coot(~coot@2a02:a310:e03f:8500:5cc8:47c:8ec0:b827) (Quit: coot)
2022-01-05 22:21:01 +0100phma(phma@2001:5b0:215a:cac8:aefe:d82b:57fb:72c6) (Read error: Connection reset by peer)
2022-01-05 22:21:26 +0100cryptomonad(~cryptomon@194.191.225.149) (Remote host closed the connection)
2022-01-05 22:23:53 +0100phma(~phma@host-67-44-208-205.hnremote.net)
2022-01-05 22:26:11 +0100vysn(~vysn@user/vysn) (Ping timeout: 252 seconds)
2022-01-05 22:29:01 +0100neurocyte0(~neurocyte@user/neurocyte) (Ping timeout: 240 seconds)
2022-01-05 22:30:17 +0100alx741(~alx741@157.100.93.160)
2022-01-05 22:30:41 +0100neurocyte09(~neurocyte@IP-045128182210.dynamic.medianet-world.de)
2022-01-05 22:30:42 +0100neurocyte09(~neurocyte@IP-045128182210.dynamic.medianet-world.de) (Changing host)
2022-01-05 22:30:42 +0100neurocyte09(~neurocyte@user/neurocyte)
2022-01-05 22:31:28 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 22:31:28 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 22:31:28 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 22:32:34 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-01-05 22:32:37 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2022-01-05 22:33:11 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2022-01-05 22:33:36 +0100geranim0(~geranim0@modemcable242.171-178-173.mc.videotron.ca)
2022-01-05 22:34:25 +0100coolnickname(uid531864@user/coolnickname) (Quit: Connection closed for inactivity)
2022-01-05 22:34:26 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 22:36:17 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-01-05 22:39:18 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 22:42:21 +0100qrpnxz(~qrpnxz@user/qrpnxz) ()
2022-01-05 22:43:49 +0100doyougnu(~doyougnu@c-73-25-202-122.hsd1.or.comcast.net) (Ping timeout: 240 seconds)
2022-01-05 22:44:01 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 256 seconds)
2022-01-05 22:45:54 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 22:51:13 +0100alx741(~alx741@157.100.93.160)
2022-01-05 22:55:50 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 22:59:14 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (Remote host closed the connection)
2022-01-05 23:03:38 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 23:05:16 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2022-01-05 23:12:09 +0100alx741(~alx741@157.100.93.160)
2022-01-05 23:12:34 +0100zincy_(~zincy@2a00:23c8:970c:4801:8d43:554e:d62c:915d)
2022-01-05 23:12:48 +0100zincy_(~zincy@2a00:23c8:970c:4801:8d43:554e:d62c:915d) (Remote host closed the connection)
2022-01-05 23:13:28 +0100zincy_(~zincy@2a00:23c8:970c:4801:8d43:554e:d62c:915d)
2022-01-05 23:14:12 +0100alexd(~nineonine@50.216.62.2)
2022-01-05 23:15:37 +0100Inst(~delicacie@2601:6c4:4080:3f80:f131:ad94:e07f:dfdd) (Ping timeout: 240 seconds)
2022-01-05 23:16:41 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 23:17:36 +0100little_mac(~little_ma@2601:410:4300:3ce0:54a9:bec8:b650:a634)
2022-01-05 23:17:48 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-01-05 23:21:06 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-01-05 23:21:06 +0100wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-01-05 23:21:06 +0100wroathe(~wroathe@user/wroathe)
2022-01-05 23:22:24 +0100acidjnk(~acidjnk@p200300d0c7271e93a97d350f09b0dd65.dip0.t-ipconnect.de)
2022-01-05 23:22:24 +0100acidjnk_new(~acidjnk@p200300d0c7271e93a97d350f09b0dd65.dip0.t-ipconnect.de)
2022-01-05 23:23:14 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-01-05 23:29:29 +0100`2jt(~jtomas@153.red-83-53-252.dynamicip.rima-tde.net) (Ping timeout: 256 seconds)
2022-01-05 23:33:58 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-01-05 23:34:02 +0100justIrresolute5(~justache@user/justache) (Quit: Ping timeout (120 seconds))
2022-01-05 23:34:53 +0100alx741(~alx741@157.100.93.160)
2022-01-05 23:34:57 +0100Sgeo(~Sgeo@user/sgeo)
2022-01-05 23:35:23 +0100tromp(~textual@dhcp-077-249-230-040.chello.nl)
2022-01-05 23:36:27 +0100x_kuru(~xkuru@user/xkuru)
2022-01-05 23:37:30 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: Leaving)
2022-01-05 23:37:51 +0100alexd(~nineonine@50.216.62.2) (Ping timeout: 256 seconds)
2022-01-05 23:38:35 +0100eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-01-05 23:38:40 +0100xb0o2(~xb0o2@user/xb0o2) (Quit: Client closed)
2022-01-05 23:39:20 +0100alx741(~alx741@157.100.93.160) (Read error: Connection reset by peer)
2022-01-05 23:39:25 +0100xkuru(~xkuru@user/xkuru) (Ping timeout: 240 seconds)
2022-01-05 23:41:22 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2022-01-05 23:42:49 +0100zincy_(~zincy@2a00:23c8:970c:4801:8d43:554e:d62c:915d) (Remote host closed the connection)
2022-01-05 23:46:46 +0100forell(~forell@user/forell) (Ping timeout: 268 seconds)
2022-01-05 23:47:33 +0100forell(~forell@user/forell)
2022-01-05 23:48:59 +0100jgeerds(~jgeerds@55d4ac73.access.ecotel.net)
2022-01-05 23:57:26 +0100alx741(~alx741@157.100.93.160)