2021/11/29

2021-11-29 00:00:21 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3) (Ping timeout: 245 seconds)
2021-11-29 00:03:36 +0100 <EvanR> https://paste.tomsmeding.com/h0Aqsfh3 this nonsense brought to you by differential geometry
2021-11-29 00:04:13 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Remote host closed the connection)
2021-11-29 00:04:19 +0100alx741(~alx741@181.196.69.176) (Ping timeout: 256 seconds)
2021-11-29 00:04:23 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 00:06:01 +0100mreh(~matthew@host81-157-195-163.range81-157.btcentralplus.com)
2021-11-29 00:07:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 00:08:00 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 00:09:51 +0100xff0x(~xff0x@2001:1a81:523b:c600:e658:9e80:725:12f4) (Ping timeout: 250 seconds)
2021-11-29 00:10:37 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 265 seconds)
2021-11-29 00:10:53 +0100xff0x(~xff0x@2001:1a81:523b:c600:eb6a:2c7d:ead9:34e8)
2021-11-29 00:10:58 +0100pfurla(~pfurla@2804:14d:5c81:4104:40b9:a545:8d47:6552) (Quit: gone to sleep. ZZZzzz…)
2021-11-29 00:11:45 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3)
2021-11-29 00:13:29 +0100Midjak2(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2021-11-29 00:13:56 +0100Midjak2(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Remote host closed the connection)
2021-11-29 00:14:00 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Ping timeout: 265 seconds)
2021-11-29 00:14:31 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 00:14:33 +0100Midjak2(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2021-11-29 00:14:42 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2021-11-29 00:14:46 +0100 <EvanR> its too bad that exploiting local linearity requires ridiculously small step sizes, relative to better integration method
2021-11-29 00:15:17 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Read error: Connection reset by peer)
2021-11-29 00:15:47 +0100Midjak2(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Client Quit)
2021-11-29 00:16:21 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2021-11-29 00:17:30 +0100alx741(~alx741@181.196.69.176)
2021-11-29 00:19:15 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Remote host closed the connection)
2021-11-29 00:19:44 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 00:19:58 +0100pfurla(~pfurla@2804:14d:5c81:4104:40b9:a545:8d47:6552)
2021-11-29 00:20:31 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Remote host closed the connection)
2021-11-29 00:20:35 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-29 00:20:35 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-29 00:20:35 +0100wroathe(~wroathe@user/wroathe)
2021-11-29 00:21:17 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 00:23:11 +0100yinpkills -9 ghc for the 9th time today
2021-11-29 00:24:11 +0100 <yushyin> not cool
2021-11-29 00:24:12 +0100cosimone(~user@93-44-184-115.ip98.fastwebnet.it) (Quit: ERC (IRC client for Emacs 27.1))
2021-11-29 00:25:30 +0100yinyushes
2021-11-29 00:25:51 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Ping timeout: 256 seconds)
2021-11-29 00:25:51 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de) (Ping timeout: 256 seconds)
2021-11-29 00:26:02 +0100 <geekosaur> what's going wrong?
2021-11-29 00:26:05 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374) (Ping timeout: 265 seconds)
2021-11-29 00:26:14 +0100 <yin> EvanR: why dt and not δ
2021-11-29 00:26:17 +0100 <geekosaur> does ghc -v tell you where it's getting stuck?
2021-11-29 00:26:26 +0100shapr`(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-11-29 00:26:43 +0100 <EvanR> laziness
2021-11-29 00:27:32 +0100 <Axman6> I had some fun with the DAML compiler the other day (which is based on GHC) where it would take an hour to finally report a type error. I thought it was just getting stuck but someone else compiled my branch and forgot about it and came back an hour later to find an error. fun times
2021-11-29 00:27:33 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Ping timeout: 256 seconds)
2021-11-29 00:28:15 +0100jle`(~jle`@2603-8001-3b02-84d4-0000-0000-0000-025d.res6.spectrum.com) (Quit: WeeChat 3.3)
2021-11-29 00:28:15 +0100 <mreh> prime.haskell.org is down
2021-11-29 00:28:53 +0100 <Axman6> try #haskell-infrastructure
2021-11-29 00:29:03 +0100 <mreh> Bezos getting litigious?
2021-11-29 00:29:08 +0100 <mreh> Axman6: thanks
2021-11-29 00:29:12 +0100 <yin> geekosaur: it's not really getting stuck, i mean... i ^C out of ghcid and after a while i notice there's a zombie ghc process hogging my cpu.
2021-11-29 00:29:32 +0100 <geekosaur> oh
2021-11-29 00:29:48 +0100geekosauralready notified #haskell-infrastructure
2021-11-29 00:30:00 +0100 <geekosaur> yin, windows by any chance?
2021-11-29 00:30:26 +0100 <yin> no, but 32bit arm
2021-11-29 00:30:53 +0100 <yin> ubuntu in this instance
2021-11-29 00:31:03 +0100 <geekosaur> hm. I know there are problems with subprocesses on windows, but that should not affect arm ubuntu
2021-11-29 00:31:20 +0100 <geekosaur> then again I think I have heard of this happening before, so it might be a ghcid bug
2021-11-29 00:31:36 +0100 <geekosaur> or yet another bug in the process library, I guess
2021-11-29 00:32:08 +0100mreh(~matthew@host81-157-195-163.range81-157.btcentralplus.com) (Quit: leaving)
2021-11-29 00:33:50 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 00:34:11 +0100mreh(~matthew@host81-157-195-163.range81-157.btcentralplus.com)
2021-11-29 00:35:36 +0100 <yin> i think it also happened when i did "watch ghc ...", which i used t do before finding out about ghcid
2021-11-29 00:36:40 +0100 <geekosaur> mm, wonder if anyone'[s watching the infra tonight
2021-11-29 00:37:48 +0100 <mreh> geekosaur: where's it hosted? UK?
2021-11-29 00:38:02 +0100 <mreh> UCL IIRC
2021-11-29 00:39:48 +0100 <geekosaur> don't know
2021-11-29 00:40:07 +0100machinedgod(~machinedg@24.105.81.50)
2021-11-29 00:40:17 +0100 <geekosaur> just thinking it's sunday evening in the US, midnight in the UK, past midnight in Europe
2021-11-29 00:40:26 +0100 <geekosaur> probably a really bad time to find anyone around
2021-11-29 00:41:04 +0100 <mreh> I'm about to go to bed, so I'm not so bothered!
2021-11-29 00:41:15 +0100 <hpc> maybe in australia
2021-11-29 00:42:15 +0100stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2021-11-29 00:42:17 +0100 <mreh> I was fixing something, wanted to check on the deal with Control.Monad.Fail
2021-11-29 00:42:36 +0100stiell(~stiell@gateway/tor-sasl/stiell)
2021-11-29 00:42:48 +0100 <mreh> Docs say it's been in since base-4.9.0.0, I think at least
2021-11-29 00:43:33 +0100 <geekosaur> you might also be able to check it on the proposals github?
2021-11-29 00:43:46 +0100 <mreh> ah, okay
2021-11-29 00:43:50 +0100 <mreh> thanks
2021-11-29 00:45:28 +0100 <mreh> geekosaur: do you have a link?
2021-11-29 00:46:09 +0100 <mreh> is it ghc-proposals?
2021-11-29 00:46:44 +0100adium(adium@user/adium) (Quit: Stable ZNC by #bnc4you)
2021-11-29 00:47:16 +0100xff0x(~xff0x@2001:1a81:523b:c600:eb6a:2c7d:ead9:34e8) (Ping timeout: 268 seconds)
2021-11-29 00:47:22 +0100 <mreh> can't see it, oh well
2021-11-29 00:47:34 +0100zava(~zava@ip5f5bdf0f.dynamic.kabel-deutschland.de) (Quit: WeeChat 3.3)
2021-11-29 00:48:03 +0100xff0x(~xff0x@2001:1a81:523b:c600:ed55:79c2:75f9:f2e2)
2021-11-29 00:48:21 +0100maplike(~maplike@31.209.100.216)
2021-11-29 00:48:24 +0100 <geekosaur> yes and I don't see it either
2021-11-29 00:48:31 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 256 seconds)
2021-11-29 00:48:42 +0100 <geekosaur> must hyave come before the proposals process as I see several follow-ons but not MonadFail itself
2021-11-29 00:48:49 +0100 <geekosaur> oh well
2021-11-29 00:49:12 +0100 <mreh> This lib imports it and is supposed to support base >=4.7
2021-11-29 00:49:19 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 00:50:32 +0100kilolympus(~kilolympu@31.205.200.235)
2021-11-29 00:50:43 +0100 <maplike> I have a `[(a,b)]` and I'd like to aggregate all the `b`s per `a`, into a `[a,[b]]`. I though something like `fromList` or `foldMap` might help but my aggregate is not the same type as the values. How should I be thinking about this?
2021-11-29 00:50:48 +0100 <mreh> Anyway, the code compiles, my work is done...
2021-11-29 00:50:49 +0100 <mreh> gn
2021-11-29 00:51:11 +0100 <mreh> :t partition
2021-11-29 00:51:11 +0100arkeet(~arkeet@moriya.ca) (Ping timeout: 245 seconds)
2021-11-29 00:51:12 +0100 <lambdabot> (a -> Bool) -> [a] -> ([a], [a])
2021-11-29 00:51:28 +0100 <mreh> Hmm, no
2021-11-29 00:52:16 +0100 <maplike> same issue - - probably a SemiGroup thing :)
2021-11-29 00:52:32 +0100 <mreh> maplike: I would fold over a Map personally
2021-11-29 00:52:58 +0100max22-(~maxime@2a01cb0883359800f9d5861d99da2e2e.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2021-11-29 00:53:21 +0100 <maplike> ... still need to create the Map (that is why I looked at fromList)
2021-11-29 00:54:14 +0100 <jackdk> https://hackage.haskell.org/package/containers-0.6.4.1/docs/Data-Map-Lazy.html#v:fromListWith would be the simple choice
2021-11-29 00:54:28 +0100 <mreh> fold the list into a Map a [(a, b)] and then `fmap snd`
2021-11-29 00:54:31 +0100 <maplike> I think I tried that one too
2021-11-29 00:55:42 +0100 <mreh> [a,[b]] looks like a heterogenous list to me
2021-11-29 00:55:56 +0100 <jackdk> I assumed it was a typo of `[(a, [b])]`
2021-11-29 00:56:18 +0100 <maplike> no
2021-11-29 00:56:33 +0100 <maplike> otherwise there'd be plenty of choices
2021-11-29 00:56:48 +0100 <geekosaur> casn you assign a type to this [a,[b]] ?
2021-11-29 00:57:03 +0100 <mreh> sure a = [b]
2021-11-29 00:57:26 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 00:57:41 +0100 <maplike> think [Country, Language], for example
2021-11-29 00:57:44 +0100 <mreh> but I don't think that's what maplike wants
2021-11-29 00:58:02 +0100 <maplike> and, some coutries have multiple languages, but Language is not a monoid
2021-11-29 00:58:10 +0100 <mreh> maplike: are Country and Language different types?
2021-11-29 00:58:13 +0100 <maplike> yes
2021-11-29 00:58:30 +0100 <geekosaur> you cannot have such a list, is the point we're trying to make
2021-11-29 00:58:42 +0100 <mreh> I'm off to bed ;)
2021-11-29 00:58:46 +0100 <maplike> it seems that in Haskell, that data-structure is not a good fit for the behaviours I would want
2021-11-29 00:58:56 +0100 <maplike> really?!
2021-11-29 00:59:01 +0100 <geekosaur> lists are collections of all one type
2021-11-29 00:59:08 +0100 <mreh> it's 12am
2021-11-29 00:59:10 +0100 <mreh> bye!
2021-11-29 00:59:13 +0100 <geekosaur> > [1,'A']
2021-11-29 00:59:15 +0100 <lambdabot> error:
2021-11-29 00:59:15 +0100 <lambdabot> • No instance for (Num Char) arising from the literal ‘1’
2021-11-29 00:59:15 +0100 <lambdabot> • In the expression: 1
2021-11-29 00:59:24 +0100 <geekosaur> hm, not the best example
2021-11-29 00:59:24 +0100mreh(~matthew@host81-157-195-163.range81-157.btcentralplus.com) (Quit: leaving)
2021-11-29 00:59:25 +0100 <maplike> thanks mreh
2021-11-29 00:59:31 +0100 <geekosaur> > [1::Int,'A']
2021-11-29 00:59:33 +0100 <lambdabot> error:
2021-11-29 00:59:33 +0100 <lambdabot> • Couldn't match expected type ‘Int’ with actual type ‘Char’
2021-11-29 00:59:33 +0100 <lambdabot> • In the expression: 'A'
2021-11-29 00:59:37 +0100 <maplike> I see
2021-11-29 00:59:59 +0100 <maplike> it is a typo, the elements are tuples
2021-11-29 01:00:13 +0100 <maplike> [(a,[b])]
2021-11-29 01:00:36 +0100 <maplike> I hope that wasn't the straw that broke the camels' back for mreh :(
2021-11-29 01:01:08 +0100 <geekosaur> no, mreh was talking about going to bed soon before you arrived,m they logged on to report a down site
2021-11-29 01:01:16 +0100 <maplike> so I want to go from [(a,b)] -> [(a,[b])]
2021-11-29 01:01:45 +0100 <maplike> good, thanks geekosaur
2021-11-29 01:01:48 +0100 <geekosaur> :t map (map group)
2021-11-29 01:01:49 +0100 <lambdabot> Eq a => [[[a]]] -> [[[[a]]]]
2021-11-29 01:01:55 +0100 <geekosaur> mm, not quite
2021-11-29 01:02:10 +0100alx741(~alx741@181.196.69.176) (Ping timeout: 256 seconds)
2021-11-29 01:02:46 +0100 <int-e> :t groupBy ((==) `on` snd)
2021-11-29 01:02:47 +0100 <lambdabot> Eq a1 => [(a2, a1)] -> [[(a2, a1)]]
2021-11-29 01:02:58 +0100 <maplike> I'm pretty sure in scala it's be something like `toMap` on the List
2021-11-29 01:03:18 +0100 <int-e> :t map (head &&& map snd) . groupBy ((==) `on` fst)
2021-11-29 01:03:19 +0100 <lambdabot> Eq a => [(a, b)] -> [((a, b), [b])]
2021-11-29 01:03:25 +0100 <int-e> tsk.
2021-11-29 01:03:36 +0100 <geekosaur> glad I'm not the only one :þ
2021-11-29 01:03:38 +0100 <int-e> :t map ((fst . head) &&& map snd) . groupBy ((==) `on` fst)
2021-11-29 01:03:39 +0100 <lambdabot> Eq a => [(a, b)] -> [(a, [b])]
2021-11-29 01:03:40 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:03:46 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Remote host closed the connection)
2021-11-29 01:03:50 +0100shapr`shapr
2021-11-29 01:03:57 +0100 <int-e> probably not the nicest way. does order matter?
2021-11-29 01:04:18 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:04:18 +0100 <maplike> a bit of a mouthful, but better than anything I came up with!
2021-11-29 01:04:28 +0100 <int-e> :t M.toList . M.fromListWith (++) . map (second pure)
2021-11-29 01:04:28 +0100 <lambdabot> Ord k => [(k, a)] -> [(k, [a])]
2021-11-29 01:04:59 +0100 <maplike> that's what I wanted :D
2021-11-29 01:05:02 +0100 <int-e> that's if you don't care about the order
2021-11-29 01:05:06 +0100 <maplike> nice!
2021-11-29 01:05:31 +0100 <int-e> (but also more efficient)
2021-11-29 01:05:36 +0100 <maplike> nope, it should really be a Map, but I thought it owuld be interesting to see how to do it
2021-11-29 01:05:37 +0100 <int-e> asymptotically at least
2021-11-29 01:05:48 +0100 <maplike> and the size is trivial
2021-11-29 01:05:58 +0100 <int-e> Heh, then you can drop the M.toList
2021-11-29 01:07:06 +0100 <int-e> > M.fromListWith (++) . map (second pure) $ [(1,'a'),(2,'b'),(1,'c')] -- note a quirk: c comes before a
2021-11-29 01:07:07 +0100 <lambdabot> fromList [(1,"ca"),(2,"b")]
2021-11-29 01:09:30 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 01:12:17 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:12:34 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:14:01 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Ping timeout: 256 seconds)
2021-11-29 01:14:06 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (Remote host closed the connection)
2021-11-29 01:14:23 +0100Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi) (Quit: Leaving.)
2021-11-29 01:16:43 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:17:00 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:19:18 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x) (Remote host closed the connection)
2021-11-29 01:20:48 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x)
2021-11-29 01:23:03 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:23:20 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:25:00 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:25:17 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:25:26 +0100 <maplike> excuse the delayed feedback - just trying to lookup what second does. That was the trick I was missing
2021-11-29 01:25:39 +0100 <Axman6> @hoogle second
2021-11-29 01:25:40 +0100 <lambdabot> Control.Arrow second :: Arrow a => a b c -> a (d, b) (d, c)
2021-11-29 01:25:40 +0100 <lambdabot> Data.Bifunctor second :: Bifunctor p => (b -> c) -> p a b -> p a c
2021-11-29 01:25:40 +0100 <lambdabot> System.Directory.Internal.Prelude second :: Arrow a => a b c -> a (d, b) (d, c)
2021-11-29 01:25:48 +0100 <maplike> not really played with Arrows yet
2021-11-29 01:26:07 +0100 <Axman6> it's basically just fmap on the first element of a tuple
2021-11-29 01:26:22 +0100 <maplike> I've heard that they are more powerful than Applicatives, but weaker than Monads
2021-11-29 01:26:29 +0100 <Axman6> there are more advanced uses of it, but generally you're usiing it as (a -> b) -> (a,c) -> (b,c)
2021-11-29 01:26:39 +0100 <maplike> OK
2021-11-29 01:26:48 +0100jle`(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2021-11-29 01:26:58 +0100 <geekosaur> % :t second @(->)
2021-11-29 01:26:59 +0100 <yahb> geekosaur: (b -> c) -> (d, b) -> (d, c)
2021-11-29 01:27:50 +0100 <maplike> is that generalistion reasonable? (re Applicatives > Arrows > Monads, even though Arrow is not heirarchically related to the others))
2021-11-29 01:28:06 +0100 <geekosaur> hm, I''d say not really
2021-11-29 01:28:37 +0100 <maplike> can you do everything with an Arrow that and Applicative can, but not as much as a Monad?
2021-11-29 01:28:38 +0100 <geekosaur> Arrow was an attempt to fit function application and Kleisli (monad) application into a single framework. It kinda failed
2021-11-29 01:28:38 +0100harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2021-11-29 01:28:59 +0100 <geekosaur> but out of Arrow came Applicative and profunctors
2021-11-29 01:29:01 +0100 <Axman6> It found a use in Opaleye
2021-11-29 01:29:56 +0100 <Axman6> also, from the discussion above, it's worth remembering that group and groupBy do not work how you think, they group consecutive runs, they do not collect like elements together
2021-11-29 01:30:08 +0100 <Axman6> > group "aaabbaabc"
2021-11-29 01:30:09 +0100 <lambdabot> ["aaa","bb","aa","b","c"]
2021-11-29 01:30:26 +0100 <maplike> right, so you have to pay for the sort, one way or another!
2021-11-29 01:30:55 +0100 <maplike> coming back to [(Country, Language)], well, in reality, a better example is borders = [(WA, NT), (WA, SA), (NT, SA), (NT, Q), (Q, SA), (Q, NSW), (NSW, SA), (NSW, V), (V, SA), (T, V), (ACT, NSW)]
2021-11-29 01:31:06 +0100 <Axman6> Aussie Aussie Aussie!
2021-11-29 01:31:17 +0100 <maplike> yep, and paint
2021-11-29 01:31:20 +0100pfurla(~pfurla@2804:14d:5c81:4104:40b9:a545:8d47:6552) (Ping timeout: 265 seconds)
2021-11-29 01:31:31 +0100pfurla_(~pfurla@205.185.222.148)
2021-11-29 01:31:31 +0100 <Axman6> s'if Queensland gets just Q. I'm not ok with this
2021-11-29 01:32:08 +0100Axman6wishes there was a (ACT, NZ) in there too, but alas
2021-11-29 01:32:18 +0100 <maplike> that's what it's called in the book
2021-11-29 01:32:22 +0100 <maplike> (on CSP)
2021-11-29 01:32:37 +0100 <maplike> or, more likely, lecture notes
2021-11-29 01:32:38 +0100 <monochrom> What is ACT?
2021-11-29 01:32:48 +0100 <Axman6> The best territory
2021-11-29 01:32:52 +0100 <maplike> capital
2021-11-29 01:32:58 +0100 <monochrom> Oh! That.
2021-11-29 01:33:39 +0100 <maplike> so the [OzState, [OzState]] should take snd as a key too
2021-11-29 01:33:59 +0100 <Axman6> eh?
2021-11-29 01:34:15 +0100 <maplike> otherwise you can't lookup all the borders for a state unless you duplicate the relationships (in both directions)
2021-11-29 01:34:17 +0100burnsidesLlama(~burnsides@dhcp168-015.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-29 01:34:27 +0100 <Axman6> also, make sure you use the correct syntax, you either mean (OzState, [OzState]) or [(OzState, [OzState])]
2021-11-29 01:34:30 +0100 <monochrom> Yeah Wikipedia uses QLD :)
2021-11-29 01:34:53 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 01:34:55 +0100 <maplike> so, for example, you will see that Tasmania borders Victoria (whatever) but not that Victoria borders Tasmania
2021-11-29 01:34:58 +0100 <Axman6> (Also, it should be AusState, but whatever)
2021-11-29 01:35:06 +0100 <maplike> :D
2021-11-29 01:36:04 +0100 <Axman6> that's pretty easy to deal with, just have directedToUndirected xs = xs ++ map (\(a,b) -> (b,a)) xs and then do the collect above
2021-11-29 01:36:14 +0100 <maplike> it's not offensive, is it , Axman6?
2021-11-29 01:37:11 +0100 <Axman6> Oz? No but definitely not used much by us
2021-11-29 01:37:19 +0100 <maplike> yes, I can see that bit, but it just seems less elegant than I would have liked/expected, but I suppose there is so much you can represent with a list of tuples
2021-11-29 01:38:59 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:39:05 +0100 <Axman6> If you want graphs, then maybe you should look at a graph library :)
2021-11-29 01:40:04 +0100vonfry(~user@116.236.75.238)
2021-11-29 01:41:29 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:41:56 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:41:56 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.3)
2021-11-29 01:42:42 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:42:54 +0100adium(adium@user/adium)
2021-11-29 01:43:20 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 01:44:24 +0100maplike(~maplike@31.209.100.216)
2021-11-29 01:45:17 +0100 <jackdk> https://hackage.haskell.org/package/algebraic-graphs
2021-11-29 01:47:01 +0100acidjnk_new(~acidjnk@p200300d0c7271e27c5c24316ea6f3b87.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2021-11-29 01:48:15 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Ping timeout: 265 seconds)
2021-11-29 01:49:27 +0100 <maplike> is there no _other_ trick with Arrows to help wrt that (using fst _and_ snd of [OzState, OzState] as keys (and therefore values, in the other direction) for the [(OzState, [OzState])] ) ?
2021-11-29 01:50:17 +0100random-jellyfish(~random-je@user/random-jellyfish) (Ping timeout: 256 seconds)
2021-11-29 01:50:59 +0100 <Axman6> not really, most tools for building up map like things are designed to work with values of type (k,v) where k and v are different
2021-11-29 01:51:40 +0100 <maplike> that makes sense. And List and (,) are probably both dubious design decisions
2021-11-29 01:51:49 +0100 <maplike> ... for this example
2021-11-29 01:51:52 +0100alx741(~alx741@181.196.69.176)
2021-11-29 01:52:06 +0100 <maplike> it was an attempt to avoid "denormalistion"
2021-11-29 01:52:21 +0100 <maplike> and be as succinct as possible
2021-11-29 01:53:24 +0100 <maplike> a map with values reappearing as keys whee necessary would have made the behaviour much easier to implement, but somehow less elegant (I thought :)
2021-11-29 01:55:05 +0100 <maplike> so, is it the case that learning about Arrows, interesting and instructive as it may be, would not lead to much practical benefitin modern Haskell?
2021-11-29 01:55:49 +0100 <maplike> or was that an exageration that nobody uses them (apart from for my warped example!)
2021-11-29 01:57:03 +0100 <geekosaur> there are a few uses, but the existence of `arr` makes them a lot less useful than they might be
2021-11-29 01:57:18 +0100 <geekosaur> :t arr
2021-11-29 01:57:18 +0100 <lambdabot> Arrow a => (b -> c) -> a b c
2021-11-29 01:58:04 +0100pfurla(~pfurla@2804:14d:5c81:4104:f9a9:132:7129:df1c)
2021-11-29 01:58:13 +0100 <maplike> I saw some scala talk once where one of the questions was "Arrows have been around for a while - why have they never taken off?
2021-11-29 01:58:40 +0100 <maplike> the presenter didn't have a concrete answer.
2021-11-29 01:59:02 +0100machinedgod(~machinedg@24.105.81.50) (Ping timeout: 240 seconds)
2021-11-29 01:59:02 +0100 <maplike> In Haskell there is even syntax sugar for it, but in scala, it seems less idiomatic
2021-11-29 01:59:21 +0100pfurla_(~pfurla@205.185.222.148) (Ping timeout: 256 seconds)
2021-11-29 01:59:26 +0100 <maplike> (like applicative style)
2021-11-29 02:00:39 +0100Guest8469(~Guest84@node-1w7jr9yg17p34ft5ls8sbppyg.ipv6.telus.net)
2021-11-29 02:00:58 +0100 <yin> arrows are nice
2021-11-29 02:01:04 +0100 <maplike> anyway, I better go and denormalise my borders! Thanks all
2021-11-29 02:01:13 +0100 <maplike> ... aha - I want to hear this :)
2021-11-29 02:01:35 +0100 <yin> i like them. that is all
2021-11-29 02:02:19 +0100 <maplike> yin - can you say in what context? With that be with arrow do notation (or whatever it's called)?
2021-11-29 02:02:55 +0100 <maplike> I mean, would you consider using arrows where others might automatically go to applicatives or monads?
2021-11-29 02:03:20 +0100Guest8469(~Guest84@node-1w7jr9yg17p34ft5ls8sbppyg.ipv6.telus.net) (Client Quit)
2021-11-29 02:04:26 +0100 <maplike> the John Hughes paper seemed to claim that it was as good, if not better in some cases, for parsers, for example
2021-11-29 02:05:22 +0100 <yin> probably not, but in the same way i don't go around talking in petry form. doesn't make it less beautiful :)
2021-11-29 02:05:44 +0100 <yin> s/petry/poetry
2021-11-29 02:05:53 +0100 <maplike> I remember thinking watching that talk that they were elegant, too
2021-11-29 02:06:17 +0100 <geekosaur> practice says applicatives capture all the advantages of arrows for parsing, but monads tend to perform better
2021-11-29 02:07:01 +0100 <geekosaur> also monads allow parsing some things arrows and applicatives can't
2021-11-29 02:07:11 +0100 <maplike> yin I was wondering if you meant pretty or petty :D
2021-11-29 02:07:26 +0100 <geekosaur> but unlike arrows, applicatives give you the option of switching to monadic parsing for those things
2021-11-29 02:07:58 +0100 <maplike> the way the speaker framed it was that arrows can do everything applicatives can, but monads can do a few things they can't
2021-11-29 02:08:00 +0100 <geekosaur> I thought they meant poetry
2021-11-29 02:08:16 +0100curiousgay(~curiousga@77-120-141-90.kha.volia.net) (Quit: Leaving)
2021-11-29 02:09:15 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-29 02:09:43 +0100 <maplike> the speakers eaxample, iirc, involved encoding to json some objects, where in some cases you need to know the thing you just did to shape the rest of the computation
2021-11-29 02:10:36 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 02:10:37 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net) (Quit: This computer has gone to sleep)
2021-11-29 02:10:42 +0100 <maplike> both monad and applicative failed at some aspect (can't remmber what now) but Arrow + ArrowChoice, iirc, solved both
2021-11-29 02:10:44 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-11-29 02:11:10 +0100 <geekosaur> hm, actually I think I've heard that been claimed
2021-11-29 02:11:15 +0100 <maplike> the applicative solution was probably due to the usual reasons
2021-11-29 02:11:39 +0100 <geekosaur> symmetric choice?
2021-11-29 02:11:46 +0100 <maplike> and the monad soln failed due to lack of anything meaningful to bind to
2021-11-29 02:11:50 +0100 <geekosaur> er, non-biased choice. that was it
2021-11-29 02:14:40 +0100nautical(~nautical@2601:602:900:1630::396f) (Quit: WeeChat 3.3)
2021-11-29 02:14:56 +0100nautical(~nautical@2601:602:900:1630::396f)
2021-11-29 02:14:58 +0100 <geekosaur> applicatives bias toward the first partially matching choice, ArrowChoice is unbiased, iirc
2021-11-29 02:15:47 +0100shailangsa(~shailangs@host86-186-136-24.range86-186.btcentralplus.com) (Ping timeout: 260 seconds)
2021-11-29 02:16:52 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-11-29 02:19:45 +0100 <maplike> btw, I am having a play with Haskell in VSCode using HIE (via a plugin). On my last play with Haskell, I used atom. Seems like the VSCode plugin is pretty good (not sure how it scales, but for toys).
2021-11-29 02:20:32 +0100 <maplike> you can even do `-- >>>` and evaluate the suffix, inline
2021-11-29 02:20:44 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 02:21:22 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 02:21:41 +0100maplike(~maplike@31.209.100.216)
2021-11-29 02:21:52 +0100nautical(~nautical@2601:602:900:1630::396f) (Quit: WeeChat 3.3)
2021-11-29 02:22:08 +0100nautical(~nautical@2601:602:900:1630::396f)
2021-11-29 02:25:13 +0100shriekingnoise(~shrieking@186.137.144.80)
2021-11-29 02:25:25 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 02:26:21 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 250 seconds)
2021-11-29 02:29:34 +0100maplike(~maplike@31.209.100.216) (Remote host closed the connection)
2021-11-29 02:30:26 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-11-29 02:32:46 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-11-29 02:32:46 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2021-11-29 02:32:49 +0100allbery_bgeekosaur
2021-11-29 02:41:54 +0100nautical(~nautical@2601:602:900:1630::396f) (Quit: WeeChat 3.3)
2021-11-29 02:44:32 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 240 seconds)
2021-11-29 02:51:01 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-29 02:51:01 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-29 02:51:01 +0100wroathe(~wroathe@user/wroathe)
2021-11-29 02:56:10 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2021-11-29 02:56:12 +0100shailangsa(~shailangs@host86-162-150-209.range86-162.btcentralplus.com)
2021-11-29 03:12:42 +0100 <Axman6> huh, I hadn't seen that, that's cool!
2021-11-29 03:19:26 +0100emf(~emf@2620:10d:c090:400::5:99c8)
2021-11-29 03:20:22 +0100 <boxscape_> Huh
2021-11-29 03:20:26 +0100 <boxscape_> my main function works when I run it in ghci
2021-11-29 03:20:31 +0100 <boxscape_> but produces <<loop>> when compiled
2021-11-29 03:20:32 +0100 <boxscape_> odd
2021-11-29 03:20:45 +0100 <boxscape_> s/function/action
2021-11-29 03:22:20 +0100justsomeguy(~justsomeg@user/justsomeguy)
2021-11-29 03:25:00 +0100 <boxscape_> Ah... it's because some function finds a different path when run in ghci vs compiled, and another function that uses this path has a bug where it loops infinitely on certain inputs
2021-11-29 03:34:06 +0100mmhat(~mmh@55d4d614.access.ecotel.net) (Ping timeout: 265 seconds)
2021-11-29 03:35:15 +0100xff0x(~xff0x@2001:1a81:523b:c600:ed55:79c2:75f9:f2e2) (Ping timeout: 250 seconds)
2021-11-29 03:35:33 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2021-11-29 03:36:49 +0100neurocyte0132889(~neurocyte@user/neurocyte) (Ping timeout: 256 seconds)
2021-11-29 03:37:13 +0100xff0x(~xff0x@2001:1a81:527f:8300:c0be:43f4:9685:d0cc)
2021-11-29 03:37:33 +0100infinity0(~infinity0@occupy.ecodis.net) (Remote host closed the connection)
2021-11-29 03:40:47 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 03:43:53 +0100infinity0(~infinity0@occupy.ecodis.net)
2021-11-29 03:45:13 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 265 seconds)
2021-11-29 03:45:17 +0100gdown(~gavin@h69-11-248-109.kndrid.broadband.dynamic.tds.net) (Remote host closed the connection)
2021-11-29 03:47:28 +0100mmhat(~mmh@55d431d8.access.ecotel.net)
2021-11-29 03:47:54 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 03:51:27 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-29 03:51:27 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-29 03:51:27 +0100wroathe(~wroathe@user/wroathe)
2021-11-29 03:56:20 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2021-11-29 03:56:37 +0100Guest13(~Guest13@85-192-130-19.dsl.esoo.ru)
2021-11-29 04:01:08 +0100mmhat(~mmh@55d431d8.access.ecotel.net) (Quit: WeeChat 3.3)
2021-11-29 04:01:58 +0100jmorris(uid433911@id-433911.hampstead.irccloud.com)
2021-11-29 04:04:45 +0100lemonsnicks(~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net) (Quit: ZNC 1.8.2 - https://znc.in)
2021-11-29 04:06:04 +0100bollu(uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-29 04:09:32 +0100 <xsperry> boxscape_, that's odd, why would a function use a different path in ghc vs ghci? would it be possible to post a test case?
2021-11-29 04:09:54 +0100kennyd(~bc8165b6@cerf.good1.com)
2021-11-29 04:11:20 +0100 <boxscape_> xsperry `import GHC.SysTools.BaseDir; main = findTopDir Nothing >>= print`
2021-11-29 04:11:44 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-29 04:12:02 +0100 <boxscape_> (when the result is used as argument for `findToolDir` from the same module, on Windows, it produces an infinite loop for me when compiled but not in ghci, since findTopDir produces different paths)
2021-11-29 04:13:23 +0100 <boxscape_> (I'm doing this inside a cabal project; the path it finds when compiled is somewhere in dist-newstyle, whereas the path it finds in ghci is the ghc installation directory)
2021-11-29 04:17:52 +0100motherfsck(~motherfsc@user/motherfsck) (Quit: quit)
2021-11-29 04:18:33 +0100lemonsnicks(~lemonsnic@cpc159519-perr18-2-0-cust114.19-1.cable.virginm.net)
2021-11-29 04:21:14 +0100 <xsperry> boxscape_ ok, that makes sense
2021-11-29 04:25:33 +0100td_(~td@muedsl-82-207-238-244.citykom.de) (Ping timeout: 256 seconds)
2021-11-29 04:27:23 +0100td_(~td@94.134.91.97)
2021-11-29 04:33:47 +0100xerxesphainon[m](~artaxerxe@2001:470:69fc:105::f400)
2021-11-29 04:33:57 +0100 <xerxesphainon[m]> ??????
2021-11-29 04:41:13 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 04:42:13 +0100P1RATEZ(piratez@user/p1ratez) (Remote host closed the connection)
2021-11-29 04:44:42 +0100renzhi(~xp@2607:fa49:6500:b100::5cef) (Ping timeout: 268 seconds)
2021-11-29 04:45:15 +0100tcard(~tcard@p2878075-ipngn18701hodogaya.kanagawa.ocn.ne.jp) (Quit: Leaving)
2021-11-29 04:46:35 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection)
2021-11-29 04:49:11 +0100 <Axman6> yes?
2021-11-29 04:56:40 +0100Guest13(~Guest13@85-192-130-19.dsl.esoo.ru) (Quit: Client closed)
2021-11-29 04:57:24 +0100zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2021-11-29 05:01:00 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 05:05:17 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2021-11-29 05:05:52 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2021-11-29 05:05:56 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 265 seconds)
2021-11-29 05:11:58 +0100tcard(~tcard@p2878075-ipngn18701hodogaya.kanagawa.ocn.ne.jp)
2021-11-29 05:15:28 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 05:17:52 +0100waleee(~waleee@h-82-196-111-63.na.cust.bahnhof.se) (Quit: WeeChat 3.3)
2021-11-29 05:22:03 +0100cjb(~cjb@user/cjb) (Quit: rcirc on GNU Emacs 29.0.50)
2021-11-29 05:27:16 +0100Guest13(~Guest13@85-192-130-19.dsl.esoo.ru)
2021-11-29 05:28:47 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de) (Ping timeout: 250 seconds)
2021-11-29 05:29:12 +0100mbuf(~Shakthi@223.184.125.58)
2021-11-29 05:30:45 +0100CannabisIndica(~herb@user/mesaboogie) (Quit: ZNC - https://znc.in)
2021-11-29 05:33:36 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 05:35:35 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 05:37:39 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de)
2021-11-29 05:40:21 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2021-11-29 05:43:38 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x) (Ping timeout: 265 seconds)
2021-11-29 05:44:32 +0100xff0x(~xff0x@2001:1a81:527f:8300:c0be:43f4:9685:d0cc) (Ping timeout: 240 seconds)
2021-11-29 05:45:25 +0100xff0x(~xff0x@2001:1a81:527f:8300:57da:badd:210c:d109)
2021-11-29 05:47:05 +0100Guest13(~Guest13@85-192-130-19.dsl.esoo.ru) (Quit: Client closed)
2021-11-29 05:47:22 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-11-29 05:48:15 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 05:49:46 +0100hubvu(sid495858@user/hubvu) (Ping timeout: 260 seconds)
2021-11-29 05:50:33 +0100boxscape_(~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
2021-11-29 05:52:49 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2021-11-29 05:53:52 +0100hubvu(sid495858@user/hubvu)
2021-11-29 05:53:59 +0100CannabisIndica(~herb@user/mesaboogie)
2021-11-29 05:56:05 +0100 <kennyd> how long do you think it will take for stack to support 9.2?
2021-11-29 05:59:02 +0100 <c_wraith> It's almost always blocked on library support for a sufficient range of libraries. And that's a mystery
2021-11-29 05:59:34 +0100sunarch(uid526836@user/sunarch) (Ping timeout: 260 seconds)
2021-11-29 06:00:22 +0100deadmarshal(~deadmarsh@95.38.231.110)
2021-11-29 06:00:48 +0100sunarch(uid526836@user/sunarch)
2021-11-29 06:06:56 +0100 <c_wraith> Also, it's certainly waiting for 9.2.2
2021-11-29 06:07:03 +0100 <c_wraith> 9.2.1 has some severe bugs on some platforms
2021-11-29 06:07:03 +0100CannabisIndica(~herb@user/mesaboogie) (Quit: ZNC - https://znc.in)
2021-11-29 06:10:56 +0100CannabisIndica(~herb@user/mesaboogie)
2021-11-29 06:12:00 +0100Hafydd(~Hafydd@user/hafydd) (Quit: WeeChat 3.3)
2021-11-29 06:13:03 +0100Hafydd(~Hafydd@user/hafydd)
2021-11-29 06:13:14 +0100 <kennyd> c_wraith, which ones?
2021-11-29 06:15:18 +0100 <c_wraith> https://discourse.haskell.org/t/psa-9-2-1-aarch64-miscompilation/3638
2021-11-29 06:16:29 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 06:17:26 +0100 <kennyd> hmm, I just noticed that stack is still on 8.10.7 for long term support. 9.0.1 is nightly only
2021-11-29 06:17:44 +0100 <c_wraith> 9.0 had a bunch of bug too
2021-11-29 06:18:50 +0100 <c_wraith> A lot of things I ran into testing new features - rough edges that were fixed in 9.2
2021-11-29 06:19:12 +0100 <kennyd> perhaps they will skip 9 and 9.2, and jump straight to 9.2.2
2021-11-29 06:19:24 +0100 <c_wraith> most likely
2021-11-29 06:21:14 +0100kennyd(~bc8165b6@cerf.good1.com) (Quit: CGI:IRC)
2021-11-29 06:21:32 +0100CannabisIndica(~herb@user/mesaboogie) (Quit: ZNC - https://znc.in)
2021-11-29 06:21:34 +0100kennyd(~bc8165b6@cerf.good1.com)
2021-11-29 06:26:15 +0100deadmarshal(~deadmarsh@95.38.231.110) (Ping timeout: 256 seconds)
2021-11-29 06:33:11 +0100reumeth(~reumeth@user/reumeth)
2021-11-29 06:33:48 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 06:35:28 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 06:38:39 +0100slowButPresent(~slowButPr@user/slowbutpresent) (Quit: leaving)
2021-11-29 06:41:36 +0100reumeth(~reumeth@user/reumeth) (Ping timeout: 245 seconds)
2021-11-29 06:45:54 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 06:46:03 +0100alzgh(~alzgh@user/alzgh) (Remote host closed the connection)
2021-11-29 06:46:12 +0100alzgh(~alzgh@user/alzgh)
2021-11-29 06:46:20 +0100 <dsal> > getAp $ Ap [10,20] + Ap [1,2] -- I hope I don't ever need this, because it looks like a bad idea.
2021-11-29 06:46:21 +0100 <lambdabot> [11,12,21,22]
2021-11-29 06:46:58 +0100 <c_wraith> Ap is very generally useful
2021-11-29 06:47:13 +0100 <dsal> I've not actually used it, but the Num instance?
2021-11-29 06:47:16 +0100 <c_wraith> Though... that Num instance is... interesting
2021-11-29 06:47:51 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
2021-11-29 06:47:58 +0100 <kennyd> > liftA2 (+) [10,20] [1,2]
2021-11-29 06:48:00 +0100 <lambdabot> [11,12,21,22]
2021-11-29 06:48:02 +0100 <c_wraith> I don't usually complain about too many instances, but I think I will in that case.
2021-11-29 06:48:26 +0100 <c_wraith> The main problem with that instance is documented directly: "Note that even if the underlying Num and Applicative instances are lawful, for most Applicatives, this instance will not be lawful"
2021-11-29 06:49:06 +0100 <c_wraith> But if you ignore that instance, Ap is useful. :)
2021-11-29 06:49:09 +0100 <dsal> It's almost counter-documented.
2021-11-29 06:49:22 +0100 <dsal> It doesn't tell me what it's good for, just like, to not trust it.
2021-11-29 06:50:28 +0100 <dsal> c_wraith: Where do you end up using Ap?
2021-11-29 06:50:29 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 268 seconds)
2021-11-29 06:50:43 +0100 <dsal> I was just shopping for monoids and noticed and don't quite understand what it does that I can't already do.
2021-11-29 06:50:46 +0100 <c_wraith> It comes up in traverse-like cases
2021-11-29 06:51:04 +0100 <c_wraith> or foldMap stuff
2021-11-29 06:51:27 +0100 <dsal> Hmm... So using foldMap to make a lift* ?
2021-11-29 06:51:46 +0100 <c_wraith> I don't remember the details of when I've run into it specifically, just that I've run into it more than once.
2021-11-29 06:52:11 +0100 <c_wraith> Including finding a chunk in a book that worked really hard to not do what it does as well as it did it.
2021-11-29 06:52:37 +0100deadmarshal(~deadmarsh@95.38.231.110)
2021-11-29 06:53:10 +0100 <dsal> I think I'd be better off going to sleep than to try to contrive a need at the moment. heh. I just thought that Num instance looked pretty weird.
2021-11-29 06:53:14 +0100 <c_wraith> It's just an adapter for "I want to work on the monoid under some Applicative instance"
2021-11-29 06:53:29 +0100 <dsal> > Ap [1, 2, 3] + 5
2021-11-29 06:53:30 +0100 <lambdabot> Ap {getAp = [6,7,8]}
2021-11-29 06:54:31 +0100 <dsal> This is one of those things that's just going to seem useless to me until one day when it's exactly what I need and I'm glad I read docs one night.
2021-11-29 06:58:03 +0100bollu(uid233390@id-233390.helmsley.irccloud.com)
2021-11-29 06:58:19 +0100 <c_wraith> > runState (getAp (foldMap Ap [ modify (* 2) *> pure "hello", flip replicate ' ' <$> get, modify (+1) *> pure "world" ])) 1
2021-11-29 06:58:21 +0100 <lambdabot> ("hello world",3)
2021-11-29 07:02:02 +0100yin(~z@user/zero) (*.net *.split)
2021-11-29 07:02:02 +0100jrm(~jrm@156.34.187.65) (*.net *.split)
2021-11-29 07:02:02 +0100flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962) (*.net *.split)
2021-11-29 07:02:02 +0100chronon(~chronon@user/chronon) (*.net *.split)
2021-11-29 07:02:02 +0100dka(~code-is-a@ns3059207.ip-193-70-33.eu) (*.net *.split)
2021-11-29 07:02:02 +0100mtjm(~mutantmel@2604:a880:2:d0::208b:d001) (*.net *.split)
2021-11-29 07:02:02 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de) (*.net *.split)
2021-11-29 07:02:02 +0100sajith(~sajith@user/sajith) (*.net *.split)
2021-11-29 07:02:02 +0100landonf(landonf@mac68k.info) (*.net *.split)
2021-11-29 07:02:02 +0100mjacob(~mjacob@adrastea.uberspace.de) (*.net *.split)
2021-11-29 07:02:02 +0100akspecs__(~akspecs@user/akspecs) (*.net *.split)
2021-11-29 07:02:02 +0100choucavalier(~choucaval@peanutbuttervibes.com) (*.net *.split)
2021-11-29 07:02:02 +0100mniip(mniip@libera/staff/mniip) (*.net *.split)
2021-11-29 07:02:02 +0100farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505) (*.net *.split)
2021-11-29 07:02:02 +0100urdh(~urdh@user/urdh) (*.net *.split)
2021-11-29 07:02:02 +0100fluxit(~fluxit@techsmix.net) (*.net *.split)
2021-11-29 07:02:02 +0100cocreature(~moritz@2a03:b0c0:3:d0::c8:f001) (*.net *.split)
2021-11-29 07:02:02 +0100xacktm_(xacktm@user/xacktm) (*.net *.split)
2021-11-29 07:02:02 +0100nurupo(~nurupo.ga@user/nurupo) (*.net *.split)
2021-11-29 07:02:02 +0100OscarH(~OscarH@90.201.86.195) (*.net *.split)
2021-11-29 07:02:02 +0100nonzen(~nonzen@user/nonzen) (*.net *.split)
2021-11-29 07:02:02 +0100carbolymer(~carbolyme@dropacid.net) (*.net *.split)
2021-11-29 07:02:02 +0100Franciman(~Franciman@mx1.fracta.dev) (*.net *.split)
2021-11-29 07:02:02 +0100noctux(~noctux@user/noctux) (*.net *.split)
2021-11-29 07:02:03 +0100ncopa(~ncopa@alpine/developer/ncopa) (*.net *.split)
2021-11-29 07:02:03 +0100kaol(~kaol@94-237-42-30.nl-ams1.upcloud.host) (*.net *.split)
2021-11-29 07:02:03 +0100pragma-(~chaos@user/pragmatic-chaos) (*.net *.split)
2021-11-29 07:02:03 +0100dextaa(~DV@user/dextaa) (*.net *.split)
2021-11-29 07:02:03 +0100joeyh_(joeyh@kitenet.net) (*.net *.split)
2021-11-29 07:02:03 +0100Rembane_(~Rembane@li346-36.members.linode.com) (*.net *.split)
2021-11-29 07:02:03 +0100piele(~piele@tbonesteak.creativeserver.net) (*.net *.split)
2021-11-29 07:02:03 +0100_\_(~o@user/ding) (*.net *.split)
2021-11-29 07:02:03 +0100jeffz(~user@lambda.xen.prgmr.com) (*.net *.split)
2021-11-29 07:02:03 +0100PHO`(~pho@akari.cielonegro.org) (*.net *.split)
2021-11-29 07:02:03 +0100sweater(~sweater@206.81.18.26) (*.net *.split)
2021-11-29 07:02:03 +0100lieven(~mal@ns2.wyrd.be) (*.net *.split)
2021-11-29 07:02:03 +0100meejah(~meejah@rutas.meejah.ca) (*.net *.split)
2021-11-29 07:02:03 +0100wz1000(~zubin@static.11.113.47.78.clients.your-server.de) (*.net *.split)
2021-11-29 07:02:03 +0100DigitalKiwi(~kiwi@2604:a880:400:d0::12fc:5001) (*.net *.split)
2021-11-29 07:02:03 +0100AkechiShiro(~licht@user/akechishiro) (*.net *.split)
2021-11-29 07:02:03 +0100enikar(~enikar@user/enikar) (*.net *.split)
2021-11-29 07:02:09 +0100landonf(landonf@mac68k.info)
2021-11-29 07:02:10 +0100kaol_(~kaol@94-237-42-30.nl-ams1.upcloud.host)
2021-11-29 07:02:11 +0100jeffz(~user@lambda.xen.prgmr.com)
2021-11-29 07:02:11 +0100Rembane(~Rembane@li346-36.members.linode.com)
2021-11-29 07:02:11 +0100choucavalier(~choucaval@peanutbuttervibes.com)
2021-11-29 07:02:13 +0100joeyh(joeyh@kitenet.net)
2021-11-29 07:02:14 +0100carbolymer(~carbolyme@dropacid.net)
2021-11-29 07:02:16 +0100meejah(~meejah@rutas.meejah.ca)
2021-11-29 07:02:20 +0100dka(~code-is-a@ns3059207.ip-193-70-33.eu)
2021-11-29 07:02:20 +0100piele(~piele@tbonesteak.creativeserver.net)
2021-11-29 07:02:21 +0100ncopa(~ncopa@gbr2-dev1.alpinelinux.org)
2021-11-29 07:02:22 +0100OscarH(~OscarH@90.201.86.195)
2021-11-29 07:02:24 +0100akspecs__(~akspecs@136-24-214-166.cab.webpass.net)
2021-11-29 07:02:25 +0100mniip(mniip@libera/staff/mniip)
2021-11-29 07:02:34 +0100wz1000(~zubin@static.11.113.47.78.clients.your-server.de)
2021-11-29 07:02:34 +0100lieven(~mal@ns2.wyrd.be)
2021-11-29 07:02:36 +0100farn(~farn@2a03:4000:7:3cd:d4ab:85ff:feeb:f505)
2021-11-29 07:02:37 +0100Franciman(~Franciman@mx1.fracta.dev)
2021-11-29 07:02:39 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2021-11-29 07:02:40 +0100noctux(~noctux@user/noctux)
2021-11-29 07:02:40 +0100AkechiShiro(~licht@2a01:e0a:5f9:9681:1473:3dff:fe42:56a9)
2021-11-29 07:02:41 +0100mjacob(~mjacob@adrastea.uberspace.de)
2021-11-29 07:02:48 +0100urdh(~urdh@user/urdh)
2021-11-29 07:02:48 +0100nurupo(~nurupo.ga@user/nurupo)
2021-11-29 07:02:48 +0100_\_(~o@user/ding)
2021-11-29 07:02:50 +0100akspecs__(~akspecs@136-24-214-166.cab.webpass.net) (Changing host)
2021-11-29 07:02:50 +0100akspecs__(~akspecs@user/akspecs)
2021-11-29 07:02:54 +0100dextaa(~DV@user/dextaa)
2021-11-29 07:03:31 +0100pragma-(~chaos@user/pragmatic-chaos)
2021-11-29 07:03:33 +0100jrm(~jrm@156.34.187.65)
2021-11-29 07:03:34 +0100mtjm(~mutantmel@2604:a880:2:d0::208b:d001)
2021-11-29 07:03:35 +0100nonzen(~nonzen@user/nonzen)
2021-11-29 07:03:38 +0100zero(~z@user/zero)
2021-11-29 07:03:39 +0100flukiluke(~m-7humut@2603:c023:c000:6c7e:8945:ad24:9113:a962)
2021-11-29 07:03:40 +0100sajith(~sajith@user/sajith)
2021-11-29 07:03:43 +0100DigitalKiwi(~kiwi@192.241.157.119)
2021-11-29 07:03:43 +0100fluxit(~fluxit@techsmix.net)
2021-11-29 07:03:46 +0100PHO`(~pho@akari.cielonegro.org)
2021-11-29 07:03:47 +0100xacktm(xacktm@user/xacktm)
2021-11-29 07:03:50 +0100cocreature(~moritz@2a03:b0c0:3:d0::c8:f001)
2021-11-29 07:03:53 +0100sweater(~sweater@206.81.18.26)
2021-11-29 07:04:37 +0100enikar(~enikar@user/enikar)
2021-11-29 07:06:24 +0100remexre(~remexre@user/remexre) (*.net *.split)
2021-11-29 07:06:24 +0100mstruebing(~maex@2001:41d0:8:93c7::1) (*.net *.split)
2021-11-29 07:06:24 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667) (*.net *.split)
2021-11-29 07:06:24 +0100zfnmxt(~zfnmxtzfn@user/zfnmxt) (*.net *.split)
2021-11-29 07:06:24 +0100jmcantrell(~jmcantrel@user/jmcantrell) (*.net *.split)
2021-11-29 07:06:24 +0100peddie(~peddie@2001:470:69fc:105::25d) (*.net *.split)
2021-11-29 07:06:24 +0100Deewiant(~deewiant@2001:470:69fc:105::2fd3) (*.net *.split)
2021-11-29 07:06:24 +0100spoonm(spoonm@inaba.spoonm.org) (*.net *.split)
2021-11-29 07:06:24 +0100cigsender(~cigsender@74.124.58.162) (*.net *.split)
2021-11-29 07:06:24 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd) (*.net *.split)
2021-11-29 07:06:24 +0100Magnus[m](~magthetch@2001:470:69fc:105::d1a7) (*.net *.split)
2021-11-29 07:06:24 +0100dagit(~dagit@2001:558:6025:38:6476:a063:d05a:44da) (*.net *.split)
2021-11-29 07:06:24 +0100teddyc(theodorc@cassarossa.samfundet.no) (*.net *.split)
2021-11-29 07:06:24 +0100rembo10(~rembo10@remulis.com) (*.net *.split)
2021-11-29 07:06:24 +0100Ram-Z_(~Ram-Z@li1814-254.members.linode.com) (*.net *.split)
2021-11-29 07:06:24 +0100shanemikel(~shanemike@desk.roadwar.net) (*.net *.split)
2021-11-29 07:06:24 +0100lstor(~lstor@user/lstor) (*.net *.split)
2021-11-29 07:06:24 +0100andreas303(andreas303@ip227.orange.bnc4free.com) (*.net *.split)
2021-11-29 07:06:24 +0100xdej(~xdej@quatramaran.salle-s.org) (*.net *.split)
2021-11-29 07:06:24 +0100auri(~quassel@fsf/member/auri) (*.net *.split)
2021-11-29 07:06:24 +0100dyniec(~dyniec@mail.dybiec.info) (*.net *.split)
2021-11-29 07:06:24 +0100Xe(~cadey@tailscale/xe) (*.net *.split)
2021-11-29 07:06:32 +0100cigsender(~cigsender@74.124.58.162)
2021-11-29 07:06:33 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667)
2021-11-29 07:06:37 +0100lstor(~lstor@user/lstor)
2021-11-29 07:06:40 +0100andreas303(andreas303@ip227.orange.bnc4free.com)
2021-11-29 07:06:40 +0100rembo10(~rembo10@remulis.com)
2021-11-29 07:06:41 +0100dyniec(~dyniec@mail.dybiec.info)
2021-11-29 07:06:42 +0100mstruebing(~maex@2001:41d0:8:93c7::1)
2021-11-29 07:06:42 +0100teddyc(theodorc@cassarossa.samfundet.no)
2021-11-29 07:06:43 +0100remexre(~remexre@user/remexre)
2021-11-29 07:06:59 +0100Ram-Z(~Ram-Z@li1814-254.members.linode.com)
2021-11-29 07:07:02 +0100Xe(~cadey@tailscale/xe)
2021-11-29 07:07:04 +0100shanemikel(~shanemike@desk.roadwar.net)
2021-11-29 07:07:13 +0100chronon(~chronon@user/chronon)
2021-11-29 07:07:26 +0100peddie(~peddie@2001:470:69fc:105::25d)
2021-11-29 07:07:37 +0100zfnmxt(~zfnmxtzfn@2001:470:69fc:105::2b32)
2021-11-29 07:07:48 +0100auri(~quassel@fsf/member/auri)
2021-11-29 07:08:05 +0100spoonm(spoonm@inaba.spoonm.org)
2021-11-29 07:08:05 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd)
2021-11-29 07:08:05 +0100Magnus[m](~magthetch@2001:470:69fc:105::d1a7)
2021-11-29 07:08:20 +0100Deewiant(~deewiant@2001:470:69fc:105::2fd3)
2021-11-29 07:10:27 +0100sweater(~sweater@206.81.18.26) (Ping timeout: 256 seconds)
2021-11-29 07:10:27 +0100carbolymer(~carbolyme@dropacid.net) (Ping timeout: 256 seconds)
2021-11-29 07:10:51 +0100carbolymer(~carbolyme@dropacid.net)
2021-11-29 07:12:04 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 07:12:06 +0100sweater(~sweater@206.81.18.26)
2021-11-29 07:13:26 +0100namkeleser(~namkelese@101.175.102.188)
2021-11-29 07:13:50 +0100jmcantrell(~jmcantrel@user/jmcantrell)
2021-11-29 07:15:01 +0100hololeap_(~hololeap@user/hololeap)
2021-11-29 07:15:30 +0100hololeap(~hololeap@user/hololeap) (Ping timeout: 276 seconds)
2021-11-29 07:17:24 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 07:18:03 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net)
2021-11-29 07:21:34 +0100jmorris(uid433911@id-433911.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-29 07:22:40 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-29 07:22:52 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 07:24:03 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374)
2021-11-29 07:26:00 +0100x_kuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-11-29 07:30:19 +0100hololeap_hololeap
2021-11-29 07:35:38 +0100abhixec(~abhixec@c-67-169-139-16.hsd1.ca.comcast.net) (Quit: leaving)
2021-11-29 07:36:54 +0100takuan(~takuan@178-116-218-225.access.telenet.be)
2021-11-29 07:38:11 +0100deadmarshal(~deadmarsh@95.38.231.110) (Ping timeout: 265 seconds)
2021-11-29 07:44:26 +0100deadmarshal(~deadmarsh@95.38.231.110)
2021-11-29 07:45:22 +0100ThatLinuxGuy(~sand49@2001:8003:8431:d200:220b:84b2:a334:cbad)
2021-11-29 07:46:09 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 07:49:18 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 265 seconds)
2021-11-29 08:02:18 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:04:46 +0100motherfsck(~motherfsc@user/motherfsck)
2021-11-29 08:06:26 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:06:43 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:08:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:08:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:08:49 +0100deadmarshal(~deadmarsh@95.38.231.110) (Ping timeout: 256 seconds)
2021-11-29 08:10:29 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:10:46 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:11:17 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 08:12:29 +0100deadmarshal(~deadmarsh@95.38.231.110)
2021-11-29 08:13:28 +0100notzmv(~zmv@user/notzmv) (Ping timeout: 265 seconds)
2021-11-29 08:15:42 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-29 08:16:50 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Ping timeout: 252 seconds)
2021-11-29 08:18:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:19:08 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:19:32 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-29 08:20:15 +0100deadmarshal_(~deadmarsh@95.38.113.69)
2021-11-29 08:20:21 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-11-29 08:21:51 +0100deadmarshal(~deadmarsh@95.38.231.110) (Ping timeout: 256 seconds)
2021-11-29 08:23:31 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:24:49 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 08:26:11 +0100zmt01(~zmt00@user/zmt00) (Ping timeout: 245 seconds)
2021-11-29 08:29:49 +0100mario(~mario@31.147.205.13)
2021-11-29 08:31:44 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:33:24 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:33:42 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:33:44 +0100Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2021-11-29 08:33:53 +0100nautical(~nautical@2601:602:900:1630::396f)
2021-11-29 08:35:33 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:35:50 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:37:30 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:37:47 +0100ThatLinuxGuy(~sand49@2001:8003:8431:d200:220b:84b2:a334:cbad) (Quit: Konversation terminated!)
2021-11-29 08:37:48 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:38:34 +0100ThatLinuxGuy(~sand49@2001:8003:8431:d200:220b:84b2:a334:cbad)
2021-11-29 08:38:36 +0100fendor(~fendor@77.119.220.212.wireless.dyn.drei.com)
2021-11-29 08:40:10 +0100rkrishnan(~user@122.171.76.46)
2021-11-29 08:42:15 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 08:44:04 +0100deadmarshal_(~deadmarsh@95.38.113.69) (Ping timeout: 264 seconds)
2021-11-29 08:44:04 +0100notzmv(~zmv@user/notzmv)
2021-11-29 08:46:38 +0100jmorris(uid433911@id-433911.hampstead.irccloud.com)
2021-11-29 08:46:54 +0100fendor(~fendor@77.119.220.212.wireless.dyn.drei.com) (Quit: Leaving)
2021-11-29 08:52:45 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2021-11-29 08:53:14 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:56:42 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 08:56:59 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 08:58:52 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-11-29 09:01:31 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 09:03:55 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 09:04:24 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 09:04:50 +0100mvk(~mvk@2607:fea8:5cc1:fa00::4702) (Ping timeout: 260 seconds)
2021-11-29 09:09:28 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:11:04 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 264 seconds)
2021-11-29 09:13:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:13:40 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:14:42 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:5742:827:3cc1:1d6)
2021-11-29 09:15:53 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 09:16:04 +0100bollu(uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-29 09:19:37 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:19:54 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:21:15 +0100namkeleser(~namkelese@101.175.102.188) (Quit: Client closed)
2021-11-29 09:23:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:23:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:24:32 +0100jbox(~jbox@user/jbox) (Ping timeout: 240 seconds)
2021-11-29 09:24:58 +0100econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2021-11-29 09:27:33 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:27:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:28:49 +0100dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be)
2021-11-29 09:30:22 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-29 09:32:02 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:32:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:32:30 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374) (Quit: Leaving)
2021-11-29 09:32:45 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374)
2021-11-29 09:32:59 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374) (Remote host closed the connection)
2021-11-29 09:33:17 +0100chomwitt(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374)
2021-11-29 09:35:20 +0100michalz(~michalz@185.246.204.62)
2021-11-29 09:36:08 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2)
2021-11-29 09:38:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:38:21 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 256 seconds)
2021-11-29 09:38:33 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-29 09:38:37 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:39:46 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2) (Remote host closed the connection)
2021-11-29 09:42:26 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 09:42:53 +0100lavaman(~lavaman@98.38.249.169) (Remote host closed the connection)
2021-11-29 09:43:29 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 09:44:05 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:5742:827:3cc1:1d6) (Quit: WeeChat 2.8)
2021-11-29 09:46:39 +0100random-jellyfish(~random-je@user/random-jellyfish)
2021-11-29 09:46:57 +0100chele(~chele@user/chele)
2021-11-29 09:47:59 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2021-11-29 09:49:39 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:49:56 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:51:36 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 09:51:50 +0100Farzad(~FarzadBek@37.98.108.116)
2021-11-29 09:51:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 09:53:14 +0100ThatLinuxGuy(~sand49@2001:8003:8431:d200:220b:84b2:a334:cbad) (Quit: Konversation terminated!)
2021-11-29 09:56:01 +0100acidjnk_new(~acidjnk@p200300d0c7271e27ac7cfecfdd63434d.dip0.t-ipconnect.de)
2021-11-29 09:57:29 +0100jstolarek(~jstolarek@137.220.120.162)
2021-11-29 09:57:31 +0100machinedgod(~machinedg@24.105.81.50)
2021-11-29 09:57:55 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:283f:851a:b183:49fe)
2021-11-29 10:00:08 +0100Domino[m](~dominothe@2001:470:69fc:105::1:271b) (Quit: You have been kicked for being idle)
2021-11-29 10:01:14 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-11-29 10:02:54 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:03:11 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:03:33 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Remote host closed the connection)
2021-11-29 10:03:42 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 10:06:18 +0100Gurkenglas(~Gurkengla@dslb-002-203-144-204.002.203.pools.vodafone-ip.de)
2021-11-29 10:08:34 +0100 <Square> im planning on saving data using a some sort of serialization. To deserialize i need the same Type implementation is used to save it. Does anyone know of some neat mechanism to accomplish this. I was thinking i could get an hash of the type with Template Haskell but it feels like a cumbersome route.
2021-11-29 10:09:31 +0100random-jellyfish(~random-je@user/random-jellyfish) (Ping timeout: 256 seconds)
2021-11-29 10:09:51 +0100 <Square> To deserialize i need assert the same Type implementation is used that saved it*
2021-11-29 10:10:21 +0100tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz)
2021-11-29 10:13:55 +0100gehmehgeh(~user@user/gehmehgeh) (Remote host closed the connection)
2021-11-29 10:14:38 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-29 10:15:26 +0100arkeet(~arkeet@moriya.ca)
2021-11-29 10:16:44 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-11-29 10:17:03 +0100mario(~mario@31.147.205.13) (Quit: Leaving)
2021-11-29 10:17:28 +0100allbery_b(~geekosaur@xmonad/geekosaur)
2021-11-29 10:17:28 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Killed (NickServ (GHOST command used by allbery_b)))
2021-11-29 10:17:31 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 10:17:31 +0100allbery_bgeekosaur
2021-11-29 10:20:49 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:21:06 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:24:30 +0100max22-(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr)
2021-11-29 10:26:13 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2)
2021-11-29 10:26:28 +0100cfricke(~cfricke@user/cfricke)
2021-11-29 10:31:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:31:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:33:37 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3) (Remote host closed the connection)
2021-11-29 10:37:49 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:38:07 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:38:11 +0100chomwitt(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374) (Read error: Connection reset by peer)
2021-11-29 10:38:18 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374)
2021-11-29 10:40:10 +0100_bo(~bo@79.171.122.236)
2021-11-29 10:41:50 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:42:07 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:45:45 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:45:50 +0100LiaoTao_(~LiaoTao@gateway/tor-sasl/liaotao) (Remote host closed the connection)
2021-11-29 10:45:57 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-11-29 10:46:02 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:46:13 +0100LiaoTao(~LiaoTao@gateway/tor-sasl/liaotao)
2021-11-29 10:47:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:48:11 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:49:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:50:08 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:50:12 +0100mario(~mario@31.147.205.13)
2021-11-29 10:50:14 +0100mario_(~mario@31.147.205.13)
2021-11-29 10:52:26 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:52:43 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:54:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:54:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:54:45 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de) (Quit: WeeChat 3.3)
2021-11-29 10:55:00 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2021-11-29 10:56:50 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 10:57:07 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 10:58:32 +0100mario(~mario@31.147.205.13) (Quit: Leaving)
2021-11-29 10:58:43 +0100mario_(~mario@31.147.205.13) (Quit: Leaving)
2021-11-29 11:01:24 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:01:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:02:36 +0100Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2021-11-29 11:02:38 +0100Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 265 seconds)
2021-11-29 11:02:47 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 256 seconds)
2021-11-29 11:03:54 +0100Lord_of_Life_Lord_of_Life
2021-11-29 11:07:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:08:09 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:08:31 +0100mestre(~mestre@191.177.175.57)
2021-11-29 11:08:52 +0100aliosablack(~chomwitt@2a02:587:dc16:f200:12c3:7bff:fe6d:d374) (Read error: Connection reset by peer)
2021-11-29 11:11:01 +0100xkuru(~xkuru@user/xkuru)
2021-11-29 11:11:09 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 11:13:28 +0100 <arahael> Square: The default answer is json, why doesn't that work for you?
2021-11-29 11:13:57 +0100 <arahael> Square: (The answer informs the discussion, I suspect)
2021-11-29 11:14:02 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-11-29 11:14:08 +0100dminuosois unsure why JSON is always thrown around as "the answer"
2021-11-29 11:15:20 +0100 <arahael> dminuoso: Pretty sure it's written in the scriptures somewhere. Somewhere.
2021-11-29 11:15:22 +0100 <[exa]> dminuoso: ask a random internet service nowadays, they always send json
2021-11-29 11:15:29 +0100 <dminuoso> [exa]: Yes, so?
2021-11-29 11:15:45 +0100 <dminuoso> Why does that make "JSON" as "the default answer" when it comes to serializing data?
2021-11-29 11:15:56 +0100 <dminuoso> The default answer should be "what are your requirements?"
2021-11-29 11:16:03 +0100 <arahael> dminuoso: The point is more that whilst there's many things that may be wrong about JSON, it's a reasonable starting point.
2021-11-29 11:16:16 +0100 <dminuoso> Asking about requirements is a reasonable starting point.
2021-11-29 11:16:23 +0100 <arahael> Yeah, that works too. :)
2021-11-29 11:16:39 +0100 <arahael> But so, too, do "why" questions!
2021-11-29 11:17:00 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 11:17:42 +0100jakalx(~jakalx@base.jakalx.net)
2021-11-29 11:20:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:21:11 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:21:29 +0100cheater(~Username@user/cheater) (Ping timeout: 265 seconds)
2021-11-29 11:21:38 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-11-29 11:21:40 +0100bollu(uid233390@id-233390.helmsley.irccloud.com)
2021-11-29 11:22:11 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 252 seconds)
2021-11-29 11:24:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:25:09 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:25:49 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 11:28:49 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:29:07 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:32:47 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:33:05 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:34:02 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3)
2021-11-29 11:36:45 +0100sunarch(uid526836@user/sunarch) (Quit: Connection closed for inactivity)
2021-11-29 11:38:40 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3) (Ping timeout: 264 seconds)
2021-11-29 11:40:01 +0100kennyd(~bc8165b6@cerf.good1.com) (Quit: CGI:IRC)
2021-11-29 11:41:22 +0100arahael(~arahael@125-209-128-15.tpgi.com.au) (Ping timeout: 256 seconds)
2021-11-29 11:41:59 +0100mmhat(~mmh@55d431d8.access.ecotel.net)
2021-11-29 11:43:39 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:43:57 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:45:50 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:46:07 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:47:20 +0100nuh^(~nuh@68.101.58.90) (Remote host closed the connection)
2021-11-29 11:48:36 +0100trcc(~trcc@users-1190.st.net.au.dk)
2021-11-29 11:54:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:54:37 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 11:56:17 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 11:56:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:00:02 +0100mario(~mario@31.147.205.13)
2021-11-29 12:01:12 +0100cheater(~Username@user/cheater)
2021-11-29 12:01:37 +0100mario(~mario@31.147.205.13) (Client Quit)
2021-11-29 12:07:06 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 12:07:14 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de)
2021-11-29 12:07:36 +0100emf(~emf@2620:10d:c090:400::5:99c8) (Quit: emf)
2021-11-29 12:11:50 +0100euouae(~euouae@user/euouae)
2021-11-29 12:12:16 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2021-11-29 12:13:04 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 12:14:44 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:15:01 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:16:27 +0100xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-11-29 12:19:12 +0100 <Square> arahael. I dont mean the data, but the datastructure itself? If there is a way to describe the datastructure with json sure, i could hash that.
2021-11-29 12:19:43 +0100 <Square> data structure / "the type"
2021-11-29 12:21:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:21:40 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:23:20 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:23:38 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:25:18 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:25:36 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:27:16 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:27:34 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:29:14 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:29:32 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:31:12 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:31:29 +0100Farzad(~FarzadBek@37.98.108.116) (Quit: Leaving)
2021-11-29 12:31:30 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:33:10 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:33:14 +0100 <geekosaur> so you're looking for a versioned data structure?
2021-11-29 12:33:28 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:33:39 +0100 <geekosaur> kinda like erlang?
2021-11-29 12:35:40 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:35:53 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 252 seconds)
2021-11-29 12:35:58 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:37:24 +0100 <dminuoso> Square: Id be careful with hashing type information since you might have internal changes that are not representational
2021-11-29 12:39:39 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:39:57 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:42:21 +0100 <Square> geekosaur, yes its a type versioning scheme. But it relies on developers not changing the scheme in between releases / or they know the implications of doing it. Basically i just want an assert no one tries to deserialize data into a possible modified datastructure. If its easy to accomplish.
2021-11-29 12:42:59 +0100 <geekosaur> :t Fingerprint
2021-11-29 12:43:00 +0100 <lambdabot> error:
2021-11-29 12:43:00 +0100 <lambdabot> Data constructor not in scope: Fingerprint
2021-11-29 12:43:03 +0100 <geekosaur> bah
2021-11-29 12:43:41 +0100 <geekosaur> ghc associates fingerprints with data constructors. might be a little too restrictive though as I don't think it's guaranteed stable across compiles
2021-11-29 12:44:10 +0100 <geekosaur> oh wait, it's not a datacon
2021-11-29 12:44:31 +0100dsrt^(~dsrt@68.101.58.90)
2021-11-29 12:45:24 +0100mario(~mario@31.147.205.13)
2021-11-29 12:45:39 +0100 <geekosaur> https://downloads.haskell.org/ghc/latest/docs/html/libraries/base-4.16.0.0/Data-Typeable.html#v:ty…
2021-11-29 12:46:10 +0100 <geekosaur> > typerepFingerprint (typeOf (1::Int))
2021-11-29 12:46:11 +0100 <lambdabot> error:
2021-11-29 12:46:12 +0100 <lambdabot> • Variable not in scope: typerepFingerprint :: TypeRep -> t
2021-11-29 12:46:12 +0100 <lambdabot> • Perhaps you meant one of these:
2021-11-29 12:46:24 +0100 <geekosaur> @let import Data.Typeable
2021-11-29 12:46:25 +0100mario(~mario@31.147.205.13) (Remote host closed the connection)
2021-11-29 12:46:25 +0100 <lambdabot> Defined.
2021-11-29 12:46:28 +0100 <geekosaur> > typerepFingerprint (typeOf (1::Int))
2021-11-29 12:46:29 +0100 <lambdabot> error:
2021-11-29 12:46:29 +0100 <lambdabot> • Variable not in scope: typerepFingerprint :: TypeRep -> t
2021-11-29 12:46:29 +0100 <lambdabot> • Perhaps you meant one of these:
2021-11-29 12:46:42 +0100 <geekosaur> > typeRepFingerprint (typeOf (1::Int))
2021-11-29 12:46:44 +0100 <lambdabot> b1460030427ac0fa458cbf347f168b53
2021-11-29 12:46:54 +0100 <geekosaur> % typeRepFingerprint (typeOf (1::Int))
2021-11-29 12:46:54 +0100 <yahb> geekosaur: b1460030427ac0fa458cbf347f168b53
2021-11-29 12:46:59 +0100 <geekosaur> oh good
2021-11-29 12:48:37 +0100boxscape_(~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de)
2021-11-29 12:50:25 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:50:42 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:50:49 +0100 <geekosaur> you need a Typeable constraint on your type, but this is just bookkeeping: ghc always makes Typeable representations of types for internal use
2021-11-29 12:51:31 +0100 <geekosaur> s/on your type/where you make use of this/
2021-11-29 12:51:39 +0100 <geekosaur> all types have Typeable, as I said
2021-11-29 12:51:46 +0100 <xerxesphainon[m]> i want to learn more about structures. arrays. data trees. integers. binary. machine code. compilimng. im not sure where to start. i nee to modify a mac os kernal to run without sse4.2 instruction set
2021-11-29 12:51:57 +0100 <xerxesphainon[m]> im sorry for just walking in you guys
2021-11-29 12:56:39 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 12:56:57 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 12:58:28 +0100kuribas(~user@ptr-25vy0i9nuu9joot4en6.18120a2.ip6.access.telenet.be)
2021-11-29 13:00:36 +0100 <geekosaur> this probably isn't the channel for that
2021-11-29 13:01:44 +0100 <geekosaur> apple doesn't release source for their kernel, or it'd be relatively easy. you'd have to spend a lot of time with machine code dumps identifying the code that not only uses sse4.2 math but also accesses sse4.2 registers, and patch in replacements that emulate them
2021-11-29 13:02:57 +0100 <geekosaur> and those replacements have to be aware of which registers are available and which have to be spilled to the stack to make room for the emulated opcodes to work with
2021-11-29 13:03:10 +0100Midjak(~Midjak@may53-1-78-226-116-92.fbx.proxad.net)
2021-11-29 13:05:09 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:05:11 +0100 <geekosaur> hm
2021-11-29 13:05:27 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:05:28 +0100 <geekosaur> @let data A a = A a
2021-11-29 13:05:29 +0100 <lambdabot> Defined.
2021-11-29 13:05:32 +0100 <Cajun> im certain there would be quite a few very detailed and very non-haskell textbooks about those things, like compiler design and structures & algorithms
2021-11-29 13:05:41 +0100 <geekosaur> % let data A a = A a
2021-11-29 13:05:41 +0100 <yahb> geekosaur: ; <interactive>:31:5: error: parse error on input `data'
2021-11-29 13:05:46 +0100 <geekosaur> % data A a = A a
2021-11-29 13:05:47 +0100 <yahb> geekosaur:
2021-11-29 13:06:13 +0100 <geekosaur> > typeRepFingerprint (typeOf (A (1::Int)))
2021-11-29 13:06:14 +0100 <lambdabot> 9fdf0d45d7e67ce04c73dcb9ef131cd5
2021-11-29 13:06:22 +0100 <geekosaur> % typeRepFingerprint (typeOf (A (1::Int)))
2021-11-29 13:06:22 +0100 <yahb> geekosaur: 04fc6ed32dc1e391c6a42e2f744b75b8
2021-11-29 13:06:29 +0100 <geekosaur> that's not so hot
2021-11-29 13:06:53 +0100 <geekosaur> guess Fingerprint won't help with versioned serialization after all :(
2021-11-29 13:06:56 +0100 <Cajun> is that a ghc version thing?
2021-11-29 13:07:32 +0100 <geekosaur> dunno
2021-11-29 13:08:46 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 13:09:22 +0100 <Cajun> > !ghci -V
2021-11-29 13:09:23 +0100 <lambdabot> <hint>:1:7: error: parse error on input ‘-’
2021-11-29 13:09:24 +0100 <geekosaur> I was hopeful when Int worked out the same for both but then it occurred to me that it might be too wired-in to vary
2021-11-29 13:09:38 +0100 <geekosaur> @version
2021-11-29 13:09:38 +0100 <lambdabot> lambdabot 5.3.0.1
2021-11-29 13:09:38 +0100 <lambdabot> git clone https://github.com/lambdabot/lambdabot
2021-11-29 13:09:43 +0100 <geekosaur> bah
2021-11-29 13:09:58 +0100 <Cajun> thats not a particularly helpful version number lol
2021-11-29 13:10:03 +0100 <geekosaur> anyway lambdabot isnb't ghci so you can't use things like !
2021-11-29 13:10:49 +0100 <merijn> > System.Info.compilerVersion
2021-11-29 13:10:51 +0100 <lambdabot> error:
2021-11-29 13:10:51 +0100 <lambdabot> Not in scope: ‘System.Info.compilerVersion’
2021-11-29 13:10:51 +0100 <lambdabot> No module named ‘System.Info’ is imported.
2021-11-29 13:10:53 +0100 <merijn> hmm
2021-11-29 13:10:58 +0100 <merijn> how did you add imports again? :p
2021-11-29 13:11:01 +0100 <Square> geekosaur, sorry. Wandered away a bit there. Interesting. Is it consistent between versions of haskell you think?
2021-11-29 13:11:03 +0100 <Cajun> > import System.Info
2021-11-29 13:11:05 +0100 <lambdabot> <hint>:1:1: error: parse error on input ‘import’
2021-11-29 13:11:10 +0100 <merijn> % System.Info.compilerVersion
2021-11-29 13:11:10 +0100 <yahb> merijn: Version {versionBranch = [9,0], versionTags = []}
2021-11-29 13:11:23 +0100 <geekosaur> Square, no, see the later one
2021-11-29 13:11:27 +0100 <merijn> Cajun: That doesn't work, because lambdabot isn't ghci :p
2021-11-29 13:11:34 +0100 <geekosaur> (startinbg with "data A a")
2021-11-29 13:12:08 +0100 <geekosaur> basically Int is wired in so it always generates the same fingerprint. user defined types don't
2021-11-29 13:12:34 +0100 <geekosaur> @let import System.Info
2021-11-29 13:12:35 +0100 <lambdabot> Defined.
2021-11-29 13:12:37 +0100xkuru(~xkuru@user/xkuru)
2021-11-29 13:12:42 +0100 <geekosaur> > compilerVersion
2021-11-29 13:12:44 +0100 <lambdabot> Version {versionBranch = [8,10], versionTags = []}
2021-11-29 13:12:53 +0100 <Cajun> that would probably explain it
2021-11-29 13:13:06 +0100 <Square> If i find a way to export a schema using this lib https://typedefs.com/ . I think i should be safe.
2021-11-29 13:13:28 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 264 seconds)
2021-11-29 13:13:57 +0100 <Square> I wont have any more complicated types than it can handle.
2021-11-29 13:14:00 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2021-11-29 13:15:52 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2) (Ping timeout: 264 seconds)
2021-11-29 13:15:55 +0100justache(~justache@user/justache) (Ping timeout: 268 seconds)
2021-11-29 13:16:07 +0100Megant(megant@user/megant) (Ping timeout: 260 seconds)
2021-11-29 13:17:43 +0100Megant(~kaitsu@user/megant)
2021-11-29 13:18:37 +0100justache(~justache@user/justache)
2021-11-29 13:20:27 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:20:45 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:21:32 +0100FragByte(~christian@user/fragbyte) (Ping timeout: 240 seconds)
2021-11-29 13:22:07 +0100FragByte(~christian@user/fragbyte)
2021-11-29 13:22:21 +0100thevishy(~Nishant@2405:201:f005:c007:f92b:9823:fedf:deab)
2021-11-29 13:23:19 +0100justache(~justache@user/justache) (Ping timeout: 256 seconds)
2021-11-29 13:25:00 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:25:17 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:27:33 +0100arahael(~arahael@203.166.224.240)
2021-11-29 13:28:00 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-11-29 13:28:11 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit)
2021-11-29 13:28:21 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-11-29 13:29:42 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2)
2021-11-29 13:30:59 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-11-29 13:31:00 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Client Quit)
2021-11-29 13:32:14 +0100pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2021-11-29 13:33:54 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:34:10 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:36:00 +0100TranquilEcho(~grom@user/tranquilecho)
2021-11-29 13:38:01 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:38:18 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:39:58 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:40:16 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:42:34 +0100justache(~justache@user/justache)
2021-11-29 13:44:38 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-29 13:44:48 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-11-29 13:47:07 +0100justache(~justache@user/justache) (Ping timeout: 256 seconds)
2021-11-29 13:51:03 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:51:21 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:51:34 +0100jmorris(uid433911@id-433911.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-29 13:51:49 +0100Farzad(~FarzadBek@37.98.108.116)
2021-11-29 13:52:12 +0100justache(~justache@user/justache)
2021-11-29 13:55:01 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 13:55:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 13:56:05 +0100Topsi(~Tobias@dyndsl-095-033-088-116.ewe-ip-backbone.de)
2021-11-29 13:56:40 +0100justache(~justache@user/justache) (Ping timeout: 264 seconds)
2021-11-29 13:57:05 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 14:00:27 +0100bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 276 seconds)
2021-11-29 14:02:04 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 264 seconds)
2021-11-29 14:02:45 +0100justache(~justache@user/justache)
2021-11-29 14:05:14 +0100 <dminuoso> Mmm, is there a way to gen-bounds on a test-suite?
2021-11-29 14:05:41 +0100 <dminuoso> Or is copy+pasting the build-depends from the test-suite into an appropriate library build-depends, then running gen-bounds the way?
2021-11-29 14:07:11 +0100justache(~justache@user/justache) (Ping timeout: 252 seconds)
2021-11-29 14:07:41 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 14:08:07 +0100fef(~thedawn@user/thedawn)
2021-11-29 14:08:42 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net)
2021-11-29 14:10:22 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 14:10:39 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 14:10:40 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 14:12:20 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 14:12:38 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 14:15:31 +0100 <geekosaur> or using an include section to put the build-depends into both, then running gen-bounds?
2021-11-29 14:16:04 +0100 <dminuoso> Mmm I guess.
2021-11-29 14:16:16 +0100 <dminuoso> It's the same thing really :)
2021-11-29 14:16:34 +0100justache(~justache@user/justache)
2021-11-29 14:16:36 +0100 <geekosaur> aside from not needing to make sure you update both later
2021-11-29 14:17:09 +0100 <dminuoso> Sure, I mean just commenting in/out that `include` in my executable/library component is more comfortable
2021-11-29 14:17:41 +0100 <dminuoso> But I guess what I really want is some `cabal add` type of command that implicitly adds the component with a suitable PVP bound on the highest possible version it can find a build plan with.
2021-11-29 14:18:19 +0100 <dminuoso> otoh such a command would decrease the value of hackage - the bar to adding dependencies better be high. :>
2021-11-29 14:20:04 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 264 seconds)
2021-11-29 14:20:56 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2021-11-29 14:21:07 +0100alzgh(~alzgh@user/alzgh) (Ping timeout: 256 seconds)
2021-11-29 14:21:21 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 14:23:24 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 14:25:53 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-11-29 14:28:57 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 14:32:25 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 14:32:41 +0100slack1256(~slack1256@191.125.99.210)
2021-11-29 14:32:43 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 14:33:35 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 256 seconds)
2021-11-29 14:33:58 +0100 <Hecate> dminuoso: would you still recommend https://github.com/dminuoso/servant-prometheus ?
2021-11-29 14:34:07 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 14:34:55 +0100alzgh(alzgh@user/alzgh)
2021-11-29 14:35:04 +0100 <slack1256> Hello. Is GHC 9.0.1 a valid version or is it a "beta" for the 9.x branch? I feel like GHC 9.2.1 was the real first release of the 9.x branch.
2021-11-29 14:35:18 +0100 <Hecate> slack1256: it's a beta, don't invest in it
2021-11-29 14:35:29 +0100 <merijn> slack1256: It's not beta, but also, it is :p
2021-11-29 14:35:40 +0100 <slack1256> I knew it!
2021-11-29 14:36:12 +0100 <merijn> Even numbered releases are always proper releases, but not all proper releases are as proper as you'd like :p
2021-11-29 14:36:31 +0100 <merijn> Especially the x.y.1 ones
2021-11-29 14:38:03 +0100 <dminuoso> Hecate: I think exarkun maintains some up-to-date fork?
2021-11-29 14:38:06 +0100 <slack1256> So 9.2.1 is also a non proper release?
2021-11-29 14:38:07 +0100 <slack1256> Damn.
2021-11-29 14:38:54 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-11-29 14:39:12 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de)
2021-11-29 14:39:18 +0100 <yushyin> i played a bit with 9.2.1, works for me, but no HLS support yet.
2021-11-29 14:40:07 +0100 <exarkun> Hello what
2021-11-29 14:40:29 +0100 <exarkun> Oh servant-prometheus, huh
2021-11-29 14:40:37 +0100 <exarkun> "maintain" might be putting it a little strongly
2021-11-29 14:43:09 +0100 <dminuoso> Your fork includes the work of kirelagin it seems
2021-11-29 14:43:17 +0100 <dminuoso> The one I never merged
2021-11-29 14:43:29 +0100 <dminuoso> Think something came up, and then I forgot all about it
2021-11-29 14:43:43 +0100 <dminuoso> I really want servant-prometheus to be a thing and be on hackage.
2021-11-29 14:44:20 +0100 <dminuoso> exarkun: Are there any notable todos on your fork?
2021-11-29 14:44:29 +0100 <geekosaur> 9.2.1 was intended to be "proper" but some severe codegen bugs in Apple M1 support were found post-release
2021-11-29 14:45:14 +0100 <geekosaur> aside from that I'd say it's proper
2021-11-29 14:45:36 +0100 <merijn> slack1256: .1 releases always tend to always have some sleeper bug that gets noticed to late :p
2021-11-29 14:45:45 +0100 <exarkun> dminuoso: I don't think so. At least, it is working well enough that it is running in my almost-production system and I sort of forgot about it.
2021-11-29 14:46:30 +0100 <Hecate> dminuoso: ok thanks!
2021-11-29 14:48:10 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 14:48:27 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 14:48:32 +0100 <slack1256> I wonder, if I use the llvm backend, would I have stability bugs on M1? I know that GHC targets an older/stable version on LLVM.
2021-11-29 14:48:58 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 14:49:13 +0100 <geekosaur> llvm should be fine
2021-11-29 14:49:19 +0100 <geekosaur> and is on 8.10.7
2021-11-29 14:49:27 +0100dsrt^(~dsrt@68.101.58.90) (Ping timeout: 256 seconds)
2021-11-29 14:50:04 +0100 <geekosaur> native support has sign extension issues at the cmm layer that they're still trying to figure out if they can fix without completely redoing the path from core to cmm
2021-11-29 14:50:22 +0100dsrt^(~dsrt@68.101.58.90)
2021-11-29 14:51:52 +0100 <slack1256> I will try to build our project and see how it goes.
2021-11-29 14:52:02 +0100Typedfern(~Typedfern@171.red-83-51-60.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2021-11-29 14:54:16 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2021-11-29 14:56:14 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-11-29 14:59:11 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 14:59:28 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:01:13 +0100max22-(~maxime@lfbn-ren-1-762-224.w81-53.abo.wanadoo.fr) (Ping timeout: 250 seconds)
2021-11-29 15:03:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 15:03:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:03:54 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf)
2021-11-29 15:05:10 +0100Typedfern(~Typedfern@75.red-88-22-25.staticip.rima-tde.net)
2021-11-29 15:05:53 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 256 seconds)
2021-11-29 15:08:00 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 15:08:04 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk)
2021-11-29 15:08:17 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:08:45 +0100 <xerxesphainon[m]> this is a language
2021-11-29 15:08:51 +0100 <xerxesphainon[m]> similar to lua
2021-11-29 15:08:56 +0100 <xerxesphainon[m]> or rubyh
2021-11-29 15:09:04 +0100 <xerxesphainon[m]> can i get in on this?
2021-11-29 15:11:52 +0100 <merijn> Of all the languages I'd call Haskell are similar too, Ruby and Lua are *definitely* not ones I'd consider similar :p
2021-11-29 15:13:18 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 15:13:21 +0100 <hpc> ruby does have that whole "function do {code block}" thing going on
2021-11-29 15:13:45 +0100 <hpc> xerxesphainon[m]: haskell is quite unlike anything you have likely used before
2021-11-29 15:13:59 +0100 <hpc> https://www.haskell.org/documentation/ can get you started
2021-11-29 15:14:34 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 15:15:06 +0100 <slack1256> It seems -fllvm is working on the M1 :woah: .
2021-11-29 15:17:10 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 15:17:28 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:17:29 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 15:17:47 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2021-11-29 15:17:53 +0100reumeth(~reumeth@user/reumeth)
2021-11-29 15:19:24 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 15:22:51 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-11-29 15:22:56 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 15:23:14 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de)
2021-11-29 15:25:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 15:25:59 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:26:37 +0100 <kuribas> hpc: I remember being amazed by ruby code blocks, until I realised they are just lambdas.
2021-11-29 15:27:06 +0100 <merijn> I tried to make a typed python that included those kinda code blocks
2021-11-29 15:27:24 +0100 <merijn> Quickly realised it was basically 'IO ()' and I was reinventing Haskell, poorly. So I stopped :p
2021-11-29 15:27:59 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2021-11-29 15:28:40 +0100max22-(~maxime@2a01cb0883359800844aee1a010c5cf0.ipv6.abo.wanadoo.fr)
2021-11-29 15:30:25 +0100epolanski(uid312403@id-312403.helmsley.irccloud.com)
2021-11-29 15:33:39 +0100alzgh(alzgh@user/alzgh) (Ping timeout: 256 seconds)
2021-11-29 15:37:32 +0100alzgh(alzgh@user/alzgh)
2021-11-29 15:38:10 +0100 <kuribas> merijn: haskell where everything is IO (), so sml or ocaml?
2021-11-29 15:39:02 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 252 seconds)
2021-11-29 15:39:32 +0100 <Hecate> merijn: wise
2021-11-29 15:40:27 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Ping timeout: 256 seconds)
2021-11-29 15:40:43 +0100 <hpc> kuribas: yeah, they aren't particularly special but it's nice to see another language make it so easy to use them
2021-11-29 15:41:32 +0100 <hpc> trying the same style in python will take years off your life :P
2021-11-29 15:42:00 +0100 <kuribas> the python community is actually discouraging function style.
2021-11-29 15:42:06 +0100 <kuribas> functional style.
2021-11-29 15:42:11 +0100 <hpc> yep
2021-11-29 15:42:58 +0100 <kuribas> "there is one way to do it" is so stupid, especially if that one way is completely broken.
2021-11-29 15:43:26 +0100 <boxscape_> what kind of thing is meant by "functional style python"?
2021-11-29 15:44:14 +0100 <boxscape_> but yeah "there is one way to do it" kind of means you're eternally stuck with the first idea you had, even if better ideas come along later
2021-11-29 15:44:26 +0100 <hpc> it's ironic too, because ruby is the "everything is an object" ideal that java always wished it could be
2021-11-29 15:44:51 +0100 <kuribas> boxscape_: using HOFs
2021-11-29 15:44:59 +0100 <boxscape_> I see
2021-11-29 15:47:25 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-29 15:47:25 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-29 15:47:25 +0100wroathe(~wroathe@user/wroathe)
2021-11-29 15:49:09 +0100 <jneira[m]> Smalltalk always will be the lost paradise of oop
2021-11-29 15:49:23 +0100jkaye(~jkaye@2601:281:8300:7530:70fe:f118:dc91:2d9c)
2021-11-29 15:52:07 +0100zer0bitz(~zer0bitz@dsl-hkibng31-54fabc-15.dhcp.inet.fi)
2021-11-29 15:54:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 15:54:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:56:33 +0100 <merijn> kuribas: No, where only some things were IO ()
2021-11-29 15:58:33 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 15:58:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 15:59:04 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 264 seconds)
2021-11-29 15:59:42 +0100Farzad(~FarzadBek@37.98.108.116) (Quit: Leaving)
2021-11-29 16:02:19 +0100img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2021-11-29 16:03:47 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net)
2021-11-29 16:04:17 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 16:04:23 +0100dschrempf(~dominik@070-207.dynamic.dsl.fonira.net)
2021-11-29 16:05:21 +0100trcc_(~trcc@185.45.22.131)
2021-11-29 16:05:26 +0100slack1256(~slack1256@191.125.99.210) (Ping timeout: 252 seconds)
2021-11-29 16:05:53 +0100img(~img@user/img)
2021-11-29 16:07:53 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-11-29 16:08:44 +0100trcc(~trcc@users-1190.st.net.au.dk) (Ping timeout: 252 seconds)
2021-11-29 16:09:11 +0100acidjnk_new(~acidjnk@p200300d0c7271e27ac7cfecfdd63434d.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2021-11-29 16:09:13 +0100fef(~thedawn@user/thedawn) (Quit: Leaving)
2021-11-29 16:10:13 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-29 16:10:31 +0100mc47(~mc47@xmonad/TheMC47)
2021-11-29 16:10:34 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-11-29 16:10:34 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf)
2021-11-29 16:12:11 +0100trcc_(~trcc@185.45.22.131) (Ping timeout: 256 seconds)
2021-11-29 16:13:34 +0100fr33domlover(~fr33@2.53.150.205)
2021-11-29 16:14:02 +0100curiousgay(~curiousga@77-120-141-90.kha.volia.net)
2021-11-29 16:14:17 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Remote host closed the connection)
2021-11-29 16:14:52 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 16:15:20 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-29 16:15:20 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-29 16:15:20 +0100wroathe(~wroathe@user/wroathe)
2021-11-29 16:19:44 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2021-11-29 16:20:04 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 264 seconds)
2021-11-29 16:25:11 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 16:25:29 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 16:27:09 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 16:27:16 +0100rkrishnan(~user@122.171.76.46) (Ping timeout: 264 seconds)
2021-11-29 16:27:20 +0100Sgeo(~Sgeo@user/sgeo)
2021-11-29 16:27:27 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 16:29:51 +0100dschrempf(~dominik@070-207.dynamic.dsl.fonira.net) (Quit: WeeChat 3.3)
2021-11-29 16:31:12 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x)
2021-11-29 16:35:57 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 16:36:15 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 16:37:55 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 16:38:13 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 16:38:39 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3)
2021-11-29 16:40:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 16:40:37 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 16:42:17 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 16:42:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 16:43:28 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3) (Ping timeout: 264 seconds)
2021-11-29 16:44:36 +0100ec(~ec@gateway/tor-sasl/ec)
2021-11-29 16:45:35 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-11-29 16:46:57 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 16:47:14 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-11-29 16:47:32 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de)
2021-11-29 16:48:11 +0100ec_(~ec@gateway/tor-sasl/ec)
2021-11-29 16:48:46 +0100ystael(~ystael@user/ystael)
2021-11-29 16:49:30 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 16:50:45 +0100ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds)
2021-11-29 16:51:24 +0100cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.3)
2021-11-29 16:51:52 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2021-11-29 16:53:23 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 16:54:55 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 16:55:32 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 16:57:08 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 16:57:26 +0100jgeerds(~jgeerds@55d45b75.access.ecotel.net) (Remote host closed the connection)
2021-11-29 16:57:37 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 16:58:04 +0100pavonia(~user@user/siracusa) (Quit: Bye!)
2021-11-29 16:59:12 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 16:59:38 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:00:25 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-11-29 17:01:12 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:01:41 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:03:15 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:03:41 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:05:12 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:05:40 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:06:22 +0100fef(~thedawn@user/thedawn)
2021-11-29 17:07:13 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:07:39 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:09:12 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:09:38 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 17:09:44 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:11:19 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:11:45 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:11:48 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 17:12:29 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 17:12:47 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 17:13:16 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:13:47 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:15:20 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:15:47 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:17:22 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:17:49 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:18:14 +0100dhouthoo(~dhouthoo@178-117-36-167.access.telenet.be) (Quit: WeeChat 3.3)
2021-11-29 17:19:23 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:19:48 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:21:20 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:21:51 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:22:08 +0100slack1256(~slack1256@191.126.99.210)
2021-11-29 17:22:27 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 256 seconds)
2021-11-29 17:22:55 +0100stefan-_(~cri@42dots.de) (Ping timeout: 250 seconds)
2021-11-29 17:23:04 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 264 seconds)
2021-11-29 17:23:25 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:23:52 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Remote host closed the connection)
2021-11-29 17:23:54 +0100hololeap(~hololeap@user/hololeap) (Ping timeout: 276 seconds)
2021-11-29 17:24:42 +0100hololeap(~hololeap@user/hololeap)
2021-11-29 17:24:43 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-11-29 17:25:24 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:25:47 +0100 <dsal> Today's dumb thing everybody should do: https://www.haskellforall.com/2015/09/how-to-make-your-haskell-code-more.html
2021-11-29 17:25:56 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:26:38 +0100 <dsal> I guess everybody should ignore the second paragraph and immediately do all of these things.
2021-11-29 17:27:13 +0100stefan-_(~cri@42dots.de)
2021-11-29 17:27:33 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:27:58 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:28:39 +0100lortabac(~lortabac@2a01:e0a:541:b8f0:283f:851a:b183:49fe) (Quit: WeeChat 2.8)
2021-11-29 17:29:34 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:30:00 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:30:02 +0100xff0x(~xff0x@2001:1a81:527f:8300:57da:badd:210c:d109) (Ping timeout: 240 seconds)
2021-11-29 17:30:23 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 17:31:08 +0100xff0x(~xff0x@2001:1a81:527f:8300:4a2b:7ccd:5352:f2b5)
2021-11-29 17:31:30 +0100 <kuribas> learning ($) takes literally 1 minute
2021-11-29 17:31:34 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:31:36 +0100 <kuribas> if even...
2021-11-29 17:31:43 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 17:31:59 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:32:40 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2) (Ping timeout: 264 seconds)
2021-11-29 17:33:10 +0100 <boxscape_> kuribas yes, but if you're trying to write code meant to be read by non-Haskellers (as in the blog post), your readers don't know where to look to learn it
2021-11-29 17:33:13 +0100 <dsal> The actual point of the article seems to be that if you want to give a small example of something in Haskell for people who don't know Haskell, there are a few things you should do that will make it a bit more accessible.
2021-11-29 17:33:30 +0100 <dsal> The way it was presented internally is "these are all good ideas and we should write code like this!"
2021-11-29 17:33:33 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:34:01 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:34:19 +0100 <kuribas> boxscape_: point taken :)
2021-11-29 17:34:37 +0100 <kuribas> avoiding ($) may even seduce lispers :)
2021-11-29 17:34:53 +0100 <dsal> I think I reached my limit here. This dude might be good at a few things, but he's a terrible technical leader and seems to be unable to work with anyone who doesn't just believe everything he says without explanation. He can have those people, I guess.
2021-11-29 17:35:33 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:35:34 +0100zmt00(~zmt00@user/zmt00)
2021-11-29 17:36:06 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:36:14 +0100 <kuribas> Most of these are decent points, if not taken so extreme.
2021-11-29 17:36:17 +0100 <c_wraith> yeah, the article is weird in that all the explanations refer to beginners, yet the heading doesn't say a thing about it
2021-11-29 17:36:50 +0100 <c_wraith> it's not titled "how to introduce haskell to a new audience"
2021-11-29 17:36:57 +0100 <boxscape_> hm? the headline says "How to make your Haskell code more readable to non-Haskell programmers ", that seems fine
2021-11-29 17:36:59 +0100 <c_wraith> that advice would be good with that title!
2021-11-29 17:37:11 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 17:37:28 +0100 <c_wraith> Oh, huh. I guess I did that thing where I ignore the title because I expect the body to contain all relevant info
2021-11-29 17:37:35 +0100 <boxscape_> :D
2021-11-29 17:37:37 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:37:37 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 17:37:54 +0100 <c_wraith> But yeah, that's not advice for programming in Haskell
2021-11-29 17:38:02 +0100 <c_wraith> It's advice for introducing the language
2021-11-29 17:38:07 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:38:12 +0100ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds)
2021-11-29 17:38:13 +0100 <kuribas> c_wraith: even toned down a bit it's decent advice IMO...
2021-11-29 17:38:15 +0100_bo(~bo@79.171.122.236) (Read error: Connection reset by peer)
2021-11-29 17:38:16 +0100slowButPresent(~slowButPr@user/slowbutpresent)
2021-11-29 17:38:29 +0100 <kuribas> like, use do notation if that improves readability.
2021-11-29 17:38:34 +0100 <pragma-> Imagine showing a program full of Lens operators to someone largely unfamiliar with Haskell.
2021-11-29 17:38:35 +0100 <dsal> Most readability things are subjective.
2021-11-29 17:38:59 +0100 <boxscape_> pragma- depending on *which* lens operators we're talking about that could go over quite well actually
2021-11-29 17:39:00 +0100 <dsal> do notation doesn't always improve readability for someone familiar with Haskell.
2021-11-29 17:39:08 +0100 <pragma-> Someone told me "Oh, just read the program and simply guess what the operators do! It's not hard."
2021-11-29 17:39:10 +0100kmein(~weechat@user/kmein) (Quit: ciao kakao)
2021-11-29 17:39:33 +0100 <c_wraith> I define a bunch of local operators in my own code, because they often result in cleaner syntax.
2021-11-29 17:39:33 +0100ec_(~ec@gateway/tor-sasl/ec)
2021-11-29 17:39:39 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:39:45 +0100 <c_wraith> But they have the advantage of being defined adjacent to usage
2021-11-29 17:39:55 +0100chele(~chele@user/chele) (Remote host closed the connection)
2021-11-29 17:40:06 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:40:11 +0100 <kuribas> I tend to avoid all lens operators.
2021-11-29 17:40:24 +0100 <boxscape_> (e.g. `totalCost += company^.ceo.salary` is quite readable)
2021-11-29 17:40:24 +0100 <dsal> I've got code that uses do notation specifically so they can have a `let` binding without `in` in the form of `let someVariableName = someFunc someArg` just so they can then have a `case someVariableName of`. Like... Hey, you know, if you didn't name the result of that function and its argument (which is pretty obvious), you wouldn't need the let and the do would be redundant and this whole thing would just be a simple case.
2021-11-29 17:40:35 +0100reumeth(~reumeth@user/reumeth) (Ping timeout: 252 seconds)
2021-11-29 17:41:22 +0100kmein(~weechat@user/kmein)
2021-11-29 17:41:26 +0100bollu(uid233390@id-233390.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-29 17:41:37 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:41:40 +0100 <dsal> Some people really believe that `let theResultOfFunctionWithArg = function arg` somehow makes something more readable.
2021-11-29 17:41:50 +0100 <boxscape_> :/
2021-11-29 17:42:10 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:42:18 +0100lbseale(~ep1ctetus@user/ep1ctetus)
2021-11-29 17:42:47 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-11-29 17:42:49 +0100 <geekosaur> go back to Java :(
2021-11-29 17:43:27 +0100lbseale_(~ep1ctetus@user/ep1ctetus)
2021-11-29 17:43:31 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 17:43:42 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:44:09 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:44:23 +0100 <dsal> I mean, there *are* points where you should probably name a few intermediate steps if chains get large. But naming something that's basically already named (just with a space in it) doesn't add clarity. Extra words make code harder to read.
2021-11-29 17:44:32 +0100 <dsal> That last point seems controversial, so it's probably subjective.
2021-11-29 17:44:48 +0100 <c_wraith> map theFunctionToApplyToTheElementsOfTheList (theFirstElementOfTheList:theRestOfTheList) = ...
2021-11-29 17:45:11 +0100 <dsal> Yeah. I see some of that stuff. Go back to objective c. :)
2021-11-29 17:45:41 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be)
2021-11-29 17:46:07 +0100betelgeuse9(~betelgeus@94-225-47-8.access.telenet.be) (Read error: Connection reset by peer)
2021-11-29 17:46:26 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-29 17:46:48 +0100 <dsal> I wish I could find this one example I had. There were two identifiers in scope that were like `someVariableResultingFromACallToCatfunction` and `someVariableResultingFromACallToCarFunction`
2021-11-29 17:47:04 +0100lbseale(~ep1ctetus@user/ep1ctetus) (Ping timeout: 264 seconds)
2021-11-29 17:47:10 +0100 <kuribas> boxscape_: yeah, the state operators are somewhat more readable than the rest.
2021-11-29 17:47:10 +0100 <dsal> Super long multiword variables with just a letter or two somewhere in the middle distinguishing them.
2021-11-29 17:47:31 +0100 <dsal> kuribas: the state operators are the uncanny valley of Haskell.
2021-11-29 17:48:19 +0100lbseale_lbseale
2021-11-29 17:54:12 +0100masterbuilder(~user@user/masterbuilder)
2021-11-29 17:54:36 +0100jinsun(~quassel@user/jinsun) (Read error: Connection reset by peer)
2021-11-29 17:55:08 +0100tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2021-11-29 17:57:47 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 17:57:49 +0100[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2021-11-29 17:58:05 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 17:58:13 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3)
2021-11-29 17:59:36 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 17:59:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 18:00:44 +0100reumeth(~reumeth@user/reumeth)
2021-11-29 18:03:47 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 18:09:29 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 18:09:47 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 18:10:01 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2)
2021-11-29 18:11:19 +0100arjun(~user@user/arjun)
2021-11-29 18:13:25 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 18:13:43 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 18:14:08 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2021-11-29 18:17:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 18:17:29 +0100zebrag(~chris@user/zebrag)
2021-11-29 18:17:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 18:18:04 +0100narendra(~user@2a02:8109:b63f:ff7c::56c2) (Ping timeout: 268 seconds)
2021-11-29 18:20:43 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 18:21:00 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 18:21:23 +0100fr33domlover(~fr33@2.53.150.205) (Ping timeout: 256 seconds)
2021-11-29 18:23:20 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 18:23:35 +0100jlamothe(~jlamothe@198.251.61.229) (Ping timeout: 250 seconds)
2021-11-29 18:25:15 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 18:29:47 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds)
2021-11-29 18:31:54 +0100justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.3)
2021-11-29 18:32:09 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 18:33:38 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd)
2021-11-29 18:33:58 +0100Skyfire(~pyon@user/pyon) (Quit: brb)
2021-11-29 18:34:43 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 18:34:52 +0100unyu(~pyon@user/pyon)
2021-11-29 18:35:48 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 18:36:20 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-11-29 18:45:19 +0100ChaiTRex(~ChaiTRex@user/chaitrex) (Quit: ChaiTRex)
2021-11-29 18:45:52 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-11-29 18:45:56 +0100ChaiTRex(~ChaiTRex@user/chaitrex)
2021-11-29 18:46:23 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-29 18:50:21 +0100jlamothe(~jlamothe@198.251.61.229)
2021-11-29 18:51:11 +0100xkuru(~xkuru@user/xkuru) (Read error: Connection reset by peer)
2021-11-29 18:53:04 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 18:53:41 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 18:53:53 +0100emf(~emf@2620:10d:c090:400::5:9a5b)
2021-11-29 18:54:39 +0100 <tito> why does GHC complain about tab indentation by default?
2021-11-29 18:55:12 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 18:55:17 +0100 <tito> is it because of compatibility with the Haskell report grammar or something like that? tabs and spaces should be quite equivalent
2021-11-29 18:55:34 +0100 <Hecate> I think there's a flag that's default but you can disable it
2021-11-29 18:55:36 +0100 <monochrom> Because most editors lie about tabs.
2021-11-29 18:55:58 +0100 <tito> Hecate: I know, it's -fno-warn-tabs I think
2021-11-29 18:56:20 +0100 <tito> so the rationale is that most editors mess up with tabs?
2021-11-29 18:56:22 +0100 <yushyin> many users, especially newcomers, did not get the layout and tabs right, so this warning became default at some point.
2021-11-29 18:56:43 +0100 <monochrom> Tabs should mean column 8*n+1, but editors lie that they can mean whatever number of spaces you want. Well then GHC is not telepathic.
2021-11-29 18:57:16 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf)
2021-11-29 18:57:19 +0100 <geekosaur> some editors use fixed 4 or fixed 5 or 5*n+1 or …
2021-11-29 18:57:38 +0100 <geekosaur> or just indent to the closest word-like thing on the preceding line
2021-11-29 18:57:46 +0100 <monochrom> In an ideal world, people would regard those editors buggy and reject them. But this is not an ideal world.
2021-11-29 18:57:46 +0100 <tito> monochrom: Okay, editors are customizable - but what's the problem? If all indentation is made using tabs, there wouldn't be any ambiguity
2021-11-29 18:58:19 +0100 <tito> GHC doesn't care if everything is indented by 2, or 4, or 8 spaces - it shouldn't care if everything is indented by a tab too
2021-11-29 18:58:34 +0100 <yushyin> works fine then, i've used ghc a long time with only tabs
2021-11-29 18:58:41 +0100 <geekosaur> except that it does care, because of layout
2021-11-29 18:58:46 +0100waleee(~waleee@2001:9b0:216:8200:d457:9189:7843:1dbd) (Ping timeout: 268 seconds)
2021-11-29 18:59:01 +0100 <tito> I'm sorry if this looks like some kind of complain, I'm just trying to understand why the default is like this
2021-11-29 18:59:02 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-29 18:59:08 +0100Vajb(~Vajb@hag-jnsbng11-58c3a8-176.dhcp.inet.fi)
2021-11-29 18:59:15 +0100 <tito> geekosaur: could you provide me with an example?
2021-11-29 18:59:16 +0100 <monochrom> Here is an example.
2021-11-29 18:59:37 +0100 <monochrom> My 1st line is "main = do print 0"
2021-11-29 18:59:51 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 19:00:00 +0100 <monochrom> My 2nd line is "print 1" aligned with "print 0". This means I need 10 spaces.
2021-11-29 19:00:38 +0100 <monochrom> Someone set their tab to "mean" 4 spaces. So they use 2 tabs, 2 spaces.
2021-11-29 19:00:42 +0100waleee(~waleee@h-82-196-111-63.NA.cust.bahnhof.se)
2021-11-29 19:00:57 +0100 <monochrom> Now GHC sees 18 spaces.
2021-11-29 19:01:00 +0100 <tito> But the point isn't to align "print 1" with "print 0", right? You can indent it with 4 spaces for example and it would work equally well
2021-11-29 19:01:05 +0100 <arjun> 2tab2furious
2021-11-29 19:01:18 +0100 <tito> The point is to distinguish different levels of indentation
2021-11-29 19:01:48 +0100 <dsal> If tabs aren't for alignment, why do they exist?
2021-11-29 19:01:49 +0100 <monochrom> The point is to align "print 1" with "print 0".
2021-11-29 19:02:08 +0100 <monochrom> At least, the point of Haskell 2010 layout rules.
2021-11-29 19:02:31 +0100 <[exa]> tito: the situation gets complicated pretty easily, imagine you have 2 nested `do` blocks, and the tail of the outer one aligns with the inner "do" with one tab setting, and with the outer "do" with another tab setting
2021-11-29 19:02:52 +0100thevishy(~Nishant@2405:201:f005:c007:f92b:9823:fedf:deab) (Quit: Leaving)
2021-11-29 19:03:32 +0100 <tito> [exa], monochrom I see, thank you
2021-11-29 19:03:33 +0100 <arjun> dsal: ancient artifact to save file space i reckon? get the illusion of 8 \s characters for the price of 1 \t characters
2021-11-29 19:04:25 +0100 <monochrom> I think it goes deeper than that. Tabbing came from typewriters.
2021-11-29 19:04:28 +0100jkaye(~jkaye@2601:281:8300:7530:70fe:f118:dc91:2d9c) (Ping timeout: 264 seconds)
2021-11-29 19:04:44 +0100 <monochrom> Everything weird about terminals traces back to typewriters.
2021-11-29 19:04:44 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-11-29 19:04:49 +0100 <[exa]> tito: the enforcement of spaces is a design choice that prevents the other design choice of going through the complicated obscure way of enforcing mixed tab/space prefix format to do it completely right
2021-11-29 19:04:50 +0100 <dsal> Typewriters were notorious for having very little RAM.
2021-11-29 19:05:28 +0100 <tito> [exa], I see, it makes sense
2021-11-29 19:05:32 +0100 <[exa]> in comparison, setting your editor to "just do spaces" is pretty compatible choice, well understood by newbies :D
2021-11-29 19:05:47 +0100 <tito> I didn't think that the Haskell grammar was alignment-based, my bad
2021-11-29 19:06:11 +0100 <arjun> i watched a documentary on a typewriter store, it had tom hanks AND john mayer
2021-11-29 19:06:14 +0100 <[exa]> you can do even without alignment using { .. ; .. }
2021-11-29 19:06:24 +0100 <tito> And actually I got into some mysterious alignment issues some time ago because I didn't know the Haskell report, I'll go and check it out
2021-11-29 19:06:24 +0100 <[exa]> but people tend to do alignment, looks neater
2021-11-29 19:06:54 +0100 <[exa]> tbh I've got a parser hidden somewhere from the university years that does the tab/space thing right
2021-11-29 19:07:52 +0100 <[exa]> turned out that to enjoy the whole thing properly, your text editor would need to be plain magic
2021-11-29 19:07:55 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 19:08:02 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 19:08:15 +0100 <[exa]> (and completely avoid the "tab is N spaces" idea)
2021-11-29 19:10:08 +0100jkaye(~jkaye@2601:281:8300:7530:7309:f677:c771:6123)
2021-11-29 19:12:14 +0100evanrelf(3addc196af@2604:bf00:561:2000::f0)
2021-11-29 19:14:33 +0100 <geekosaur> you can even observe this in vim, by setting hardtabs to something other than 8
2021-11-29 19:15:03 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 19:15:20 +0100 <geekosaur> (vim being one of the smarter editors when it comes to tabs; it keeps its internal notion of tabs separate from the one it exposes to the outside world)
2021-11-29 19:16:21 +0100arahael(~arahael@203.166.224.240) (Ping timeout: 256 seconds)
2021-11-29 19:18:01 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 19:18:03 +0100justsomeguy(~justsomeg@user/justsomeguy)
2021-11-29 19:18:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 19:19:35 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 252 seconds)
2021-11-29 19:21:12 +0100raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2021-11-29 19:21:30 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-11-29 19:21:39 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3) (Remote host closed the connection)
2021-11-29 19:23:54 +0100jakalx(~jakalx@base.jakalx.net)
2021-11-29 19:24:05 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 19:24:12 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 19:26:50 +0100mbuf(~Shakthi@223.184.125.58) (Quit: Leaving)
2021-11-29 19:27:37 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 19:29:01 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-11-29 19:29:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 19:32:13 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2021-11-29 19:33:42 +0100 <justsomeguy> Is it possible in theory to express all control flow using map/fold alone, rather than direct recursion?
2021-11-29 19:34:20 +0100 <dsal> You can map with fold.
2021-11-29 19:34:26 +0100 <dminuoso> Depending on the type.
2021-11-29 19:34:49 +0100 <boxscape_> say you want a function that does the same thing forever - to do this with a fold you need to first construct an infinite list, for which you need recursion
2021-11-29 19:34:50 +0100arahael(~arahael@27-32-144-20.tpgi.com.au)
2021-11-29 19:34:56 +0100 <slack1256> justsomeguy: Not sure if *all* but pretty much yeah.
2021-11-29 19:35:10 +0100 <tomsmeding> justsomeguy: what fold exactly are you talking about?
2021-11-29 19:35:20 +0100 <tomsmeding> the 'foldr' from Data.Foldable?
2021-11-29 19:35:44 +0100 <dsal> :t fold
2021-11-29 19:35:45 +0100 <lambdabot> (Foldable t, Monoid m) => t m -> m
2021-11-29 19:35:50 +0100 <tomsmeding> if so, then no, you can't express a map over some weird tree structure, because when using foldr you implicitly flatten the structure to a list
2021-11-29 19:35:59 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 19:36:01 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186)
2021-11-29 19:36:38 +0100arjun(~user@user/arjun) (ERC 5.4.1 (IRC client for GNU Emacs 29.0.50))
2021-11-29 19:37:05 +0100 <dsal> I don't know if there's a name for an anamorphism followed by a catamorphism, but you could always do that with the tree.
2021-11-29 19:37:13 +0100 <tomsmeding> dsal: same thing, doesn't allow you to distinguish between Node (Node (Leaf 1) (Leaf 2)) (Leaf 3) and Node (Leaf 1) (Node (Leaf 2) (Leaf 3))
2021-11-29 19:38:03 +0100 <tomsmeding> (assuming your monoid is indeed associative -- a more complex example works for nonassociative "monoids")
2021-11-29 19:38:21 +0100 <dsal> Sure, a functor map makes sense there, but I'm not convinced you *can't* do it, just that it might be very expensive and unreadable.
2021-11-29 19:39:01 +0100 <tomsmeding> data WeirdTree a = List [WeirdTree a] | Node (WeirdTree a) (WeirdTree a) | Leaf a
2021-11-29 19:39:07 +0100 <tomsmeding> with the obvious Functor and Foldable instances
2021-11-29 19:39:41 +0100 <tomsmeding> you're not going to be able to distinguish List [Leaf 1, Leaf 2] and Node (Leaf 1) (Leaf 2) using 'fold'
2021-11-29 19:39:42 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3)
2021-11-29 19:39:47 +0100 <shapr> map preserves structure, fold flattens and reduces ... I still don't know of laws for changing shape like filter. I've heard of witherable, but does it have real laws?
2021-11-29 19:39:48 +0100 <dminuoso> justsomeguy: A generalized form of "can represent all control flow" is free monads.
2021-11-29 19:39:58 +0100 <tomsmeding> (granted, dumb example)
2021-11-29 19:40:21 +0100 <dminuoso> shapr: Yes
2021-11-29 19:40:26 +0100 <tomsmeding> also: algebraic folds, also called Church encoding
2021-11-29 19:40:28 +0100 <dminuoso> mapMaybe (Just . f) = fmap f
2021-11-29 19:40:31 +0100kilolympus(~kilolympu@31.205.200.235) (Quit: Quitting IRC :()
2021-11-29 19:40:31 +0100 <dsal> tomsmeding: Sure, it makes sense. I'm just thinking it's possible to encode that into the fold and then unfold it again. Not that you should.
2021-11-29 19:40:42 +0100 <dminuoso> wither (Identity . f) = Identity . mapMaybe f
2021-11-29 19:40:45 +0100 <dminuoso> t . wither f ≡ wither (t . f)
2021-11-29 19:40:50 +0100 <dminuoso> And some more
2021-11-29 19:40:55 +0100 <dminuoso> https://hackage.haskell.org/package/witherable-0.4.2/docs/Data-Witherable.html#t:Witherable
2021-11-29 19:41:25 +0100 <tomsmeding> dsal: but you can't, right? fold f (List [Leaf 1, Leaf 2]) = f 1 <> f 2 = fold f (Node (Leaf 1) (Leaf 2)) -- there's nothing you can encode anywhere as far as I can see
2021-11-29 19:41:31 +0100 <justsomeguy> So, for context, the reason I ask about this is because I've been thinking about whether eliminating as much control flow as possible would make my code easier to read. One idea was to replace all direct recursion with HOFs. But there seem to be trade-offs associated with that. ...and recursive function calls are not only control-flow, but also represent data-flow in the form of changing argument
2021-11-29 19:41:34 +0100 <justsomeguy> values.
2021-11-29 19:41:50 +0100 <tomsmeding> "easier to read" no.
2021-11-29 19:41:57 +0100 <dminuoso> justsomeguy: I find separating is the key, not abstracting away
2021-11-29 19:42:10 +0100 <shapr> dminuoso: sounds like I need to do more reading on witherable
2021-11-29 19:42:16 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 264 seconds)
2021-11-29 19:42:53 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 19:43:13 +0100 <tomsmeding> justsomeguy: eliminating direct recursion in favour of HOF might _shorten_ your code, but in many cases (but not all) and for many people (but not all), that will actually harm readability
2021-11-29 19:43:36 +0100 <tomsmeding> exceptions include: stuff like 'compose = foldr (.) id', where using direct recursion is really too verbose (in my personal opinion)
2021-11-29 19:44:13 +0100 <dsal> tomsmeding: I'm not 100% sure I can't. I'm fairly sure it's not worth the effort to try, though. :)
2021-11-29 19:44:23 +0100 <tomsmeding> :)
2021-11-29 19:44:37 +0100 <monochrom> readability depends on the reader too
2021-11-29 19:44:49 +0100 <monochrom> Also I hate that word. I use "comprehensible".
2021-11-29 19:44:54 +0100 <tomsmeding> hence the second "(but not all)" :)
2021-11-29 19:45:34 +0100 <dsal> foldr is better when your code otherwise is reinventing foldr. Sometimes, expressing your thing in terms of recursion is better.
2021-11-29 19:45:35 +0100 <dminuoso> https://pbs.twimg.com/media/FDLRPTFWEAUdqwv.jpg
2021-11-29 19:45:41 +0100 <dminuoso> ^- this diagram applies to haskellers just as much.
2021-11-29 19:46:13 +0100 <tomsmeding> with nuance :p
2021-11-29 19:46:36 +0100 <justsomeguy> Reminds me of this quote I like ... "first you learn the value of abstraction, then you learn the cost of abstraction, then you're ready to engineer" ~ Kent Beck
2021-11-29 19:47:04 +0100 <monochrom> And then "simple" is also paradoxical because different people actually give it opposite meanings.
2021-11-29 19:47:46 +0100mario(~mario@31.147.205.13)
2021-11-29 19:48:01 +0100 <EvanR> haha I scrolled pretty to far to see what it is you guys are really talking about, then gave up
2021-11-29 19:48:07 +0100 <dminuoso> monochrom: To me that dual meaning is hidden in that diagram as well, in the sense that "simple code" by experts differs very much from "simple code" by newcomers.
2021-11-29 19:48:14 +0100 <sm> Kent Beck++
2021-11-29 19:48:30 +0100 <EvanR> what topic could inspire such generalized abstract discussion
2021-11-29 19:48:31 +0100 <monochrom> Ah, nice.
2021-11-29 19:48:47 +0100 <EvanR> laws for filterable?
2021-11-29 19:48:51 +0100ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds)
2021-11-29 19:48:52 +0100 <monochrom> And yeah the Kent Beck quote is golden.
2021-11-29 19:48:53 +0100 <slack1256> For HLS, where can I specify that is it safe to run ghc with '-j4'?
2021-11-29 19:49:04 +0100 <tomsmeding> EvanR: justsomeguy asked a question coming from an attempt to make code more readable by turning direct recursion into higher-order functions
2021-11-29 19:49:06 +0100 <dminuoso> EvanR: https://hackage.haskell.org/package/witherable-0.4.2/docs/Data-Witherable.html#t:Filterable
2021-11-29 19:49:10 +0100 <tomsmeding> and certain #haskell'ers rebelled
2021-11-29 19:49:37 +0100 <justsomeguy> Good synopsis tomsmeding, I was struggling to condense my question down.
2021-11-29 19:49:41 +0100 <EvanR> those two choices are in an eternal cosmic war
2021-11-29 19:49:52 +0100 <EvanR> just use recursion, just use a recursion combinator
2021-11-29 19:49:57 +0100 <dminuoso> I dont think recursion schemes ever succeeded beyond peeking curiosity and boredom?
2021-11-29 19:50:26 +0100 <dminuoso> Nobody without an academic degree can read your code anymore, and neither can you half a year from now. And your performance is down the drain too
2021-11-29 19:50:30 +0100 <EvanR> map, fold, scan, mapAccum, etc are great
2021-11-29 19:50:30 +0100 <geekosaur> piquing, maybe, but that's my understanding as well
2021-11-29 19:50:31 +0100ec_(~ec@gateway/tor-sasl/ec)
2021-11-29 19:50:49 +0100 <dsal> The larger problem with recursion schemes is that it doesn't work with your data structures.
2021-11-29 19:50:56 +0100jstolarek(~jstolarek@137.220.120.162) (Ping timeout: 252 seconds)
2021-11-29 19:51:01 +0100 <dminuoso> geekosaur: Ah indeed. It's one of those words I will probably never get right.
2021-11-29 19:51:15 +0100 <EvanR> but the combinator for what you want doesn't always exist
2021-11-29 19:51:22 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2021-11-29 19:51:36 +0100 <EvanR> or it would be clearer using recursion
2021-11-29 19:52:19 +0100 <dminuoso> traverse is and remains my favourite combinator. :)
2021-11-29 19:52:20 +0100justache(~justache@user/justache) (Read error: Connection reset by peer)
2021-11-29 19:52:30 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk) (Remote host closed the connection)
2021-11-29 19:52:47 +0100 <slack1256> let og_lens = traverse
2021-11-29 19:53:16 +0100justache(~justache@user/justache)
2021-11-29 19:54:38 +0100x88x88x_(~cheeg@gateway/vpn/pia/x88x88x)
2021-11-29 19:56:01 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x) (Ping timeout: 256 seconds)
2021-11-29 19:56:03 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (Remote host closed the connection)
2021-11-29 19:57:15 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 19:57:33 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 19:58:10 +0100max22-(~maxime@2a01cb0883359800844aee1a010c5cf0.ipv6.abo.wanadoo.fr) (Ping timeout: 265 seconds)
2021-11-29 19:59:05 +0100bollu(uid233390@id-233390.helmsley.irccloud.com)
2021-11-29 20:00:34 +0100 <EvanR> I still don't know how to use traverse xD
2021-11-29 20:00:46 +0100 <EvanR> :t traverse
2021-11-29 20:00:47 +0100 <lambdabot> (Traversable t, Applicative f) => (a -> f b) -> t a -> f (t b)
2021-11-29 20:02:15 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 20:02:35 +0100 <tomsmeding> Perform a computation on each element of a structure; then you get back a computation which returns the transformed structure
2021-11-29 20:02:40 +0100 <monochrom> If you know mapM, it's similar.
2021-11-29 20:02:57 +0100 <tomsmeding> Important property being that the structure is maintained, because it's basically fmap on steroids
2021-11-29 20:03:11 +0100 <tomsmeding> traverse is to fmap as mapM is to map?
2021-11-29 20:03:16 +0100 <monochrom> To a large extent, you can start with t=[]: (a -> f b) -> [a] -> f [b]
2021-11-29 20:03:59 +0100 <monochrom> No, mapM was simply s/Applicative/Monad/ because Applicative did not exist back then.
2021-11-29 20:04:01 +0100 <boxscape_> tomsmeding I think technically traverse is to fmap as mapM is to liftM
2021-11-29 20:04:08 +0100 <tomsmeding> (except mapM uses >>= and traverse uses <*>, which should not matter if your instances are law-abiding)
2021-11-29 20:04:27 +0100ec_(~ec@gateway/tor-sasl/ec) (Ping timeout: 276 seconds)
2021-11-29 20:04:50 +0100 <tomsmeding> TIL mapM works on traversables
2021-11-29 20:04:55 +0100 <monochrom> It looks like map because SML and Scheme's map are always living in IO and corresponds to Haskell's mapM.
2021-11-29 20:05:04 +0100 <boxscape_> tomsmeding mapM is actually defined as `mapM = traverse` in the Prelude
2021-11-29 20:05:20 +0100 <EvanR> I knew mapM = traverse
2021-11-29 20:05:31 +0100 <EvanR> that's cool
2021-11-29 20:06:05 +0100 <tomsmeding> Ah no it was sequence_ which is not just sequenceA_
2021-11-29 20:06:10 +0100 <EvanR> visible each element of the t a, get an f b, and combine it all with <*> ?
2021-11-29 20:06:20 +0100 <EvanR> s/visible/visit/
2021-11-29 20:06:27 +0100 <tomsmeding> Basically
2021-11-29 20:06:58 +0100 <monochrom> For each Handle, read the 1st line: traverse (\h -> hGetLine h) my_list_of_handles
2021-11-29 20:07:19 +0100 <monochrom> (and return the list of lines)
2021-11-29 20:07:33 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net)
2021-11-29 20:07:49 +0100 <tomsmeding> traverse f (Node (Leaf 1) (Node (Leaf 2) (Leaf 3))) = Node <$> (Leaf <$> f 1) <*> (Node <$> (Leaf <$> f 2) <*> (Leaf <$> f 3))
2021-11-29 20:07:50 +0100 <EvanR> how does the process get started
2021-11-29 20:07:58 +0100 <EvanR> where does empty list come from
2021-11-29 20:08:14 +0100 <EvanR> or empty traversable
2021-11-29 20:08:17 +0100 <monochrom> Uh that's how it ends, not starts?
2021-11-29 20:08:17 +0100ec_(~ec@gateway/tor-sasl/ec)
2021-11-29 20:08:37 +0100 <monochrom> But traverse _ [] = pure []
2021-11-29 20:08:37 +0100alzgh(alzgh@user/alzgh) (Remote host closed the connection)
2021-11-29 20:09:01 +0100 <EvanR> the empty comes from the traversable type ok
2021-11-29 20:09:04 +0100 <tomsmeding> EvanR: just fmap it, and then combine actions upwards using <*>
2021-11-29 20:09:12 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 20:09:36 +0100 <EvanR> > traverse (\x -> Identity x) (Just '0')
2021-11-29 20:09:37 +0100 <lambdabot> Identity (Just '0')
2021-11-29 20:09:42 +0100 <EvanR> > traverse (\x -> Identity x) Nothing
2021-11-29 20:09:43 +0100 <lambdabot> Identity Nothing
2021-11-29 20:09:57 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186)
2021-11-29 20:10:11 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 252 seconds)
2021-11-29 20:10:44 +0100 <EvanR> started / ended, whatever this is haskell xD
2021-11-29 20:11:34 +0100x88x88x_(~cheeg@gateway/vpn/pia/x88x88x) (Quit: Using Circe, the loveliest of all IRC clients)
2021-11-29 20:11:50 +0100mario(~mario@31.147.205.13) (Quit: Leaving)
2021-11-29 20:11:50 +0100fef(~thedawn@user/thedawn) (Quit: Leaving)
2021-11-29 20:12:31 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (Remote host closed the connection)
2021-11-29 20:14:37 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x)
2021-11-29 20:15:25 +0100alzgh(~alzgh@user/alzgh)
2021-11-29 20:15:43 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x) (Read error: Connection reset by peer)
2021-11-29 20:16:26 +0100mei(~mei@user/mei)
2021-11-29 20:18:37 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x)
2021-11-29 20:19:17 +0100justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.3)
2021-11-29 20:20:20 +0100mvk(~mvk@2607:fea8:5cc1:fa00::4702)
2021-11-29 20:20:46 +0100 <EvanR> erhm what happened with Monoid and Semigroup
2021-11-29 20:20:48 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net)
2021-11-29 20:20:48 +0100wroathe(~wroathe@c-68-54-25-135.hsd1.mn.comcast.net) (Changing host)
2021-11-29 20:20:48 +0100wroathe(~wroathe@user/wroathe)
2021-11-29 20:20:59 +0100 <EvanR> I can't just define mappend anymore?
2021-11-29 20:21:27 +0100 <boxscape_> you have to define (<>)
2021-11-29 20:21:29 +0100 <EvanR> I tried to define (<>) as mappend and it didn't work
2021-11-29 20:21:29 +0100 <monochrom> I think you still can.
2021-11-29 20:22:01 +0100 <tomsmeding> Which version of ghc?
2021-11-29 20:22:18 +0100 <EvanR> 8.10.7
2021-11-29 20:22:43 +0100 <monochrom> mappend is still a method of Monoid
2021-11-29 20:22:57 +0100 <boxscape_> you should be able to say `(<>) = mappend` in the Semigroup instance
2021-11-29 20:22:58 +0100 <monochrom> (<>) is a method of Semigroup
2021-11-29 20:23:28 +0100 <EvanR> I see, I didn't put Monoid constraint on the Semigroup instance, which... wouldn't really make sense
2021-11-29 20:23:50 +0100 <EvanR> for the wrapped type
2021-11-29 20:23:55 +0100 <monochrom> No need to put Monoid constraint on Semigroup instance.
2021-11-29 20:23:55 +0100 <EvanR> Semigroup first it is
2021-11-29 20:24:08 +0100 <boxscape_> the order shouldn't matter
2021-11-29 20:24:21 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x) (Remote host closed the connection)
2021-11-29 20:24:24 +0100 <monochrom> Show actual code?
2021-11-29 20:24:33 +0100 <boxscape_> (though in practice I do think it makes more sense to define (<>) and leave the default implementation of mappend alone)
2021-11-29 20:24:52 +0100 <tomsmeding> EvanR: mappend is a method of Monoid, so you can't use mappend of _another_ type without requiring that that other type is Monoid
2021-11-29 20:25:11 +0100 <tomsmeding> But yes, just use (<>)
2021-11-29 20:25:35 +0100wroathe(~wroathe@user/wroathe) (Ping timeout: 252 seconds)
2021-11-29 20:25:48 +0100 <EvanR> https://paste.tomsmeding.com/AIXOSQk6
2021-11-29 20:26:42 +0100 <EvanR> putting that code in semigroup now
2021-11-29 20:26:47 +0100 <tomsmeding> Semigroup a is not going to provide you with a Monoid (E a) instance, is it? :)
2021-11-29 20:26:50 +0100 <tomsmeding> Yes
2021-11-29 20:27:01 +0100 <tomsmeding> That's the solution
2021-11-29 20:27:17 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk)
2021-11-29 20:27:31 +0100 <monochrom> instance Semigroup a => Semigroup (E a) where E es1 <> E es2 = E (zipWith (<>) es1 es2)
2021-11-29 20:27:51 +0100 <EvanR> yes
2021-11-29 20:28:24 +0100 <EvanR> I originally had that semigroup constraint there
2021-11-29 20:28:33 +0100 <EvanR> but was using mappend
2021-11-29 20:28:37 +0100 <EvanR> fixed
2021-11-29 20:29:11 +0100 <EvanR> Semigroup superiority forever
2021-11-29 20:30:19 +0100mei(~mei@user/mei) (Read error: Connection reset by peer)
2021-11-29 20:31:38 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk) (Ping timeout: 252 seconds)
2021-11-29 20:32:21 +0100jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2021-11-29 20:35:45 +0100jakalx(~jakalx@base.jakalx.net)
2021-11-29 20:36:26 +0100max22-(~maxime@2a01cb0883359800172da6e8deefe185.ipv6.abo.wanadoo.fr)
2021-11-29 20:37:14 +0100 <janus> boxscape_: (<>)=mappend is a warning on GHC 9.2, so i'd do it the other way around
2021-11-29 20:37:28 +0100 <janus> (like you suggested)
2021-11-29 20:37:40 +0100 <boxscape_> right, makes sense
2021-11-29 20:37:41 +0100 <janus> may as well do it correctly now so people can turn on -Wall -Werror
2021-11-29 20:38:35 +0100 <janus> i was a bit surprised that even if you have mytypeConcat and you set (<>)=mytypeConcat , it still will warn you if you do mappend=mytypeConcat... seems a bit strict
2021-11-29 20:39:03 +0100 <boxscape_> overriding the mappend default implementation is arguably always either a no-op or wrong
2021-11-29 20:39:29 +0100 <boxscape_> since it'd implemented as `mappend = (<>)` by default, *and* the Monoid laws state that `mappend` must be equal to (<>)
2021-11-29 20:41:01 +0100 <boxscape_> (well, actually, it's not a law, the docs make a stronger argument - "In a future GHC release mappend will be removed from Monoid." So just a bad idea to define `mappend`.)
2021-11-29 20:41:02 +0100 <janus> well the pattern i suggested is a no-op on modern ghcs. but it allows for simpler code if you want compatibility with ghc 8.0, for instance
2021-11-29 20:41:39 +0100 <boxscape_> janus the guidelines are that code must work with the latest three releases without CPP, and ghc 8.0 is not part of those three.
2021-11-29 20:41:57 +0100 <boxscape_> s/code must work/there must be a single way to make your code work
2021-11-29 20:42:22 +0100 <janus> which guidelines?
2021-11-29 20:42:37 +0100 <boxscape_> the guidelines used by the GHC team to decide which warnings to give
2021-11-29 20:43:19 +0100 <boxscape_> tbh I have no idea where they're written down
2021-11-29 20:43:49 +0100 <boxscape_> ah https://gitlab.haskell.org/haskell/prime/-/wikis/libraries/3-release-policy
2021-11-29 20:44:44 +0100 <boxscape_> (I suppose "GHC team" may not be entirely accurate, since this is about the basic libraries, not ghc)
2021-11-29 20:45:25 +0100 <geekosaur> I think that may still be in flux, but for a long time base was managed by the ghc team
2021-11-29 20:46:22 +0100Erutuon(~Erutuon@user/erutuon)
2021-11-29 20:46:28 +0100sunarch(uid526836@user/sunarch)
2021-11-29 20:46:40 +0100 <janus> so the guideline implies that people can move directly from 'no semigroup instance and mappend' directly to 'semigroup instance and no mappend' without using cpp?
2021-11-29 20:47:21 +0100 <janus> i wonder how often that has happened, i'd speculate that most people just use cpp
2021-11-29 20:47:44 +0100deadmarshal(~deadmarsh@95.38.113.69)
2021-11-29 20:49:24 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 20:49:29 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net)
2021-11-29 20:49:42 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 20:49:52 +0100 <boxscape_> janus I think that's not quite right - it implies people can move directly from 'no semigroup instance instance and mappend' to 'semigroup instance and mappend' (initially, Semigroup wasn't a superclass of Monoid), and then from that directly to 'semigroup instance and (<>)`. You can't skip the middle step without CPP, I believe
2021-11-29 20:50:01 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 20:50:18 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 20:50:49 +0100 <EvanR> does traversable make sense for an infinite data structure
2021-11-29 20:50:59 +0100 <EvanR> speaking of "end"
2021-11-29 20:50:59 +0100 <boxscape_> hence Semigroup was added to base two releases before it was made a superclass of Monoid
2021-11-29 20:51:25 +0100 <dsal> After ten years, the list of people I'm never working with again has doubled from 1 to 2 people.
2021-11-29 20:51:26 +0100 <boxscape_> % traverse_ print $ cycle "HELLO WORLD"
2021-11-29 20:51:32 +0100 <yahb> boxscape_: 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E'; 'L'; 'L'; 'O'; ' '; 'W'; 'O'; 'R'; 'L'; 'D'; 'H'; 'E';
2021-11-29 20:51:44 +0100 <boxscape_> (I meant to use repeat but I'll take it)
2021-11-29 20:51:45 +0100 <EvanR> oh duh I missed part of the sequenceA sig
2021-11-29 20:51:59 +0100deadmarshal(~deadmarsh@95.38.113.69) (Ping timeout: 252 seconds)
2021-11-29 20:52:24 +0100 <monochrom> I think it makes sense for very non-strict Applicative instances such as Control.Monad.State.Lazy
2021-11-29 20:52:46 +0100 <janus> boxscape_: oh, but if i attempted my proposal on a too-old ghc, it would complain about the missing mappend if i have -Wall on, right?
2021-11-29 20:52:54 +0100 <janus> boxscape_: so i would have found out
2021-11-29 20:53:21 +0100 <janus> since surely if it isn't a superclass, it can't have a default impl
2021-11-29 20:53:31 +0100 <janus> s/super/sub/
2021-11-29 20:53:36 +0100 <boxscape_> janus yeah, I think you don't even need -Wall for that
2021-11-29 20:54:00 +0100 <janus> i always have -Wall :P no point in even considering what happens if i don't
2021-11-29 20:54:05 +0100 <boxscape_> fair
2021-11-29 20:54:57 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 20:55:40 +0100 <janus> it's interesting that the warning then suggests that people can have a duplicated mappend definition. because the addition of the superclass is more than 3 releases ago, so it shouldn't affect their reasoning that people may want to support not having Semigroup
2021-11-29 20:56:09 +0100 <janus> if the warning demanded that people remove the definition, it would be less churn once they remove mappend entirely
2021-11-29 20:57:22 +0100 <janus> maybe it is something that could be changed for 9.2.2?
2021-11-29 20:58:21 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Remote host closed the connection)
2021-11-29 20:59:09 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 20:59:14 +0100max22-(~maxime@2a01cb0883359800172da6e8deefe185.ipv6.abo.wanadoo.fr) (Remote host closed the connection)
2021-11-29 21:00:24 +0100pfurla(~pfurla@2804:14d:5c81:4104:f9a9:132:7129:df1c) (Read error: Connection reset by peer)
2021-11-29 21:00:25 +0100 <boxscape_> that's a good point
2021-11-29 21:00:40 +0100joeyh(joeyh@kitenet.net) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
2021-11-29 21:00:46 +0100 <janus> i'll create a bug if nobody has complained in 15 min :P
2021-11-29 21:00:53 +0100joeyh(joeyh@kitenet.net)
2021-11-29 21:01:01 +0100pfurla(~pfurla@2804:14d:5c81:4104:f9a9:132:7129:df1c)
2021-11-29 21:01:07 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com) (Read error: Connection reset by peer)
2021-11-29 21:01:08 +0100vjoki(~vjoki@2a00:d880:3:1::fea1:9ae) (Quit: ...)
2021-11-29 21:01:08 +0100sander(~sander@user/sander) (Quit: So long! :))
2021-11-29 21:01:17 +0100whatsupdoc(uid509081@id-509081.hampstead.irccloud.com)
2021-11-29 21:01:26 +0100sander(~sander@user/sander)
2021-11-29 21:01:26 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net) (Remote host closed the connection)
2021-11-29 21:01:36 +0100max22-(~maxime@2a01cb0883359800172da6e8deefe185.ipv6.abo.wanadoo.fr)
2021-11-29 21:01:44 +0100_ht(~quassel@82-169-194-8.biz.kpn.net)
2021-11-29 21:01:51 +0100vjoki(~vjoki@2a00:d880:3:1::fea1:9ae)
2021-11-29 21:01:58 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net)
2021-11-29 21:02:56 +0100Deewiant(~deewiant@2001:470:69fc:105::2fd3) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100Franciman(~Franciman@mx1.fracta.dev) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100jinsun_(~jinsun@user/jinsun) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100unclechu(~unclechu@2001:470:69fc:105::354) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100TomWesterhout[m](~twesterho@2001:470:69fc:105::1:2918) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100alex[m]12(~alexchete@2001:470:69fc:105::1:1001) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100moats(~oats@user/oats) (Ping timeout: 265 seconds)
2021-11-29 21:02:56 +0100surgeon[m](~surge9nma@2001:470:69fc:105::f585) (Ping timeout: 265 seconds)
2021-11-29 21:03:05 +0100Logio(em@kapsi.fi) (Quit: Lost terminal)
2021-11-29 21:03:08 +0100Guest|70(~Guest|70@c-65-50-165-29.hs.gigamonster.net)
2021-11-29 21:03:25 +0100unrooted(~unrooted@2001:470:69fc:105::a4a) (Ping timeout: 265 seconds)
2021-11-29 21:03:25 +0100acidsys(~LSD@2.lsd.systems) (Ping timeout: 265 seconds)
2021-11-29 21:03:45 +0100tlax_(tlax@kapsi.fi) (Quit: Lost terminal)
2021-11-29 21:03:52 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Ping timeout: 264 seconds)
2021-11-29 21:03:54 +0100fgaz(~fgaz@2001:470:69fc:105::842) (Ping timeout: 265 seconds)
2021-11-29 21:03:54 +0100lambdandy[m](~lambdandy@2001:470:69fc:105::1:3045) (Ping timeout: 265 seconds)
2021-11-29 21:03:54 +0100Tavi[m](~factoidde@2001:470:69fc:105::1:819) (Ping timeout: 265 seconds)
2021-11-29 21:03:54 +0100Ollie[m](~ollieocha@2001:470:69fc:105::41a5) (Ping timeout: 265 seconds)
2021-11-29 21:04:10 +0100ent(entgod@kapsi.fi) (Quit: Lost terminal)
2021-11-29 21:05:09 +0100juhp(~juhp@128.106.188.82) (Ping timeout: 256 seconds)
2021-11-29 21:06:03 +0100geekosaur(~geekosaur@xmonad/geekosaur) (Quit: Leaving)
2021-11-29 21:06:17 +0100trcc(~trcc@2-104-60-169-cable.dk.customer.tdc.net) (Ping timeout: 256 seconds)
2021-11-29 21:06:50 +0100econo(uid147250@user/econo)
2021-11-29 21:07:10 +0100juhp(~juhp@128.106.188.82)
2021-11-29 21:07:53 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2021-11-29 21:10:14 +0100epolanski(uid312403@id-312403.helmsley.irccloud.com) (Quit: Connection closed for inactivity)
2021-11-29 21:10:57 +0100cosimone(~user@93-47-231-139.ip115.fastwebnet.it)
2021-11-29 21:11:55 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk)
2021-11-29 21:13:27 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de) (Remote host closed the connection)
2021-11-29 21:14:26 +0100Franciman(~Franciman@mx1.fracta.dev)
2021-11-29 21:14:35 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de)
2021-11-29 21:15:08 +0100jinsun_(~jinsun@user/jinsun)
2021-11-29 21:15:55 +0100acidsys(~LSD@2.lsd.systems)
2021-11-29 21:15:56 +0100 <janus> hmmm i think i know why: they want to mention exactly what would resolve the warning. it would be confusing if the warning were resolved by more than just what is recommended in its text. and the text does mention that removing the method is the best
2021-11-29 21:16:35 +0100TomWesterhout[m](~twesterho@2001:470:69fc:105::1:2918)
2021-11-29 21:17:04 +0100surgeon[m](~surge9nma@2001:470:69fc:105::f585)
2021-11-29 21:17:06 +0100unclechu(~unclechu@2001:470:69fc:105::354)
2021-11-29 21:17:11 +0100moats(~oats@user/oats)
2021-11-29 21:17:19 +0100hsiktas[m](~hsiktasma@2001:470:69fc:105::30d4)
2021-11-29 21:17:20 +0100alex[m]121(~alexchete@2001:470:69fc:105::1:1001)
2021-11-29 21:17:37 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk) (Ping timeout: 256 seconds)
2021-11-29 21:17:44 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 21:17:54 +0100sm2n(~sm2n@user/sm2n) (Quit: Leaving)
2021-11-29 21:17:59 +0100fendor[m](~fendormat@2001:470:69fc:105::fcbd)
2021-11-29 21:18:32 +0100Deewiant(~deewiant@2001:470:69fc:105::2fd3)
2021-11-29 21:19:13 +0100unrooted(~unrooted@2001:470:69fc:105::a4a)
2021-11-29 21:19:46 +0100Tavi[m](~factoidde@2001:470:69fc:105::1:819)
2021-11-29 21:19:56 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net) (Client Quit)
2021-11-29 21:21:17 +0100Ollie[m](~ollieocha@2001:470:69fc:105::41a5)
2021-11-29 21:21:18 +0100fgaz(~fgaz@2001:470:69fc:105::842)
2021-11-29 21:21:40 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:21:53 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x)
2021-11-29 21:22:14 +0100lambdandy[m](~lambdandy@2001:470:69fc:105::1:3045)
2021-11-29 21:23:49 +0100n8ess163(~b@pool-72-80-171-162.nycmny.fios.verizon.net)
2021-11-29 21:25:18 +0100kuribas(~user@ptr-25vy0i9nuu9joot4en6.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2021-11-29 21:26:49 +0100 <maerwald> jan
2021-11-29 21:29:07 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 21:29:21 +0100sm2n(ae95cb1267@user/sm2n)
2021-11-29 21:32:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 21:32:38 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:33:29 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 256 seconds)
2021-11-29 21:34:02 +0100wrengr(~wrengr@34.133.83.34.bc.googleusercontent.com)
2021-11-29 21:38:33 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 21:38:46 +0100Codaraxis(~Codaraxis@user/codaraxis)
2021-11-29 21:38:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:39:45 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-29 21:42:31 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 21:42:49 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:44:44 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 21:45:01 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:46:58 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 21:47:16 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:47:29 +0100zer0bitz(~zer0bitz@dsl-hkibng31-54fabc-15.dhcp.inet.fi) (Read error: Connection reset by peer)
2021-11-29 21:49:09 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 21:49:27 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 21:50:51 +0100Pickchea(~private@user/pickchea)
2021-11-29 21:52:22 +0100boxscape_(~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de) (Quit: Connection closed)
2021-11-29 21:52:37 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk)
2021-11-29 21:54:55 +0100michalz(~michalz@185.246.204.62) (Remote host closed the connection)
2021-11-29 21:55:15 +0100jkoshy(99b9359beb@2604:bf00:561:2000::10f)
2021-11-29 21:55:37 +0100boxscape_(~boxscape_@p4ff0bb6c.dip0.t-ipconnect.de)
2021-11-29 21:56:53 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk) (Ping timeout: 252 seconds)
2021-11-29 21:59:25 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net) (Quit: Client closed)
2021-11-29 22:00:43 +0100chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2021-11-29 22:00:55 +0100chexum(~quassel@gateway/tor-sasl/chexum)
2021-11-29 22:04:37 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 22:04:55 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 22:06:33 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl)
2021-11-29 22:07:17 +0100eyJhb(~eyJhb@user/eyjhb)
2021-11-29 22:09:24 +0100_ht(~quassel@82-169-194-8.biz.kpn.net) (Remote host closed the connection)
2021-11-29 22:10:33 +0100gehmehgeh(~user@user/gehmehgeh) (Ping timeout: 276 seconds)
2021-11-29 22:12:32 +0100gehmehgeh(~user@user/gehmehgeh)
2021-11-29 22:12:39 +0100 <eyJhb> Considering picking up Haskell, or learning some of the basics. Is there any recommendations beyound what is given an haskell.org? I have littel experience with functional programming (my only thing being nix)
2021-11-29 22:13:14 +0100acidjnk_new(~acidjnk@p200300d0c7271e72fcf154b5eecf3df6.dip0.t-ipconnect.de)
2021-11-29 22:15:09 +0100 <sm> welcome. So many.. what kind of resource do you like ?
2021-11-29 22:15:48 +0100 <jle`> lhll
2021-11-29 22:16:00 +0100 <pragma-> eyJhb: I have been enjoying Real World Haskell recently.
2021-11-29 22:16:22 +0100 <pragma-> http://book.realworldhaskell.org/read/
2021-11-29 22:16:38 +0100 <dsal> I don't feel I learned much from RWH. It felt more like a demonstration than educational material to me.
2021-11-29 22:16:49 +0100 <pragma-> interesting
2021-11-29 22:17:02 +0100 <jle`> whoops, sorry, that was a mis-click, not an acronym for a book :)
2021-11-29 22:17:05 +0100 <dsal> You're still allowed to like it.
2021-11-29 22:17:39 +0100 <dolio> Seems like it's probably not an ideal intro for someone with little functional programming experience, anyway.
2021-11-29 22:17:43 +0100smrandomly throws out https://www.stephendiehl.com/posts/docs.html
2021-11-29 22:17:54 +0100 <dsal> jle`: Heh. I thought you were referring to the Hutton book somehow.
2021-11-29 22:18:03 +0100 <eyJhb> I am still reading haskell.org, so it might already be there. - I have mostly liked things such as, a tour of go ( https://go.dev/tour/welcome/1 ), ie. small guides that take you through the basics and advance up to the higher concepts in a semi consistent flow. Not sure how much sense I am making :)
2021-11-29 22:18:34 +0100 <sm> @where htac then, eyJhb
2021-11-29 22:18:34 +0100 <lambdabot> "Haskell Tutorial and Cookbook" by Mark Watson in 2017-09-04 at <https://leanpub.com/haskell-cookbook>
2021-11-29 22:18:35 +0100 <dsal> "What I Wish I Knew" was completely insane. It's a cool resource, but it seems to cover everything knowable, which, I mean, sure, I wish I knew everything at every step. :)
2021-11-29 22:18:53 +0100 <dsal> Hutton isn't too bad.
2021-11-29 22:18:56 +0100 <Rembane> Covering everything is quite good for a good reference. :)
2021-11-29 22:19:02 +0100 <Rembane> But it's not a tutorial.
2021-11-29 22:19:40 +0100lukec(9dfd4d094e@2604:bf00:561:2000::10e)
2021-11-29 22:20:15 +0100 <pragma-> "Learn You A Haskell" was recommended to me in the past. Upon reading it, it felt like a fast-paced introduction/tutorial, quickly getting to the point of things. But it's a bit rough around the edges with typoes and place-holders and &gt; instead of > in various spots. I don't know.
2021-11-29 22:20:17 +0100 <dsal> "What I Wish I Knew When Learning" makes me think of a small set of gotchas or something. Not like, just everything possible. I do wish I knew everything possible, but I'm OK not knowing it when I was learning. :)
2021-11-29 22:21:00 +0100 <DigitalKiwi> +1 hutton
2021-11-29 22:21:05 +0100cjb(~cjb@user/cjb)
2021-11-29 22:21:06 +0100 <eyJhb> I can see there is a lot to learn/know. :) Trying to compact all the info and will sort it for further investigation!
2021-11-29 22:21:24 +0100 <dsal> eyJhb: I still like haskellbook.com, but some people dislike it. And there's a third category that's not important. :)
2021-11-29 22:21:28 +0100Codaraxis_(~Codaraxis@user/codaraxis)
2021-11-29 22:21:44 +0100 <eyJhb> third category?
2021-11-29 22:21:51 +0100 <sm> considering just books, there are what.. 50ish at this point ?
2021-11-29 22:21:53 +0100 <dsal> Some people don't like things about the book that aren't about the material itself.
2021-11-29 22:22:20 +0100 <DigitalKiwi> it's an ok book but it was too long for me to finish
2021-11-29 22:22:35 +0100 <dsal> Yeah, it's long which can be very good or not very good.
2021-11-29 22:22:49 +0100 <DigitalKiwi> programming in haskell was good and short enough i've read it at least twice
2021-11-29 22:22:52 +0100 <dsal> I think I did about half of it and got pretty proficient. Then went back to finish it.
2021-11-29 22:23:02 +0100 <sm> I had better +1 Hutton, one of the best haskell teachers (it's also on youtube now)
2021-11-29 22:23:29 +0100 <dsal> Reading books on YT seems interesting.
2021-11-29 22:23:41 +0100 <dsal> Can I get the lens book in audible?
2021-11-29 22:24:02 +0100 <sm> not literally the book on youtube, but a course based on it, I assume quite similar
2021-11-29 22:24:25 +0100 <DigitalKiwi> only if you want to start a war about how to pronounce all of the symbols
2021-11-29 22:24:39 +0100 <dsal> Yeah, makes sense. I like watching some of these videos, but I don't know that I learn as much from watching an hour long video.
2021-11-29 22:24:47 +0100 <eyJhb> Unsure if this is unpopular, but I am trying to learn/see what a functional programming language can give me. Currently I code a lot in Golang (and still quite enjoy it), but frameworks (for web however) such as Elm, has got my interest sparked some more. (as mentioned, only really done nix atm.)
2021-11-29 22:24:48 +0100 <sm> graham hutton is the latest guest on haskell interlude podcast by the way - recommended
2021-11-29 22:24:49 +0100 <dsal> Er, having my iPad play an hour long video while I get distracted and talk to people in irc
2021-11-29 22:24:57 +0100mestre(~mestre@191.177.175.57) (Quit: Lost terminal)
2021-11-29 22:25:04 +0100 <dsal> eyJhb: Have you programmed in elm?
2021-11-29 22:25:07 +0100 <DigitalKiwi> https://www.youtube.com/watch?v=NzIZzvbplSM&list=PLly9WMAVMrayYo2c-1E_rIRwBXG_FbLBW
2021-11-29 22:25:29 +0100Codaraxis(~Codaraxis@user/codaraxis) (Ping timeout: 252 seconds)
2021-11-29 22:25:32 +0100 <dsal> elm is like a *super* stripped down haskell with a bunch of features missing. By the time you get good at elm and go to haskell, you'll be starving for all the missing pieces.
2021-11-29 22:25:49 +0100 <pragma-> it's cute how http://dev.stephendiehl.com/hask/tutorial.pdf is named "tutorial" when it's so comprehensive
2021-11-29 22:26:04 +0100 <DigitalKiwi> i think it started off small
2021-11-29 22:26:06 +0100 <pragma-> 5th major edition too
2021-11-29 22:26:09 +0100 <dsal> It probably started out with a couple of important firsts and then it was just too late to rename it.
2021-11-29 22:26:17 +0100 <hpc> it'd be nice if that site had https
2021-11-29 22:26:27 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186)
2021-11-29 22:26:48 +0100 <DigitalKiwi> wish he'd quit tweeting about crypto and finish http://dev.stephendiehl.com/fun/
2021-11-29 22:27:17 +0100 <DigitalKiwi> hpc: last time i suggested someone that they got mad lol
2021-11-29 22:27:20 +0100 <eyJhb> dsal: ONly read some of the tutorial/getting started, and then I was somewhat put off by what I have read about tho community (I have not confirmed anything, and I still not ruled out wanting to use Elm yet)
2021-11-29 22:27:48 +0100 <dsal> Yeah, so there are a couple of downsides of elm that aren't the language. Kind of like haskellbook.com :)
2021-11-29 22:28:03 +0100 <eyJhb> Really surprised by how welcoming this channel was upon my initial query in here. Not always you see that.
2021-11-29 22:28:09 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (Read error: Connection reset by peer)
2021-11-29 22:28:28 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186)
2021-11-29 22:28:34 +0100 <eyJhb> dsal: That's what I gathered so far about Elm yes ... Kind of sad (if it is like I read)
2021-11-29 22:28:35 +0100pavonia(~user@user/siracusa)
2021-11-29 22:28:37 +0100 <hpc> eyJhb: we draw people in with niceness and then corrupt them with our abstract mathematical ways
2021-11-29 22:28:44 +0100 <dsal> The language itself isn't that bad, though I do wish it were just a *little* more. The closedness of Elm and lack of welcome input is unfortunate.
2021-11-29 22:28:44 +0100 <Rembane> +1
2021-11-29 22:28:51 +0100 <dsal> We also have ghcjs and purescript, though.
2021-11-29 22:28:55 +0100 <sm> #haskell is full of slackers, easiest place to get a conversation going :)
2021-11-29 22:29:06 +0100 <hpc> sm: technically it's full of irc-ers
2021-11-29 22:29:08 +0100 <Rembane> I'm really fond of Purescript, or was a couple of years ago, haven't used it since.
2021-11-29 22:29:10 +0100 <dsal> I've had a pretty good experience with purescript.
2021-11-29 22:29:12 +0100 <eyJhb> dsal: I have looked at PureScript as well :p
2021-11-29 22:29:27 +0100 <dsal> purescript is very similar to haskell. Close enough that it gets confusing at times. heh
2021-11-29 22:29:29 +0100 <DigitalKiwi> hpc https://twitter.com/ArchKiwi/status/1226378413033869313?s=20
2021-11-29 22:29:35 +0100 <dsal> It's newer, so it doesn't have some of the warts.
2021-11-29 22:29:39 +0100 <sm> we have saved so much time from functional programming we have to use it up in here
2021-11-29 22:30:03 +0100 <hpc> i like typescript better than purescript, but that might just be because of how insane its type system is
2021-11-29 22:30:13 +0100 <DigitalKiwi> hpc: https://twitter.com/ArchKiwi/status/1421185794191073280?s=20
2021-11-29 22:30:19 +0100 <jneira[m]> sm: what could do we do while waiting for the compiler do our work?
2021-11-29 22:30:32 +0100 <dsal> eyJhb: I was a golang early adopter. Was a big chunk of my career for a bit over ten years, but Haskell is so much easier that I can't be bothered to do anything in go anymore.
2021-11-29 22:30:40 +0100 <sm> ouch, that may be nearer to the truth jneira
2021-11-29 22:30:42 +0100 <Rembane> hpc: Which type system is more extreme, Typescript or Purescript? :)
2021-11-29 22:30:43 +0100 <int-e> jneira[m]: https://xkcd.com/303/
2021-11-29 22:30:47 +0100 <hpc> DigitalKiwi: the real security argument is javascript - with http anyone can inject arbitrary code onto a webpage
2021-11-29 22:30:50 +0100 <hpc> no matter what it's serving
2021-11-29 22:31:10 +0100 <eyJhb> I got to go now, but thanks for all your input ! I will sort it and try to figure out my direction :)
2021-11-29 22:31:29 +0100 <dsal> eyJhb: We're all here dying to help get this knowledge out of our heads and into others'
2021-11-29 22:31:36 +0100 <hpc> Rembane: definitely typescript
2021-11-29 22:31:45 +0100 <hpc> purescript tries to be sensible, and typescript tries to type javascript
2021-11-29 22:32:21 +0100 <dsal> I've only kind of seen TS from afar. It seems like such a bad idea given alternatives.
2021-11-29 22:32:25 +0100 <eyJhb> I might be tempted to try out PureScript and Haskell at the same time. Unsure how that will go however. Might be confusing from what I hear
2021-11-29 22:32:34 +0100 <Rembane> hpc: Got it, I wasn't clear on what you meant there for a while. I like that with Typescript, but I don't use it so I haven't been bitten by it yet.
2021-11-29 22:32:53 +0100 <sm> seemed like a good idea to me, seems to have worked reasonably well
2021-11-29 22:32:54 +0100 <hpc> dsal: it makes a lot more sense when you have an existing large js codebase to refactor
2021-11-29 22:33:30 +0100 <DigitalKiwi> when typescript was created what alternatives were there
2021-11-29 22:33:32 +0100 <dsal> I suppose. That wasn't how it was introduced to me. :) It was like, "Hey, let's use this web framework for this new project that requires TypeScript!"
2021-11-29 22:33:53 +0100 <dsal> And the end result was I wanted some features I'd done in JS that the TS proponents weren't able to implement.
2021-11-29 22:33:59 +0100 <hpc> yeah, it doesn't make sense there
2021-11-29 22:34:17 +0100 <hpc> although to be fair you lost me at "let's use this web framework"
2021-11-29 22:34:23 +0100Guest17(~Guest17@eth-west-pareq2-46-193-4-100.wb.wifirst.net)
2021-11-29 22:34:28 +0100 <Rembane> DigitalKiwi: Flow! :D
2021-11-29 22:34:34 +0100 <dsal> They wanted to use Angular 2.
2021-11-29 22:34:57 +0100 <dsal> I like using d3 for some stuff, but it seems incompatible with just about everything.
2021-11-29 22:35:35 +0100 <hpc> i have seen some angular 2 code, and i don't get it
2021-11-29 22:36:05 +0100 <dsal> I used the original angular and it seemed fine. The later code was just about impossible for me to follow.
2021-11-29 22:39:48 +0100glguy(x@libera/staff/glguy) (*.net *.split)
2021-11-29 22:39:48 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (*.net *.split)
2021-11-29 22:39:48 +0100Codaraxis_(~Codaraxis@user/codaraxis) (*.net *.split)
2021-11-29 22:39:48 +0100lukec(9dfd4d094e@2604:bf00:561:2000::10e) (*.net *.split)
2021-11-29 22:39:48 +0100jkoshy(99b9359beb@2604:bf00:561:2000::10f) (*.net *.split)
2021-11-29 22:39:48 +0100Pickchea(~private@user/pickchea) (*.net *.split)
2021-11-29 22:39:48 +0100sm2n(ae95cb1267@user/sm2n) (*.net *.split)
2021-11-29 22:39:48 +0100x88x88x(~cheeg@gateway/vpn/pia/x88x88x) (*.net *.split)
2021-11-29 22:39:48 +0100acidsys(~LSD@2.lsd.systems) (*.net *.split)
2021-11-29 22:39:48 +0100geekosaur(~geekosaur@xmonad/geekosaur) (*.net *.split)
2021-11-29 22:39:48 +0100econo(uid147250@user/econo) (*.net *.split)
2021-11-29 22:39:48 +0100sander(~sander@user/sander) (*.net *.split)
2021-11-29 22:39:48 +0100vjoki(~vjoki@2a00:d880:3:1::fea1:9ae) (*.net *.split)
2021-11-29 22:39:48 +0100mvk(~mvk@2607:fea8:5cc1:fa00::4702) (*.net *.split)
2021-11-29 22:39:48 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3) (*.net *.split)
2021-11-29 22:39:48 +0100arahael(~arahael@27-32-144-20.tpgi.com.au) (*.net *.split)
2021-11-29 22:39:48 +0100jkaye(~jkaye@2601:281:8300:7530:7309:f677:c771:6123) (*.net *.split)
2021-11-29 22:39:48 +0100evanrelf(3addc196af@2604:bf00:561:2000::f0) (*.net *.split)
2021-11-29 22:39:48 +0100waleee(~waleee@h-82-196-111-63.NA.cust.bahnhof.se) (*.net *.split)
2021-11-29 22:39:48 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf) (*.net *.split)
2021-11-29 22:39:48 +0100emf(~emf@2620:10d:c090:400::5:9a5b) (*.net *.split)
2021-11-29 22:39:48 +0100lbseale(~ep1ctetus@user/ep1ctetus) (*.net *.split)
2021-11-29 22:39:48 +0100slowButPresent(~slowButPr@user/slowbutpresent) (*.net *.split)
2021-11-29 22:39:48 +0100zmt00(~zmt00@user/zmt00) (*.net *.split)
2021-11-29 22:39:48 +0100xff0x(~xff0x@2001:1a81:527f:8300:4a2b:7ccd:5352:f2b5) (*.net *.split)
2021-11-29 22:39:48 +0100Sgeo(~Sgeo@user/sgeo) (*.net *.split)
2021-11-29 22:39:48 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net) (*.net *.split)
2021-11-29 22:39:48 +0100mc47(~mc47@xmonad/TheMC47) (*.net *.split)
2021-11-29 22:39:48 +0100Typedfern(~Typedfern@75.red-88-22-25.staticip.rima-tde.net) (*.net *.split)
2021-11-29 22:39:48 +0100TranquilEcho(~grom@user/tranquilecho) (*.net *.split)
2021-11-29 22:39:48 +0100mmhat(~mmh@55d431d8.access.ecotel.net) (*.net *.split)
2021-11-29 22:39:48 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de) (*.net *.split)
2021-11-29 22:39:49 +0100masterbuilder(~user@user/masterbuilder) (*.net *.split)
2021-11-29 22:39:49 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split)
2021-11-29 22:39:49 +0100takuan(~takuan@178-116-218-225.access.telenet.be) (*.net *.split)
2021-11-29 22:39:49 +0100sweater(~sweater@206.81.18.26) (*.net *.split)
2021-11-29 22:39:49 +0100carbolymer(~carbolyme@dropacid.net) (*.net *.split)
2021-11-29 22:39:49 +0100shanemikel(~shanemike@desk.roadwar.net) (*.net *.split)
2021-11-29 22:39:49 +0100remexre(~remexre@user/remexre) (*.net *.split)
2021-11-29 22:39:49 +0100teddyc(theodorc@cassarossa.samfundet.no) (*.net *.split)
2021-11-29 22:39:49 +0100dyniec(~dyniec@mail.dybiec.info) (*.net *.split)
2021-11-29 22:39:49 +0100rembo10(~rembo10@remulis.com) (*.net *.split)
2021-11-29 22:39:49 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667) (*.net *.split)
2021-11-29 22:39:49 +0100cocreature(~moritz@2a03:b0c0:3:d0::c8:f001) (*.net *.split)
2021-11-29 22:39:49 +0100xacktm(xacktm@user/xacktm) (*.net *.split)
2021-11-29 22:39:49 +0100acowley(~acowley@c-68-83-22-43.hsd1.nj.comcast.net) (*.net *.split)
2021-11-29 22:39:49 +0100Boarders_(sid425905@id-425905.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100JSharp(sid4580@id-4580.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100ysh(sid6017@id-6017.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100whatif(~user@2400:8902::f03c:92ff:fe60:98d8) (*.net *.split)
2021-11-29 22:39:49 +0100sprout_(~quassel@2a02:a467:ccd6:1:4de4:2055:b8c4:f1e) (*.net *.split)
2021-11-29 22:39:49 +0100saolsen(sid26430@id-26430.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100tapas(sid467876@id-467876.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100cbarrett(sid192934@id-192934.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100enemeth79(sid309041@id-309041.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100siers(~ij@user/ij) (*.net *.split)
2021-11-29 22:39:49 +0100bjs(sid190364@user/bjs) (*.net *.split)
2021-11-29 22:39:49 +0100sclv(sid39734@haskell/developer/sclv) (*.net *.split)
2021-11-29 22:39:49 +0100mrianbloom(sid350277@id-350277.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100dmj`(sid72307@id-72307.hampstead.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100acertain(sid470584@id-470584.hampstead.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100Pent(sid313808@id-313808.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100gaze___(sid387101@id-387101.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100V(~v@anomalous.eu) (*.net *.split)
2021-11-29 22:39:49 +0100AndreasK(sid320732@id-320732.uxbridge.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100hongminhee(sid295@id-295.tinside.irccloud.com) (*.net *.split)
2021-11-29 22:39:49 +0100pragma-(~chaos@user/pragmatic-chaos) (*.net *.split)
2021-11-29 22:39:49 +0100OscarH(~OscarH@90.201.86.195) (*.net *.split)
2021-11-29 22:39:49 +0100dka(~code-is-a@ns3059207.ip-193-70-33.eu) (*.net *.split)
2021-11-29 22:39:49 +0100piele(~piele@tbonesteak.creativeserver.net) (*.net *.split)
2021-11-29 22:39:49 +0100ncopa(~ncopa@gbr2-dev1.alpinelinux.org) (*.net *.split)
2021-11-29 22:39:49 +0100phma(~phma@host-67-44-208-5.hnremote.net) (*.net *.split)
2021-11-29 22:39:49 +0100haskl(~haskl@user/haskl) (*.net *.split)
2021-11-29 22:39:49 +0100pie__(~pie_bnc@user/pie/x-2818909) (*.net *.split)
2021-11-29 22:39:49 +0100bcoppens_(~bartcopp@vpn2.bartcoppens.be) (*.net *.split)
2021-11-29 22:39:49 +0100m1dnight_(~christoph@christophe.dev) (*.net *.split)
2021-11-29 22:39:49 +0100[exa](~exa@user/exa/x-3587197) (*.net *.split)
2021-11-29 22:39:49 +0100Hecate(~mariposa@user/hecate) (*.net *.split)
2021-11-29 22:39:49 +0100dfordivam1(~dfordivam@tk2-219-19469.vs.sakura.ne.jp) (*.net *.split)
2021-11-29 22:39:49 +0100anderson(~ande@user/anderson) (*.net *.split)
2021-11-29 22:39:49 +0100glider(~glider@user/glider) (*.net *.split)
2021-11-29 22:39:49 +0100dminuoso(~dminuoso@user/dminuoso) (*.net *.split)
2021-11-29 22:39:49 +0100aforemny(~aforemny@static.248.158.34.188.clients.your-server.de) (*.net *.split)
2021-11-29 22:39:49 +0100Techcable_(~Techcable@168.235.93.147) (*.net *.split)
2021-11-29 22:39:49 +0100madnight_(~madnight@static.59.103.201.195.clients.your-server.de) (*.net *.split)
2021-11-29 22:39:49 +0100greyrat_(~greyrat@ip202.ip-51-178-215.eu) (*.net *.split)
2021-11-29 22:39:49 +0100m5zs7k(aquares@web10.mydevil.net) (*.net *.split)
2021-11-29 22:39:49 +0100eL_Bart0-(eL_Bart0@dietunichtguten.org) (*.net *.split)
2021-11-29 22:39:49 +0100davl_(~davl@207.154.228.18) (*.net *.split)
2021-11-29 22:39:49 +0100MidAutumnMoon6(~MidAutumn@user/midautumnmoon) (*.net *.split)
2021-11-29 22:39:50 +0100Teacup(~teacup@user/teacup) (*.net *.split)
2021-11-29 22:39:50 +0100dolio(~dolio@130.44.130.54) (*.net *.split)
2021-11-29 22:39:50 +0100jzsinatra(~jzsinatra@88-114-238-31.elisa-laajakaista.fi) (*.net *.split)
2021-11-29 22:39:50 +0100statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com) (*.net *.split)
2021-11-29 22:39:50 +0100dtman34(~dtman34@c-73-62-246-247.hsd1.mn.comcast.net) (*.net *.split)
2021-11-29 22:39:50 +0100hiredman(~hiredman@frontier1.downey.family) (*.net *.split)
2021-11-29 22:39:50 +0100peutri(~peutri@ns317027.ip-94-23-46.eu) (*.net *.split)
2021-11-29 22:39:50 +0100lyxia(~lyxia@poisson.chat) (*.net *.split)
2021-11-29 22:39:50 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca) (*.net *.split)
2021-11-29 22:39:50 +0100heath(~heath@user/heath) (*.net *.split)
2021-11-29 22:39:50 +0100incertia(~incertia@d4-50-26-103.nap.wideopenwest.com) (*.net *.split)
2021-11-29 22:39:50 +0100ikke(~kevin@alpine/developer/ikke) (*.net *.split)
2021-11-29 22:39:50 +0100nisstyre(~wes@user/nisstyre) (*.net *.split)
2021-11-29 22:39:50 +0100Athas(athas@sigkill.dk) (*.net *.split)
2021-11-29 22:39:50 +0100haveo(~haveo@sl35.iuwt.fr) (*.net *.split)
2021-11-29 22:39:50 +0100cods(~fred@82-65-232-44.subs.proxad.net) (*.net *.split)
2021-11-29 22:39:50 +0100Patternmaster(~georg@li1192-118.members.linode.com) (*.net *.split)
2021-11-29 22:39:50 +0100bens(~bens@www.typius.com) (*.net *.split)
2021-11-29 22:39:50 +0100jjhoo(~jahakala@user/jjhoo) (*.net *.split)
2021-11-29 22:39:50 +0100dawdler(~dawdler@user/dawdler) (*.net *.split)
2021-11-29 22:39:50 +0100finsternis(~X@23.226.237.192) (*.net *.split)
2021-11-29 22:39:50 +0100bgamari(~bgamari@64.223.235.131) (*.net *.split)
2021-11-29 22:39:50 +0100yahb(xsbot@user/mniip/bot/yahb) (*.net *.split)
2021-11-29 22:39:50 +0100turlando(~turlando@user/turlando) (*.net *.split)
2021-11-29 22:39:50 +0100mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net) (*.net *.split)
2021-11-29 22:39:50 +0100dwt_(~dwt_@c-98-200-58-177.hsd1.tx.comcast.net) (*.net *.split)
2021-11-29 22:39:50 +0100jackhill(~jackhill@kalessin.dragonsnail.net) (*.net *.split)
2021-11-29 22:39:50 +0100Unode(~Unode@194.94.44.220) (*.net *.split)
2021-11-29 22:39:50 +0100derelict(~derelict@user/derelict) (*.net *.split)
2021-11-29 22:39:50 +0100asm(~alexander@user/asm) (*.net *.split)
2021-11-29 22:39:50 +0100gawen(~gawen@user/gawen) (*.net *.split)
2021-11-29 22:39:50 +0100oats(~thomas@user/oats) (*.net *.split)
2021-11-29 22:39:50 +0100caubert(~caubert@136.244.111.235) (*.net *.split)
2021-11-29 22:39:50 +0100WhateverRabbit(~rabbit@206.81.18.26) (*.net *.split)
2021-11-29 22:39:50 +0100niko(~niko@libera/staff/niko) (*.net *.split)
2021-11-29 22:39:50 +0100spoofer(~spoofer@64.185.111.205) (*.net *.split)
2021-11-29 22:39:50 +0100hgolden(~hgolden2@cpe-172-114-81-123.socal.res.rr.com) (*.net *.split)
2021-11-29 22:39:50 +0100adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com) (*.net *.split)
2021-11-29 22:39:50 +0100mmaruseacph2(~mihai@198.199.100.72) (*.net *.split)
2021-11-29 22:39:50 +0100acidjnk_new(~acidjnk@p200300d0c7271e72fcf154b5eecf3df6.dip0.t-ipconnect.de) (*.net *.split)
2021-11-29 22:39:50 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de) (*.net *.split)
2021-11-29 22:39:50 +0100joeyh(joeyh@kitenet.net) (*.net *.split)
2021-11-29 22:39:50 +0100sunarch(uid526836@user/sunarch) (*.net *.split)
2021-11-29 22:39:50 +0100unyu(~pyon@user/pyon) (*.net *.split)
2021-11-29 22:39:50 +0100reumeth(~reumeth@user/reumeth) (*.net *.split)
2021-11-29 22:39:50 +0100FragByte(~christian@user/fragbyte) (*.net *.split)
2021-11-29 22:39:50 +0100notzmv(~zmv@user/notzmv) (*.net *.split)
2021-11-29 22:39:50 +0100nautical(~nautical@2601:602:900:1630::396f) (*.net *.split)
2021-11-29 22:39:51 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de) (*.net *.split)
2021-11-29 22:39:51 +0100infinity0(~infinity0@occupy.ecodis.net) (*.net *.split)
2021-11-29 22:39:51 +0100shriekingnoise(~shrieking@186.137.144.80) (*.net *.split)
2021-11-29 22:39:51 +0100hays(rootvegeta@fsf/member/hays) (*.net *.split)
2021-11-29 22:39:51 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (*.net *.split)
2021-11-29 22:39:51 +0100retro_(~retro@97e2ba2e.skybroadband.com) (*.net *.split)
2021-11-29 22:39:51 +0100TMA(tma@twin.jikos.cz) (*.net *.split)
2021-11-29 22:39:51 +0100iphy(sid67735@id-67735.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100whez(sid470288@id-470288.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100_0x47_(sid508683@id-508683.tinside.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100awpr(uid446117@id-446117.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100teehemkay_(sid14792@id-14792.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100angerman(sid209936@id-209936.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100ephemient(uid407513@id-407513.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100gregberns__(sid315709@id-315709.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100kaizen(sid501599@id-501599.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100MironZ(~MironZ@nat-infra.ehlab.uk) (*.net *.split)
2021-11-29 22:39:51 +0100Feuermagier_(~Feuermagi@154.28.188.22) (*.net *.split)
2021-11-29 22:39:51 +0100Kaiepi(~Kaiepi@156.34.44.192) (*.net *.split)
2021-11-29 22:39:51 +0100Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net) (*.net *.split)
2021-11-29 22:39:51 +0100micro(~micro@user/micro) (*.net *.split)
2021-11-29 22:39:51 +0100russruss(~russruss@my.russellmcc.com) (*.net *.split)
2021-11-29 22:39:51 +0100monochrom(trebla@216.138.220.146) (*.net *.split)
2021-11-29 22:39:51 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100nitrix(~nitrix@user/nitrix) (*.net *.split)
2021-11-29 22:39:51 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (*.net *.split)
2021-11-29 22:39:51 +0100thaumavorio(~thaumavor@thaumavor.io) (*.net *.split)
2021-11-29 22:39:51 +0100quintasan(~quassel@quintasan.pl) (*.net *.split)
2021-11-29 22:39:51 +0100tv(~tv@user/tv) (*.net *.split)
2021-11-29 22:39:51 +0100tnks(sid412124@id-412124.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100duckonomy(~duckonomy@177.ip-144-217-84.net) (*.net *.split)
2021-11-29 22:39:51 +0100marienz(~marienz@libera/staff/marienz) (*.net *.split)
2021-11-29 22:39:51 +0100davetapley(sid666@id-666.uxbridge.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100rtpg(sid443069@id-443069.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100lightandlight(sid135476@id-135476.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100caasih(sid13241@id-13241.ilkley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100PotatoGim(sid99505@id-99505.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100philpax_(sid516926@id-516926.lymington.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100jakesyl_(sid56879@id-56879.hampstead.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100bradparker(sid262931@uxbridge.irccloud.com) (*.net *.split)
2021-11-29 22:39:51 +0100Ekho(~Ekho@user/ekho) (*.net *.split)
2021-11-29 22:39:51 +0100vgtw(~vgtw@c-6a60205c.07-348-756d651.bbcust.telenor.se) (*.net *.split)
2021-11-29 22:39:51 +0100yushyin(3RNeQpThcJ@karif.server-speed.net) (*.net *.split)
2021-11-29 22:39:51 +0100m4lvin(~m4lvin@w4eg.de) (*.net *.split)
2021-11-29 22:39:51 +0100fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com) (*.net *.split)
2021-11-29 22:39:51 +0100myme(~myme@40.51-175-185.customer.lyse.net) (*.net *.split)
2021-11-29 22:39:51 +0100amk(~amk@109.255.169.126) (*.net *.split)
2021-11-29 22:39:51 +0100averell(~averell@user/averell) (*.net *.split)
2021-11-29 22:39:51 +0100tom__(~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684) (*.net *.split)
2021-11-29 22:39:51 +0100Maxdamantus(~Maxdamant@user/maxdamantus) (*.net *.split)
2021-11-29 22:39:51 +0100mjrosenb(~mjrosenb@pool-108-54-97-96.nycmny.fios.verizon.net) (*.net *.split)
2021-11-29 22:39:51 +0100dibblego(~dibblego@haskell/developer/dibblego) (*.net *.split)
2021-11-29 22:39:51 +0100bbear(~znc@21212.s.t4vps.eu) (*.net *.split)
2021-11-29 22:39:51 +0100darkstardevx(~darkstard@50.39.115.145) (*.net *.split)
2021-11-29 22:39:51 +0100erisco(~erisco@d24-57-249-233.home.cgocable.net) (*.net *.split)
2021-11-29 22:39:51 +0100dragestil(~znc@user/dragestil) (*.net *.split)
2021-11-29 22:39:51 +0100welterde(welterde@thinkbase.srv.welterde.de) (*.net *.split)
2021-11-29 22:39:51 +0100earthy(~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0) (*.net *.split)
2021-11-29 22:39:51 +0100cawfee(~root@2406:3003:2077:2758::babe) (*.net *.split)
2021-11-29 22:39:51 +0100liskin(~liskin@xmonad/liskin) (*.net *.split)
2021-11-29 22:39:51 +0100mud(~mud@user/kadoban) (*.net *.split)
2021-11-29 22:39:51 +0100emergence(~emergence@vm0.max-p.me) (*.net *.split)
2021-11-29 22:39:51 +0100tinwood(~tinwood@canonical/tinwood) (*.net *.split)
2021-11-29 22:39:51 +0100leah2(~leah@vuxu.org) (*.net *.split)
2021-11-29 22:39:51 +0100defanor(~defanor@tart.uberspace.net) (*.net *.split)
2021-11-29 22:39:51 +0100MasseR(~MasseR@51.15.143.128) (*.net *.split)
2021-11-29 22:39:51 +0100codedmart(codedmart@2600:3c01::f03c:92ff:fefe:8511) (*.net *.split)
2021-11-29 22:39:51 +0100nshepperd(nshepperd@2600:3c03::f03c:92ff:fe28:92c9) (*.net *.split)
2021-11-29 22:39:51 +0100haasn(~nand@haasn.dev) (*.net *.split)
2021-11-29 22:39:51 +0100Putonlalla(~sapekiis@it-cyan.it.jyu.fi) (*.net *.split)
2021-11-29 22:39:51 +0100koolazer(~koo@user/koolazer) (*.net *.split)
2021-11-29 22:39:51 +0100mikko(~mikko@2a02:7b40:d418:6a61::1) (*.net *.split)
2021-11-29 22:39:51 +0100Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0) (*.net *.split)
2021-11-29 22:39:51 +0100bjobjo(~bjobjo@user/bjobjo) (*.net *.split)
2021-11-29 22:39:51 +0100xnbya(~xnbya@2a01:4f8:c17:cbdd::1) (*.net *.split)
2021-11-29 22:39:51 +0100bastelfreak(~bastelfre@basteles-bastelknecht.bastelfreak.org) (*.net *.split)
2021-11-29 22:39:51 +0100Adran(~adran@botters/adran) (*.net *.split)
2021-11-29 22:39:51 +0100energizer(~energizer@user/energizer) (*.net *.split)
2021-11-29 22:39:51 +0100tomjaguarpaw(~tom@li367-225.members.linode.com) (*.net *.split)
2021-11-29 22:39:51 +0100res0nat0r8(~Fletch@dia.whatbox.ca) (*.net *.split)
2021-11-29 22:39:52 +0100Arsen(arsen@managarm/dev/Arsen) (*.net *.split)
2021-11-29 22:39:52 +0100hrdl(~hrdl@mail.hrdl.eu) (*.net *.split)
2021-11-29 22:39:52 +0100immae(~immae@2a01:4f8:141:53e7::) (*.net *.split)
2021-11-29 22:39:52 +0100cross(~cross@spitfire.i.gajendra.net) (*.net *.split)
2021-11-29 22:39:52 +0100janus(janus@anubis.0x90.dk) (*.net *.split)
2021-11-29 22:39:52 +0100phaazon(~phaazon@2001:41d0:a:fe76::1) (*.net *.split)
2021-11-29 22:39:52 +0100sphynx(~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288) (*.net *.split)
2021-11-29 22:39:52 +0100dixie(~dixie@real.wilbury.sk) (*.net *.split)
2021-11-29 22:39:52 +0100dunj3(~dunj3@kingdread.de) (*.net *.split)
2021-11-29 22:39:52 +0100cpape(~user@2a01:4f9:c010:632d::1) (*.net *.split)
2021-11-29 22:39:52 +0100sm[i]_(~user@li229-222.members.linode.com) (*.net *.split)
2021-11-29 22:39:52 +0100xsarnik(xsarnik@lounge.fi.muni.cz) (*.net *.split)
2021-11-29 22:39:52 +0100tubogram(~tubogram@user/tubogram) (*.net *.split)
2021-11-29 22:39:52 +0100cjb(~cjb@user/cjb) (*.net *.split)
2021-11-29 22:39:52 +0100Axman6(~Axman6@user/axman6) (*.net *.split)
2021-11-29 22:39:56 +0100favonia(~favonia@user/favonia)
2021-11-29 22:39:58 +0100hololeap(~hololeap@user/hololeap) (Excess Flood)
2021-11-29 22:40:55 +0100merijn(~merijn@83-160-49-249.ip.xs4all.nl) (Ping timeout: 256 seconds)
2021-11-29 22:40:55 +0100Erutuon(~Erutuon@user/erutuon) (Ping timeout: 256 seconds)
2021-11-29 22:41:24 +0100hololeap(~hololeap@user/hololeap)
2021-11-29 22:43:04 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 22:43:21 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 22:44:29 +0100jbox(~jbox@2600:1700:2196:2060:75f5:b1ad:65ea:5c0a)
2021-11-29 22:44:29 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186)
2021-11-29 22:44:29 +0100Codaraxis_(~Codaraxis@user/codaraxis)
2021-11-29 22:44:29 +0100cjb(~cjb@user/cjb)
2021-11-29 22:44:29 +0100lukec(9dfd4d094e@2604:bf00:561:2000::10e)
2021-11-29 22:44:29 +0100acidjnk_new(~acidjnk@p200300d0c7271e72fcf154b5eecf3df6.dip0.t-ipconnect.de)
2021-11-29 22:44:29 +0100jkoshy(99b9359beb@2604:bf00:561:2000::10f)
2021-11-29 22:44:29 +0100sm2n(ae95cb1267@user/sm2n)
2021-11-29 22:44:29 +0100acidsys(~LSD@2.lsd.systems)
2021-11-29 22:44:29 +0100ubert(~Thunderbi@p200300ecdf0ba218e6b318fffe838f33.dip0.t-ipconnect.de)
2021-11-29 22:44:29 +0100geekosaur(~geekosaur@xmonad/geekosaur)
2021-11-29 22:44:29 +0100econo(uid147250@user/econo)
2021-11-29 22:44:29 +0100vjoki(~vjoki@2a00:d880:3:1::fea1:9ae)
2021-11-29 22:44:29 +0100sander(~sander@user/sander)
2021-11-29 22:44:29 +0100joeyh(joeyh@kitenet.net)
2021-11-29 22:44:29 +0100sunarch(uid526836@user/sunarch)
2021-11-29 22:44:29 +0100mvk(~mvk@2607:fea8:5cc1:fa00::4702)
2021-11-29 22:44:29 +0100eggplantade(~Eggplanta@2600:1700:bef1:5e10:356c:6df7:ff7f:48a3)
2021-11-29 22:44:29 +0100arahael(~arahael@27-32-144-20.tpgi.com.au)
2021-11-29 22:44:29 +0100evanrelf(3addc196af@2604:bf00:561:2000::f0)
2021-11-29 22:44:29 +0100jkaye(~jkaye@2601:281:8300:7530:7309:f677:c771:6123)
2021-11-29 22:44:29 +0100waleee(~waleee@h-82-196-111-63.NA.cust.bahnhof.se)
2021-11-29 22:44:29 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf)
2021-11-29 22:44:29 +0100emf(~emf@2620:10d:c090:400::5:9a5b)
2021-11-29 22:44:29 +0100unyu(~pyon@user/pyon)
2021-11-29 22:44:29 +0100reumeth(~reumeth@user/reumeth)
2021-11-29 22:44:29 +0100masterbuilder(~user@user/masterbuilder)
2021-11-29 22:44:29 +0100lbseale(~ep1ctetus@user/ep1ctetus)
2021-11-29 22:44:29 +0100slowButPresent(~slowButPr@user/slowbutpresent)
2021-11-29 22:44:29 +0100zmt00(~zmt00@user/zmt00)
2021-11-29 22:44:29 +0100xff0x(~xff0x@2001:1a81:527f:8300:4a2b:7ccd:5352:f2b5)
2021-11-29 22:44:29 +0100shapr(~user@pool-100-36-247-68.washdc.fios.verizon.net)
2021-11-29 22:44:29 +0100Sgeo(~Sgeo@user/sgeo)
2021-11-29 22:44:29 +0100mc47(~mc47@xmonad/TheMC47)
2021-11-29 22:44:29 +0100Typedfern(~Typedfern@75.red-88-22-25.staticip.rima-tde.net)
2021-11-29 22:44:29 +0100TranquilEcho(~grom@user/tranquilecho)
2021-11-29 22:44:29 +0100FragByte(~christian@user/fragbyte)
2021-11-29 22:44:29 +0100mmhat(~mmh@55d431d8.access.ecotel.net)
2021-11-29 22:44:29 +0100Profpatsch(~Profpatsc@static.88-198-193-255.clients.your-server.de)
2021-11-29 22:44:29 +0100albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2021-11-29 22:44:29 +0100notzmv(~zmv@user/notzmv)
2021-11-29 22:44:29 +0100nautical(~nautical@2601:602:900:1630::396f)
2021-11-29 22:44:29 +0100sweater(~sweater@206.81.18.26)
2021-11-29 22:44:29 +0100carbolymer(~carbolyme@dropacid.net)
2021-11-29 22:44:29 +0100shanemikel(~shanemike@desk.roadwar.net)
2021-11-29 22:44:29 +0100remexre(~remexre@user/remexre)
2021-11-29 22:44:29 +0100teddyc(theodorc@cassarossa.samfundet.no)
2021-11-29 22:44:29 +0100dyniec(~dyniec@mail.dybiec.info)
2021-11-29 22:44:29 +0100rembo10(~rembo10@remulis.com)
2021-11-29 22:44:29 +0100TimWolla(~timwolla@2a01:4f8:150:6153:beef::6667)
2021-11-29 22:44:29 +0100cocreature(~moritz@2a03:b0c0:3:d0::c8:f001)
2021-11-29 22:44:29 +0100xacktm(xacktm@user/xacktm)
2021-11-29 22:44:29 +0100pragma-(~chaos@user/pragmatic-chaos)
2021-11-29 22:44:29 +0100OscarH(~OscarH@90.201.86.195)
2021-11-29 22:44:29 +0100ncopa(~ncopa@gbr2-dev1.alpinelinux.org)
2021-11-29 22:44:29 +0100piele(~piele@tbonesteak.creativeserver.net)
2021-11-29 22:44:29 +0100dka(~code-is-a@ns3059207.ip-193-70-33.eu)
2021-11-29 22:44:29 +0100ralu(~ralu@static.211.245.203.116.clients.your-server.de)
2021-11-29 22:44:29 +0100infinity0(~infinity0@occupy.ecodis.net)
2021-11-29 22:44:29 +0100shriekingnoise(~shrieking@186.137.144.80)
2021-11-29 22:44:29 +0100nitrix(~nitrix@user/nitrix)
2021-11-29 22:44:29 +0100hays(rootvegeta@fsf/member/hays)
2021-11-29 22:44:29 +0100phma(~phma@host-67-44-208-5.hnremote.net)
2021-11-29 22:44:29 +0100johnw(~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net)
2021-11-29 22:44:29 +0100retro_(~retro@97e2ba2e.skybroadband.com)
2021-11-29 22:44:29 +0100Axman6(~Axman6@user/axman6)
2021-11-29 22:44:29 +0100haskl(~haskl@user/haskl)
2021-11-29 22:44:29 +0100TMA(tma@twin.jikos.cz)
2021-11-29 22:44:29 +0100iphy(sid67735@id-67735.lymington.irccloud.com)
2021-11-29 22:44:29 +0100_0x47_(sid508683@id-508683.tinside.irccloud.com)
2021-11-29 22:44:29 +0100whez(sid470288@id-470288.lymington.irccloud.com)
2021-11-29 22:44:29 +0100awpr(uid446117@id-446117.lymington.irccloud.com)
2021-11-29 22:44:29 +0100teehemkay_(sid14792@id-14792.lymington.irccloud.com)
2021-11-29 22:44:29 +0100angerman(sid209936@id-209936.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100ephemient(uid407513@id-407513.lymington.irccloud.com)
2021-11-29 22:44:29 +0100gregberns__(sid315709@id-315709.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100kaizen(sid501599@id-501599.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100MironZ(~MironZ@nat-infra.ehlab.uk)
2021-11-29 22:44:29 +0100Feuermagier_(~Feuermagi@154.28.188.22)
2021-11-29 22:44:29 +0100Kaiepi(~Kaiepi@156.34.44.192)
2021-11-29 22:44:29 +0100Katarushisu(~Katarushi@cpc147334-finc20-2-0-cust27.4-2.cable.virginm.net)
2021-11-29 22:44:29 +0100micro(~micro@user/micro)
2021-11-29 22:44:29 +0100sm[i]_(~user@li229-222.members.linode.com)
2021-11-29 22:44:29 +0100xsarnik(xsarnik@lounge.fi.muni.cz)
2021-11-29 22:44:29 +0100pie__(~pie_bnc@user/pie/x-2818909)
2021-11-29 22:44:29 +0100bcoppens_(~bartcopp@vpn2.bartcoppens.be)
2021-11-29 22:44:29 +0100m1dnight_(~christoph@christophe.dev)
2021-11-29 22:44:29 +0100dfordivam1(~dfordivam@tk2-219-19469.vs.sakura.ne.jp)
2021-11-29 22:44:29 +0100[exa](~exa@user/exa/x-3587197)
2021-11-29 22:44:29 +0100Hecate(~mariposa@user/hecate)
2021-11-29 22:44:29 +0100anderson(~ande@user/anderson)
2021-11-29 22:44:29 +0100glider(~glider@user/glider)
2021-11-29 22:44:29 +0100dminuoso(~dminuoso@user/dminuoso)
2021-11-29 22:44:29 +0100aforemny(~aforemny@static.248.158.34.188.clients.your-server.de)
2021-11-29 22:44:29 +0100Techcable_(~Techcable@168.235.93.147)
2021-11-29 22:44:29 +0100madnight_(~madnight@static.59.103.201.195.clients.your-server.de)
2021-11-29 22:44:29 +0100m5zs7k(aquares@web10.mydevil.net)
2021-11-29 22:44:29 +0100greyrat_(~greyrat@ip202.ip-51-178-215.eu)
2021-11-29 22:44:29 +0100eL_Bart0-(eL_Bart0@dietunichtguten.org)
2021-11-29 22:44:29 +0100davl_(~davl@207.154.228.18)
2021-11-29 22:44:29 +0100russruss(~russruss@my.russellmcc.com)
2021-11-29 22:44:29 +0100MidAutumnMoon6(~MidAutumn@user/midautumnmoon)
2021-11-29 22:44:29 +0100Teacup(~teacup@user/teacup)
2021-11-29 22:44:29 +0100monochrom(trebla@216.138.220.146)
2021-11-29 22:44:29 +0100dolio(~dolio@130.44.130.54)
2021-11-29 22:44:29 +0100jzsinatra(~jzsinatra@88-114-238-31.elisa-laajakaista.fi)
2021-11-29 22:44:29 +0100statusbot(~statusbot@ec2-34-198-122-184.compute-1.amazonaws.com)
2021-11-29 22:44:29 +0100dtman34(~dtman34@c-73-62-246-247.hsd1.mn.comcast.net)
2021-11-29 22:44:29 +0100hiredman(~hiredman@frontier1.downey.family)
2021-11-29 22:44:29 +0100hongminhee(sid295@id-295.tinside.irccloud.com)
2021-11-29 22:44:29 +0100SethTisue__(sid14912@id-14912.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100AndreasK(sid320732@id-320732.uxbridge.irccloud.com)
2021-11-29 22:44:29 +0100V(~v@anomalous.eu)
2021-11-29 22:44:29 +0100gaze___(sid387101@id-387101.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100Pent(sid313808@id-313808.lymington.irccloud.com)
2021-11-29 22:44:29 +0100acertain(sid470584@id-470584.hampstead.irccloud.com)
2021-11-29 22:44:29 +0100dmj`(sid72307@id-72307.hampstead.irccloud.com)
2021-11-29 22:44:29 +0100mrianbloom(sid350277@id-350277.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100sclv(sid39734@haskell/developer/sclv)
2021-11-29 22:44:29 +0100bjs(sid190364@user/bjs)
2021-11-29 22:44:29 +0100siers(~ij@user/ij)
2021-11-29 22:44:29 +0100enemeth79(sid309041@id-309041.lymington.irccloud.com)
2021-11-29 22:44:29 +0100cbarrett(sid192934@id-192934.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100tapas(sid467876@id-467876.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100saolsen(sid26430@id-26430.lymington.irccloud.com)
2021-11-29 22:44:29 +0100sprout_(~quassel@2a02:a467:ccd6:1:4de4:2055:b8c4:f1e)
2021-11-29 22:44:29 +0100whatif(~user@2400:8902::f03c:92ff:fe60:98d8)
2021-11-29 22:44:29 +0100ysh(sid6017@id-6017.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100JSharp(sid4580@id-4580.lymington.irccloud.com)
2021-11-29 22:44:29 +0100Boarders_(sid425905@id-425905.lymington.irccloud.com)
2021-11-29 22:44:29 +0100acowley(~acowley@c-68-83-22-43.hsd1.nj.comcast.net)
2021-11-29 22:44:29 +0100S11001001(sid42510@id-42510.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100NiKaN(sid385034@id-385034.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2021-11-29 22:44:29 +0100thaumavorio(~thaumavor@thaumavor.io)
2021-11-29 22:44:29 +0100quintasan(~quassel@quintasan.pl)
2021-11-29 22:44:29 +0100peutri(~peutri@ns317027.ip-94-23-46.eu)
2021-11-29 22:44:29 +0100lyxia(~lyxia@poisson.chat)
2021-11-29 22:44:29 +0100tv(~tv@user/tv)
2021-11-29 22:44:29 +0100tnks(sid412124@id-412124.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100glguy(x@libera/staff/glguy)
2021-11-29 22:44:29 +0100perrierjouet(~perrier-j@modemcable012.251-130-66.mc.videotron.ca)
2021-11-29 22:44:29 +0100duckonomy(~duckonomy@177.ip-144-217-84.net)
2021-11-29 22:44:29 +0100marienz(~marienz@libera/staff/marienz)
2021-11-29 22:44:29 +0100davetapley(sid666@id-666.uxbridge.irccloud.com)
2021-11-29 22:44:29 +0100rtpg(sid443069@id-443069.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100b20n(sid115913@id-115913.uxbridge.irccloud.com)
2021-11-29 22:44:29 +0100lightandlight(sid135476@id-135476.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100caasih(sid13241@id-13241.ilkley.irccloud.com)
2021-11-29 22:44:29 +0100edmundnoble(sid229620@id-229620.helmsley.irccloud.com)
2021-11-29 22:44:29 +0100PotatoGim(sid99505@id-99505.lymington.irccloud.com)
2021-11-29 22:44:29 +0100philpax_(sid516926@id-516926.lymington.irccloud.com)
2021-11-29 22:44:29 +0100jakesyl_(sid56879@id-56879.hampstead.irccloud.com)
2021-11-29 22:44:29 +0100bradparker(sid262931@uxbridge.irccloud.com)
2021-11-29 22:44:29 +0100Ekho(~Ekho@user/ekho)
2021-11-29 22:44:29 +0100heath(~heath@user/heath)
2021-11-29 22:44:29 +0100incertia(~incertia@d4-50-26-103.nap.wideopenwest.com)
2021-11-29 22:44:29 +0100ikke(~kevin@alpine/developer/ikke)
2021-11-29 22:44:29 +0100nisstyre(~wes@user/nisstyre)
2021-11-29 22:44:29 +0100Athas(athas@sigkill.dk)
2021-11-29 22:44:29 +0100haveo(~haveo@sl35.iuwt.fr)
2021-11-29 22:44:29 +0100Patternmaster(~georg@li1192-118.members.linode.com)
2021-11-29 22:44:29 +0100cods(~fred@82-65-232-44.subs.proxad.net)
2021-11-29 22:44:29 +0100bens(~bens@www.typius.com)
2021-11-29 22:44:29 +0100jjhoo(~jahakala@user/jjhoo)
2021-11-29 22:44:29 +0100dawdler(~dawdler@user/dawdler)
2021-11-29 22:44:29 +0100vgtw(~vgtw@c-6a60205c.07-348-756d651.bbcust.telenor.se)
2021-11-29 22:44:29 +0100yushyin(3RNeQpThcJ@karif.server-speed.net)
2021-11-29 22:44:29 +0100m4lvin(~m4lvin@w4eg.de)
2021-11-29 22:44:29 +0100fryguybob(~fryguybob@cpe-74-67-169-145.rochester.res.rr.com)
2021-11-29 22:44:29 +0100finsternis(~X@23.226.237.192)
2021-11-29 22:44:29 +0100myme(~myme@40.51-175-185.customer.lyse.net)
2021-11-29 22:44:29 +0100amk(~amk@109.255.169.126)
2021-11-29 22:44:29 +0100bgamari(~bgamari@64.223.235.131)
2021-11-29 22:44:29 +0100averell(~averell@user/averell)
2021-11-29 22:44:29 +0100tom__(~tom@2a00:23c8:970c:4801:5b6a:e81b:79dc:f684)
2021-11-29 22:44:29 +0100yahb(xsbot@user/mniip/bot/yahb)
2021-11-29 22:44:29 +0100Maxdamantus(~Maxdamant@user/maxdamantus)
2021-11-29 22:44:29 +0100mjrosenb(~mjrosenb@pool-108-54-97-96.nycmny.fios.verizon.net)
2021-11-29 22:44:29 +0100turlando(~turlando@user/turlando)
2021-11-29 22:44:29 +0100mjs2600(~mjs2600@c-24-91-3-49.hsd1.vt.comcast.net)
2021-11-29 22:44:29 +0100dibblego(~dibblego@haskell/developer/dibblego)
2021-11-29 22:44:29 +0100bbear(~znc@21212.s.t4vps.eu)
2021-11-29 22:44:29 +0100darkstardevx(~darkstard@50.39.115.145)
2021-11-29 22:44:29 +0100erisco(~erisco@d24-57-249-233.home.cgocable.net)
2021-11-29 22:44:29 +0100spoofer(~spoofer@64.185.111.205)
2021-11-29 22:44:29 +0100dwt_(~dwt_@c-98-200-58-177.hsd1.tx.comcast.net)
2021-11-29 22:44:29 +0100jackhill(~jackhill@kalessin.dragonsnail.net)
2021-11-29 22:44:29 +0100dragestil(~znc@user/dragestil)
2021-11-29 22:44:29 +0100Unode(~Unode@194.94.44.220)
2021-11-29 22:44:29 +0100welterde(welterde@thinkbase.srv.welterde.de)
2021-11-29 22:44:29 +0100derelict(~derelict@user/derelict)
2021-11-29 22:44:29 +0100earthy(~arthurvl@2001:984:275b:1:ba27:ebff:fea0:40b0)
2021-11-29 22:44:29 +0100cawfee(~root@2406:3003:2077:2758::babe)
2021-11-29 22:44:29 +0100liskin(~liskin@xmonad/liskin)
2021-11-29 22:44:29 +0100asm(~alexander@user/asm)
2021-11-29 22:44:29 +0100mud(~mud@user/kadoban)
2021-11-29 22:44:29 +0100gawen(~gawen@user/gawen)
2021-11-29 22:44:29 +0100oats(~thomas@user/oats)
2021-11-29 22:44:29 +0100emergence(~emergence@vm0.max-p.me)
2021-11-29 22:44:29 +0100caubert(~caubert@136.244.111.235)
2021-11-29 22:44:29 +0100tinwood(~tinwood@canonical/tinwood)
2021-11-29 22:44:29 +0100leah2(~leah@vuxu.org)
2021-11-29 22:44:29 +0100WhateverRabbit(~rabbit@206.81.18.26)
2021-11-29 22:44:29 +0100niko(~niko@libera/staff/niko)
2021-11-29 22:44:29 +0100defanor(~defanor@tart.uberspace.net)
2021-11-29 22:44:29 +0100MasseR(~MasseR@51.15.143.128)
2021-11-29 22:44:29 +0100codedmart(codedmart@2600:3c01::f03c:92ff:fefe:8511)
2021-11-29 22:44:29 +0100nshepperd(nshepperd@2600:3c03::f03c:92ff:fe28:92c9)
2021-11-29 22:44:29 +0100haasn(~nand@haasn.dev)
2021-11-29 22:44:29 +0100hgolden(~hgolden2@cpe-172-114-81-123.socal.res.rr.com)
2021-11-29 22:44:29 +0100adamCS(~adamCS@ec2-34-207-160-255.compute-1.amazonaws.com)
2021-11-29 22:44:29 +0100mmaruseacph2(~mihai@198.199.100.72)
2021-11-29 22:44:29 +0100Putonlalla(~sapekiis@it-cyan.it.jyu.fi)
2021-11-29 22:44:29 +0100koolazer(~koo@user/koolazer)
2021-11-29 22:44:29 +0100tubogram(~tubogram@user/tubogram)
2021-11-29 22:44:29 +0100mikko(~mikko@2a02:7b40:d418:6a61::1)
2021-11-29 22:44:29 +0100Taneb(~Taneb@2001:41c8:51:10d:aaaa:0:aaaa:0)
2021-11-29 22:44:29 +0100bjobjo(~bjobjo@user/bjobjo)
2021-11-29 22:44:29 +0100xnbya(~xnbya@2a01:4f8:c17:cbdd::1)
2021-11-29 22:44:29 +0100bastelfreak(~bastelfre@basteles-bastelknecht.bastelfreak.org)
2021-11-29 22:44:29 +0100Adran(~adran@botters/adran)
2021-11-29 22:44:29 +0100energizer(~energizer@user/energizer)
2021-11-29 22:44:29 +0100tomjaguarpaw(~tom@li367-225.members.linode.com)
2021-11-29 22:44:29 +0100res0nat0r8(~Fletch@dia.whatbox.ca)
2021-11-29 22:44:29 +0100Arsen(arsen@managarm/dev/Arsen)
2021-11-29 22:44:29 +0100hrdl(~hrdl@mail.hrdl.eu)
2021-11-29 22:44:29 +0100immae(~immae@2a01:4f8:141:53e7::)
2021-11-29 22:44:29 +0100cross(~cross@spitfire.i.gajendra.net)
2021-11-29 22:44:29 +0100phaazon(~phaazon@2001:41d0:a:fe76::1)
2021-11-29 22:44:29 +0100janus(janus@anubis.0x90.dk)
2021-11-29 22:44:29 +0100sphynx(~xnyhps@2a02:2770:3:0:216:3eff:fe67:3288)
2021-11-29 22:44:29 +0100dixie(~dixie@real.wilbury.sk)
2021-11-29 22:44:29 +0100cpape(~user@2a01:4f9:c010:632d::1)
2021-11-29 22:44:29 +0100dunj3(~dunj3@kingdread.de)
2021-11-29 22:44:30 +0100reumeth(~reumeth@user/reumeth) (Ping timeout: 268 seconds)
2021-11-29 22:44:32 +0100glider(~glider@user/glider) (Max SendQ exceeded)
2021-11-29 22:45:21 +0100glider(~glider@user/glider)
2021-11-29 22:45:32 +0100Topsi(~Tobias@dyndsl-095-033-088-116.ewe-ip-backbone.de) (Read error: Connection reset by peer)
2021-11-29 22:45:48 +0100Farzad(~FarzadBek@5.234.247.133)
2021-11-29 22:46:56 +0100sunarch(uid526836@user/sunarch) (Ping timeout: 268 seconds)
2021-11-29 22:47:28 +0100sunarch(uid526836@user/sunarch)
2021-11-29 22:49:23 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 22:49:41 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 22:50:21 +0100burnsidesLlama(~burnsides@dhcp168-026.wadham.ox.ac.uk)
2021-11-29 22:51:00 +0100wootehfoot(~wootehfoo@user/wootehfoot)
2021-11-29 22:57:27 +0100jstolarek(~jstolarek@137.220.120.162)
2021-11-29 23:05:51 +0100poie(~poie@87.196.74.8)
2021-11-29 23:07:04 +0100 <poie> .
2021-11-29 23:07:13 +0100Logio(em@kapsi.fi)
2021-11-29 23:09:49 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 23:10:06 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 23:11:41 +0100jstolarek(~jstolarek@137.220.120.162) (Ping timeout: 252 seconds)
2021-11-29 23:13:45 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 23:14:03 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 23:14:12 +0100zincy_(~zincy@2a00:23c8:970c:4801:4cc1:c671:40b5:6186) (Remote host closed the connection)
2021-11-29 23:14:45 +0100mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2021-11-29 23:15:48 +0100wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2021-11-29 23:15:55 +0100Tuplanolla(~Tuplanoll@91-159-69-50.elisa-laajakaista.fi)
2021-11-29 23:16:22 +0100lavaman(~lavaman@98.38.249.169)
2021-11-29 23:17:29 +0100 <janus> DigitalKiwi: why do you wish he'd quit writing about crypto? i am happy somebody is speaking up
2021-11-29 23:18:12 +0100LukeHoersten(~LukeHoers@user/lukehoersten)
2021-11-29 23:18:36 +0100 <maerwald> Rembane: isn't that dead?
2021-11-29 23:19:09 +0100LukeHoersten(~LukeHoers@user/lukehoersten) (Client Quit)
2021-11-29 23:19:12 +0100 <janus> is what dead? purescript? no
2021-11-29 23:20:11 +0100 <DigitalKiwi> flow
2021-11-29 23:20:20 +0100 <Rembane> maerwald: Flow is dead, but it wasn't when Typescript was created
2021-11-29 23:20:40 +0100 <maerwald> ergonomics > properties
2021-11-29 23:20:58 +0100 <DigitalKiwi> good thing typescript was created then eh otherwise we'd have nothing ;D
2021-11-29 23:21:09 +0100lavaman(~lavaman@98.38.249.169) (Ping timeout: 256 seconds)
2021-11-29 23:24:58 +0100gehmehgeh(~user@user/gehmehgeh) (Quit: Leaving)
2021-11-29 23:31:19 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 23:31:37 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 23:32:24 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net)
2021-11-29 23:33:44 +0100danso(~danso@23-233-111-52.cpe.pppoe.ca) (Ping timeout: 265 seconds)
2021-11-29 23:34:41 +0100poie(~poie@87.196.74.8) (Remote host closed the connection)
2021-11-29 23:37:28 +0100yauhsien(~yauhsien@61-231-58-114.dynamic-ip.hinet.net) (Ping timeout: 264 seconds)
2021-11-29 23:40:25 +0100 <Axman6> janus: because a lot of his points are just wrong, and they are made in a pretty insulting way. He seems to have a particular hate for IOHK, who are one of the leaders in making crypto currency not need to boil the oceans to buy a bag of chips. he seems to have taken the stance that cryptocurrency is inherently evil and everyone should think it's bad, but really that's a difficult position to completely support
2021-11-29 23:41:53 +0100xcmw(~textual@dyn-72-33-2-173.uwnet.wisc.edu)
2021-11-29 23:42:19 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl)
2021-11-29 23:42:38 +0100 <janus> Axman6: i'd reply in #haskell-offtopic but it seems you're not there..
2021-11-29 23:44:35 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 23:44:52 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 23:46:17 +0100 <EvanR> for a minute I thought we were talking about cryptography oh well
2021-11-29 23:46:53 +0100jonatanb(~accio@31-178-144-108.dynamic.chello.pl) (Ping timeout: 252 seconds)
2021-11-29 23:47:17 +0100 <dsal> I'm too pedantic to call cryptocurrency "crypto"
2021-11-29 23:48:02 +0100Farzad(~FarzadBek@5.234.247.133) (Quit: Leaving)
2021-11-29 23:49:35 +0100 <monochrom> No worries, I refuse to call web api "api", too. :)
2021-11-29 23:50:17 +0100 <EvanR> crypto by itself of course refers to the platonic ideal of all things with crypto as its prefix
2021-11-29 23:50:43 +0100 <dsal> monochrom: I have that problem, too, but I think I'm just slightly less pedantic there.
2021-11-29 23:50:54 +0100 <EvanR> anything greek necessarily does that
2021-11-29 23:52:03 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Remote host closed the connection)
2021-11-29 23:52:20 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com)
2021-11-29 23:52:33 +0100xsperry(~xs@user/xsperry) ()
2021-11-29 23:52:56 +0100 <xcmw> Given a some representation of a String, what it is best way to apply a list of sorted non overlapping edits to a string where an edit has a start line, start col, end line, end col, and the new text for that range?
2021-11-29 23:53:29 +0100 <dsal> I'd start by adjusting my data structure to something nearer the thing you're trying to do.
2021-11-29 23:53:42 +0100DNH(~DNH@2a02:8108:1100:16d8:58c0:b83a:3eea:a1cf) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2021-11-29 23:54:12 +0100 <xcmw> Do you mean the represent of the String or the edit?
2021-11-29 23:55:42 +0100 <dsal> Well, both. A string doesn't have line numbers.
2021-11-29 23:55:57 +0100 <dsal> So at the very least, you'll want some kind of container of lines since that's the basic unit of your edit description.
2021-11-29 23:56:24 +0100 <EvanR> you're line editing? How about at least IntMap Line
2021-11-29 23:56:42 +0100 <EvanR> line number indexed set of Lines xD
2021-11-29 23:56:51 +0100 <dsal> The downside of that is that it gets weird when you delete lines.
2021-11-29 23:56:51 +0100hskpractice(~hskpracti@94-255-217-215.cust.bredband2.com) (Ping timeout: 256 seconds)
2021-11-29 23:56:52 +0100alx741(~alx741@181.196.69.176) (Quit: alx741)
2021-11-29 23:56:57 +0100 <wz1000> xcmw: rope-utf16-splay might be what you are looking for. It gets used by the haskell lsp library to do something similar
2021-11-29 23:57:05 +0100 <EvanR> then it's not literally the line number
2021-11-29 23:57:08 +0100 <EvanR> it's just in order
2021-11-29 23:57:17 +0100cosimone(~user@93-47-231-139.ip115.fastwebnet.it) (Remote host closed the connection)
2021-11-29 23:57:39 +0100 <dsal> Actually, doesn't the whole Map thing have a means of accessing things by position?
2021-11-29 23:57:48 +0100 <boxscape_> at that point I imagine a Seq makes more sense than an IntMap
2021-11-29 23:58:06 +0100 <xcmw> This is related to LSP's TextEdit so that may be what I need
2021-11-29 23:58:26 +0100 <dsal> :t M.elemAt
2021-11-29 23:58:27 +0100alx741(~alx741@181.196.69.176)
2021-11-29 23:58:27 +0100 <lambdabot> Int -> M.Map k a -> (k, a)
2021-11-29 23:58:42 +0100 <wz1000> ok, well there are implmentations for this in the lsp library
2021-11-29 23:59:02 +0100 <boxscape_> an IntMap gets especially awkward when you want to add lines
2021-11-29 23:59:12 +0100 <EvanR> ah
2021-11-29 23:59:26 +0100 <xcmw> I actually want to do this in Idris so it might a bit more difficult
2021-11-29 23:59:51 +0100 <dsal> I assume the line numbers were in 10s, so adding lines means you add, e.g. 15. Solving the problem once and for all.