2022/10/06

2022-10-06 00:03:57 +0200nate1(~nate@98.45.169.16) (Ping timeout: 265 seconds)
2022-10-06 00:04:32 +0200zeenk(~zeenk@2a02:2f04:a20a:3e00:5712:52b0:ca1d:bc63) (Quit: Konversation terminated!)
2022-10-06 00:04:40 +0200talismanick(~talismani@c-73-41-86-39.hsd1.ca.comcast.net)
2022-10-06 00:04:40 +0200kdaishi(~Thunderbi@94.191.153.178.mobile.tre.se) (Read error: Connection reset by peer)
2022-10-06 00:05:40 +0200vorpuni(~pvorp@2001:861:3881:c690:19c6:ba20:2cd3:1ae7) (Quit: bye)
2022-10-06 00:08:03 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1) (Quit: Leaving)
2022-10-06 00:08:10 +0200stackdroid18(~stackdroi@user/stackdroid) (Quit: hasta la vista... tchau!)
2022-10-06 00:08:36 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 00:10:41 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 00:11:46 +0200CiaoSen(~Jura@p200300c95700eb002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-10-06 00:16:46 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:880f:f8ae:6077:ffec) (Remote host closed the connection)
2022-10-06 00:17:46 +0200Tuplanolla(~Tuplanoll@91-159-69-34.elisa-laajakaista.fi) (Quit: Leaving.)
2022-10-06 00:19:09 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net) (Ping timeout: 250 seconds)
2022-10-06 00:19:56 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 00:24:18 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 00:26:08 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 00:30:20 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 00:33:16 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 00:39:03 +0200kuribas(~user@ptr-17d51eouflh02xad3po.18120a2.ip6.access.telenet.be) (Remote host closed the connection)
2022-10-06 00:39:56 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
2022-10-06 00:41:02 +0200chele(~chele@user/chele) (Remote host closed the connection)
2022-10-06 00:43:26 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 00:43:32 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-10-06 00:47:25 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 00:49:16 +0200Midjak(~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
2022-10-06 00:55:51 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 268 seconds)
2022-10-06 01:00:02 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 01:02:01 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds)
2022-10-06 01:04:26 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 01:10:00 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2022-10-06 01:11:21 +0200nate1(~nate@98.45.169.16)
2022-10-06 01:12:41 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-10-06 01:13:11 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2022-10-06 01:14:27 +0200zns(~zns@user/zns) (Quit: nyaa~)
2022-10-06 01:14:37 +0200zane_(~zane@c-24-56-246-176.customer.broadstripe.net)
2022-10-06 01:15:26 +0200zane_(~zane@c-24-56-246-176.customer.broadstripe.net) (Client Quit)
2022-10-06 01:16:03 +0200zns(~zns@user/zns)
2022-10-06 01:16:07 +0200nate1(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2022-10-06 01:16:14 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 01:17:17 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:880f:f8ae:6077:ffec)
2022-10-06 01:18:59 +0200gentauro(~gentauro@user/gentauro)
2022-10-06 01:19:40 +0200finsternis(~X@23.226.237.192) (Read error: Connection reset by peer)
2022-10-06 01:20:01 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 260 seconds)
2022-10-06 01:20:08 +0200sammelweis_(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-10-06 01:20:34 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 01:22:51 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:880f:f8ae:6077:ffec) (Ping timeout: 250 seconds)
2022-10-06 01:22:55 +0200finsternis(~X@23.226.237.192)
2022-10-06 01:22:55 +0200wonko(~wjc@2a0e:1c80:11::50) (Ping timeout: 268 seconds)
2022-10-06 01:26:26 +0200sammelweis_(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.)
2022-10-06 01:31:53 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:4dd:6d68:f3a8:33c3)
2022-10-06 01:31:55 +0200zns(~zns@user/zns) (Ping timeout: 265 seconds)
2022-10-06 01:31:56 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 01:31:57 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-06 01:33:37 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 01:36:45 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 265 seconds)
2022-10-06 01:38:43 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 248 seconds)
2022-10-06 01:40:27 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-10-06 01:45:35 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 01:47:42 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 01:48:49 +0200lottaquestions(~nick@2607:fa49:503e:7100:aef6:98d:3d4f:a599) (Ping timeout: 268 seconds)
2022-10-06 01:49:41 +0200wonko(~wjc@2a0e:1c80:11::50)
2022-10-06 01:52:28 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 01:59:27 +0200lottaquestions(~nick@2607:fa49:503e:7100:dcba:436c:887:a9eb)
2022-10-06 02:02:24 +0200segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net)
2022-10-06 02:03:33 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-10-06 02:03:36 +0200 <talismanick> I'd like to get the path to a directory (with makeAbsoluteDir) and traverse the result (splitting on "/") with filterM using `(\x->doesDirExist $ makeAbsoluteDir x </>".git/")`
2022-10-06 02:03:59 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 02:04:56 +0200 <talismanick> Any clue how I might define a Traversable instance on (Path Abs Dir) (or (Path Abs t) more generally) so I can filterM on each directory?
2022-10-06 02:05:46 +0200 <talismanick> or convert it into a list for filterM, that is
2022-10-06 02:08:12 +0200hgolden(~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
2022-10-06 02:08:14 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 02:08:43 +0200edrx(~Eduardo@2804:56c:d2d3:4800:cf7d:b421:4c3a:392e)
2022-10-06 02:10:03 +0200hgolden(~hgolden@cpe-172-251-233-141.socal.res.rr.com)
2022-10-06 02:10:10 +0200doyougnu(~doyougnu@cpe-74-69-132-225.stny.res.rr.com)
2022-10-06 02:10:38 +0200edrx(~Eduardo@2804:56c:d2d3:4800:cf7d:b421:4c3a:392e) ()
2022-10-06 02:10:52 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 258 seconds)
2022-10-06 02:11:32 +0200 <jackdk> You want find the containing git repo, by walking up the directory tree until you either see a .git dir or reach `/`?
2022-10-06 02:12:42 +0200doyougnu(~doyougnu@cpe-74-69-132-225.stny.res.rr.com) (Remote host closed the connection)
2022-10-06 02:12:50 +0200 <talismanick> jackdk: instead of recursing, I figured I could convert /path/to/folder into [/path,/path/to,/path/to/folder] and filter by whether each has a .git
2022-10-06 02:13:02 +0200 <talismanick> so I find the outermost containing repo
2022-10-06 02:13:36 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-10-06 02:14:12 +0200 <jackdk> Yeah when I did this I just wrote the recursion directly. You can repeatedly apply `Path.parent` I guess but you need to make sure you don't generate an infinite list because `Path.parent [absdir|/|] == [absdir|/|]`
2022-10-06 02:14:29 +0200 <jackdk> Like you _could_ use unfold or iterate but I think it's not worth it
2022-10-06 02:15:57 +0200 <gqplox> halve ns = (take halfLength ns, drop halfLength ns)
2022-10-06 02:16:07 +0200 <gqplox> here my editor is saying: use splitAt
2022-10-06 02:16:17 +0200fresheyeball(~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net)
2022-10-06 02:16:18 +0200 <gqplox> why not: splitAt halfLength ns
2022-10-06 02:16:24 +0200 <gqplox> decreases laziness
2022-10-06 02:16:28 +0200 <fresheyeball> https://www.johndcook.com/blog/2022/10/02/flags-unicode/
2022-10-06 02:16:33 +0200 <fresheyeball> I want this to work in Haskell
2022-10-06 02:16:40 +0200 <fresheyeball> I have the alpha-2 for a country
2022-10-06 02:16:55 +0200 <gqplox> why is that better?
2022-10-06 02:17:01 +0200 <fresheyeball> For example Afghanistan = "AF"
2022-10-06 02:17:15 +0200 <fresheyeball> And I want to get the unicode of the country flag
2022-10-06 02:22:18 +0200zns(~zns@user/zns)
2022-10-06 02:22:25 +0200zns(~zns@user/zns) (Client Quit)
2022-10-06 02:22:46 +0200zns(~zns@user/zns)
2022-10-06 02:27:10 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 02:27:55 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 02:28:50 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-10-06 02:28:50 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-10-06 02:28:50 +0200wroathe(~wroathe@user/wroathe)
2022-10-06 02:30:58 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-10-06 02:32:21 +0200qrpnxz(~qrpnxz@fsf/member/qrpnxz) (Ping timeout: 260 seconds)
2022-10-06 02:33:48 +0200 <talismanick> jackdk: Is there perhaps an `iterateQueue` so I can write `takeWhile ([absdir|/|]/=) $ iterateQueue parent myAbsPath`?
2022-10-06 02:33:56 +0200qrpnxz(~qrpnxz@fsf/member/qrpnxz)
2022-10-06 02:34:15 +0200 <fresheyeball> I don't see why it's not working
2022-10-06 02:34:45 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 02:35:04 +0200 <talismanick> well, I can only get the parent wrapped in a monad because IO, but you see what I mean
2022-10-06 02:35:52 +0200 <jackdk> huh? `Path.parent` is a pure function
2022-10-06 02:36:03 +0200Everything(~Everythin@37.115.210.35) ()
2022-10-06 02:36:12 +0200 <jackdk> oh no, we've lost everything!
2022-10-06 02:36:12 +0200Lycurgus(~juan@user/Lycurgus)
2022-10-06 02:36:22 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:f166:d554:7957:eb7a)
2022-10-06 02:36:32 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 02:37:05 +0200 <geekosaur> fresheyeball, what is your code?
2022-10-06 02:37:07 +0200 <talismanick> or, not Path.parent, but UnliftIO.Path.Directory.makeAbsoluteDir
2022-10-06 02:37:08 +0200 <geekosaur> @where paste
2022-10-06 02:37:08 +0200 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com
2022-10-06 02:37:27 +0200off^(~off@c-76-17-6-165.hsd1.ga.comcast.net)
2022-10-06 02:37:36 +0200 <talismanick> which returns the absolute path to a directory, wrapped in IO because it could fail (for whatever reason)
2022-10-06 02:39:16 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 02:39:33 +0200 <fresheyeball> box c = fromIntegral (ord c + 0x1f1e5) :: Word8
2022-10-06 02:39:46 +0200 <fresheyeball> Data.Text.Internal.Encoding.Utf8.chr2 (box 'A') (box 'F')
2022-10-06 02:39:58 +0200 <fresheyeball> just gives the wrong char
2022-10-06 02:41:29 +0200 <geekosaur> I appear to have a font issue but this seems to work for me: ghc -e "let box ch = Data.Char.chr (Data.Char.ord ch + 0x1f1a5) in putStrLn $ box 'F' : box 'R' : []"
2022-10-06 02:41:37 +0200 <geekosaur> (or 'U'/'S', etc.
2022-10-06 02:41:40 +0200 <geekosaur> )
2022-10-06 02:42:01 +0200doyougnu(~doyougnu@cpe-74-69-132-225.stny.res.rr.com)
2022-10-06 02:43:42 +0200 <geekosaur> actually just looks like terminal rendering
2022-10-06 02:44:16 +0200jargon(~jargon@174-22-201-96.phnx.qwest.net)
2022-10-06 02:45:29 +0200 <jackdk> talismanick: but then use >>= or do or whatever so that your function that generates the list of parents does not have to care about IO or any other monad
2022-10-06 02:45:47 +0200 <talismanick> good point
2022-10-06 02:48:30 +0200 <EvanR> gqplox, what decreases laziness
2022-10-06 02:48:36 +0200 <geekosaur> fresheyeball, you asked it to compress a value which is at least 0x1f1e5 down to a Word8. that doesn't do what you think it does
2022-10-06 02:48:46 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-10-06 02:49:19 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 268 seconds)
2022-10-06 02:50:26 +0200 <geekosaur> these are codepoints, not characters in the range 0..255
2022-10-06 02:50:31 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-06 02:50:33 +0200Lord_of_Life_(~Lord@user/lord-of-life/x-2819915)
2022-10-06 02:50:34 +0200nightbreak[Away]nightbreak
2022-10-06 02:50:36 +0200 <gqplox> EvanR sorry im a noob but yes
2022-10-06 02:50:49 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 250 seconds)
2022-10-06 02:50:58 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 02:50:58 +0200 <EvanR> splitAt is good
2022-10-06 02:51:07 +0200 <gqplox> the haskell-language-server is telling my that, my question is why is decreasing laziness is good?
2022-10-06 02:51:16 +0200 <EvanR> oh
2022-10-06 02:51:40 +0200 <EvanR> if you don't need laziness, then less laziness means less cost, cpu and memory
2022-10-06 02:51:50 +0200Lord_of_Life_Lord_of_Life
2022-10-06 02:51:54 +0200 <EvanR> if you need laziness, then the opposite might be true
2022-10-06 02:52:15 +0200 <sm> I don't think need determines which it is :)
2022-10-06 02:53:23 +0200 <sm> I probably misread, just sounded funny
2022-10-06 02:53:40 +0200 <EvanR> it's supposed to be tautological
2022-10-06 02:54:20 +0200 <EvanR> anyway, laziness has a cost. If you don't get anything out of it, you waste your resources
2022-10-06 02:54:34 +0200 <EvanR> how your editor knows anything about that I have no idea
2022-10-06 02:54:36 +0200 <sm> so... try it both ways and the better-performing one is what you should have wanted all along ?
2022-10-06 02:54:42 +0200 <geekosaur> gqplox, it recommends that transform because the list only has to be traversed once with splitAt. if you absolutely need the laziness increase that comes with doing the same work twice, go for it
2022-10-06 02:55:10 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 02:55:12 +0200 <geekosaur> but laziness is not automatically a win
2022-10-06 02:56:14 +0200causal(~user@50.35.83.177)
2022-10-06 02:56:24 +0200 <gqplox> Ok, right I get it thank you
2022-10-06 02:56:55 +0200 <gqplox> I'm just messing around, trying to learn haskell. thank you very much
2022-10-06 02:57:24 +0200 <gqplox> its quite cool how i got that suggestion though
2022-10-06 02:57:41 +0200 <gqplox> i guess the way haskell is you can infer way more from the code and give better suggetsions
2022-10-06 02:58:51 +0200loras(~loras@c-73-139-125-125.hsd1.fl.comcast.net)
2022-10-06 02:59:11 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-10-06 02:59:40 +0200zmt00(~zmt00@user/zmt00) (Read error: Connection reset by peer)
2022-10-06 03:00:01 +0200 <gqplox> also i just learnt about foldr and i see now some of my previous things i get a suggestion to write it with foldr instead. i take it that its more idomatic / standard to use foldr if you can right?
2022-10-06 03:00:18 +0200ulvarrefr(~user@188.124.56.153) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1))
2022-10-06 03:00:54 +0200 <jackdk> many simple recursions can be rewritten in terms of folds. If you understand what you're doing it's a nice thing to do. But it's also not usually worth needlessly contorting your code to fit it into a fold
2022-10-06 03:01:09 +0200 <jackdk> (aka "it depends", in more than two words :D)
2022-10-06 03:01:26 +0200dcoutts_(~duncan@host86-170-66-8.range86-170.btcentralplus.com)
2022-10-06 03:01:42 +0200zmt00(~zmt00@user/zmt00)
2022-10-06 03:02:07 +0200 <gqplox> got it, thanks jack :)
2022-10-06 03:02:28 +0200 <EvanR> folds are great when that's exactly what you're doing
2022-10-06 03:02:43 +0200 <gqplox> but "under the hood" is it all the same to the compiler right?
2022-10-06 03:03:07 +0200 <gqplox> like with/without foldr will generate the same code or is there a difference?
2022-10-06 03:03:14 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Quit: Lost terminal)
2022-10-06 03:03:51 +0200dcoutts__(~duncan@host86-170-66-8.range86-170.btcentralplus.com) (Ping timeout: 260 seconds)
2022-10-06 03:03:55 +0200ulvarrefr(~user@188.124.56.153)
2022-10-06 03:04:14 +0200ulvarrefr(~user@188.124.56.153) (Remote host closed the connection)
2022-10-06 03:05:21 +0200ulvarrefr(~user@188.124.56.153)
2022-10-06 03:06:39 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 03:08:09 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt juan@acm.org)
2022-10-06 03:11:18 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 03:11:47 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-06 03:11:59 +0200Kaiepi(~Kaiepi@142.68.249.28) (Read error: Connection reset by peer)
2022-10-06 03:12:27 +0200talismanick(~talismani@c-73-41-86-39.hsd1.ca.comcast.net) (Ping timeout: 265 seconds)
2022-10-06 03:14:13 +0200xff0x(~xff0x@ai071162.d.east.v6connect.net) (Ping timeout: 250 seconds)
2022-10-06 03:16:27 +0200 <EvanR> gqplox, until someone can explain all those details, you can learn the necessary flags to produce the intermediate codes and see for yourself
2022-10-06 03:17:06 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-10-06 03:17:33 +0200 <EvanR> e.g. ghc flag -ddump-simpl
2022-10-06 03:22:07 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 265 seconds)
2022-10-06 03:22:57 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 03:24:04 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-06 03:26:32 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 03:30:06 +0200 <sm> woo, big step for a beginner!
2022-10-06 03:30:11 +0200smshould try that
2022-10-06 03:34:35 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df) (Ping timeout: 250 seconds)
2022-10-06 03:38:41 +0200doyougnu(~doyougnu@cpe-74-69-132-225.stny.res.rr.com) (Ping timeout: 268 seconds)
2022-10-06 03:40:16 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 03:41:56 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 03:44:01 +0200 <gqplox> cool i shall defo be checking that out
2022-10-06 03:44:02 +0200 <gqplox> thx
2022-10-06 03:53:09 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 03:57:10 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 03:57:43 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-10-06 04:01:00 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 04:05:24 +0200king_gs(~Thunderbi@2806:103e:29:5a6:d0be:f9c4:80c9:e8c5)
2022-10-06 04:06:59 +0200td_(~td@94.134.91.45) (Ping timeout: 252 seconds)
2022-10-06 04:09:00 +0200td_(~td@muedsl-82-207-238-011.citykom.de)
2022-10-06 04:12:54 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 04:14:59 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 04:17:02 +0200nate1(~nate@98.45.169.16)
2022-10-06 04:17:42 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 265 seconds)
2022-10-06 04:17:45 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 258 seconds)
2022-10-06 04:20:48 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-10-06 04:22:01 +0200nate1(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-06 04:22:15 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-10-06 04:22:47 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-10-06 04:24:10 +0200nightbreaknightbreak[Away]
2022-10-06 04:26:03 +0200razetime(~quassel@117.254.35.21)
2022-10-06 04:28:06 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2022-10-06 04:29:06 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 04:29:46 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 04:33:26 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 04:36:58 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 246 seconds)
2022-10-06 04:39:28 +0200talismanick(~talismani@2601:200:c100:c9e0::24ac)
2022-10-06 04:44:03 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 04:44:25 +0200nate1(~nate@98.45.169.16)
2022-10-06 04:44:52 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 04:46:43 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 04:49:09 +0200LukeHoersten(~LukeHoers@user/lukehoersten)
2022-10-06 04:50:10 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 04:50:58 +0200king_gs(~Thunderbi@2806:103e:29:5a6:d0be:f9c4:80c9:e8c5) (Ping timeout: 246 seconds)
2022-10-06 04:52:38 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
2022-10-06 04:53:58 +0200ec(~ec@gateway/tor-sasl/ec)
2022-10-06 04:56:26 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 260 seconds)
2022-10-06 05:00:59 +0200jero98772(~jero98772@2800:484:1d80:d8ce:efcc:cbb3:7f2a:6dff) (Remote host closed the connection)
2022-10-06 05:01:12 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 05:02:52 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 05:03:22 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 258 seconds)
2022-10-06 05:03:39 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 05:07:09 +0200LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-10-06 05:08:27 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 265 seconds)
2022-10-06 05:09:02 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-10-06 05:09:41 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 05:17:37 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 05:19:17 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 05:24:06 +0200ddellacosta(~ddellacos@143.244.47.86) (Ping timeout: 268 seconds)
2022-10-06 05:29:14 +0200nate1(~nate@98.45.169.16) (Ping timeout: 265 seconds)
2022-10-06 05:33:22 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 05:35:08 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 268 seconds)
2022-10-06 05:37:11 +0200razetime(~quassel@117.254.35.21) (Ping timeout: 252 seconds)
2022-10-06 05:38:16 +0200loras(~loras@c-73-139-125-125.hsd1.fl.comcast.net) (Quit: Quit)
2022-10-06 05:46:06 +0200k8yun(~k8yun@user/k8yun)
2022-10-06 05:48:39 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 05:53:53 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-10-06 05:54:36 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-10-06 05:54:40 +0200nate1(~nate@98.45.169.16)
2022-10-06 05:57:42 +0200nicmollel[m](~nicmollel@2001:470:69fc:105::1:feeb)
2022-10-06 06:01:08 +0200nate1(~nate@98.45.169.16) (Ping timeout: 265 seconds)
2022-10-06 06:01:08 +0200Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) (Read error: Connection reset by peer)
2022-10-06 06:01:16 +0200Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi)
2022-10-06 06:05:37 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 06:07:17 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 06:13:46 +0200razetime(~quassel@117.254.35.21)
2022-10-06 06:15:49 +0200 <dminuoso> Emacs users, is there mode that works with mmm-mode to work with alex/happy files?
2022-10-06 06:21:16 +0200segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Remote host closed the connection)
2022-10-06 06:21:25 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 06:25:06 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 06:26:47 +0200Vajb(~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer)
2022-10-06 06:27:20 +0200Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57)
2022-10-06 06:28:14 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 268 seconds)
2022-10-06 06:29:05 +0200nate1(~nate@98.45.169.16)
2022-10-06 06:29:50 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2022-10-06 06:33:17 +0200mbuf(~Shakthi@49.204.117.154)
2022-10-06 06:34:00 +0200nate1(~nate@98.45.169.16) (Ping timeout: 265 seconds)
2022-10-06 06:46:55 +0200king_gs(~Thunderbi@187.201.126.32)
2022-10-06 06:48:59 +0200razetime(~quassel@117.254.35.21) (Ping timeout: 265 seconds)
2022-10-06 06:53:45 +0200nate1(~nate@98.45.169.16)
2022-10-06 06:54:50 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 06:55:36 +0200mud(~mud@user/kadoban) (Ping timeout: 264 seconds)
2022-10-06 06:56:50 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-10-06 06:58:13 +0200califax(~califax@user/califx)
2022-10-06 06:58:56 +0200nate1(~nate@98.45.169.16) (Ping timeout: 260 seconds)
2022-10-06 07:00:35 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 265 seconds)
2022-10-06 07:02:15 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net)
2022-10-06 07:04:02 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-10-06 07:04:25 +0200califax(~califax@user/califx)
2022-10-06 07:04:47 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 07:06:18 +0200king_gs(~Thunderbi@187.201.126.32) (Read error: Connection reset by peer)
2022-10-06 07:07:06 +0200king_gs(~Thunderbi@2806:103e:29:5a6:d0be:f9c4:80c9:e8c5)
2022-10-06 07:08:46 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 07:10:37 +0200 <HP-UX> Hello is it possible to ask about termonad? https://bpa.st/J2TQ building via stack I get this error
2022-10-06 07:12:24 +0200 <sm> it requires some C libs to be installed, which stack can't do for you. Maybe their docs tell how to get them ?
2022-10-06 07:13:38 +0200 <jackdk> > The pkg-config package 'gobject-introspection-1.0' version ==1.32 || >1.32 is required but it could not be found.
2022-10-06 07:13:41 +0200 <lambdabot> <hint>:1:70: error: parse error on input ‘>’
2022-10-06 07:14:02 +0200 <jackdk> So you'll need to go to your distro's package manager and install that
2022-10-06 07:14:28 +0200bgs(~bgs@212-85-160-171.dynamic.telemach.net)
2022-10-06 07:17:07 +0200 <HP-UX> search gobject-introspection https://bpa.st/QKUQ some libghc-haskell-gi-dev would this be it?
2022-10-06 07:18:49 +0200 <sm> HP-UX: as I hinted, there are good install docs: https://github.com/cdepillabout/termonad#ubuntu--debian
2022-10-06 07:19:07 +0200 <HP-UX> sm: they don't cover the 'stack' only install method and I am using stack
2022-10-06 07:19:23 +0200 <HP-UX> I git clone the repository and in the repository directory I use stack install
2022-10-06 07:19:26 +0200mud(~mud@user/kadoban)
2022-10-06 07:19:33 +0200 <sm> https://github.com/cdepillabout/termonad#compiling-from-source-on-ubuntu--debian
2022-10-06 07:19:49 +0200 <sm> you must do this before using stack
2022-10-06 07:19:52 +0200 <HP-UX> I see
2022-10-06 07:20:12 +0200 <HP-UX> I guess I didn't see this part. What I saw was they said a PR was needed from someone who figured out how to use stack to build it.
2022-10-06 07:20:17 +0200 <HP-UX> I'll try
2022-10-06 07:20:55 +0200 <sm> it's a common mistake. stack can only install haskell dependencies, not C ones
2022-10-06 07:21:14 +0200 <HP-UX> thanks you
2022-10-06 07:21:19 +0200 <HP-UX> -s
2022-10-06 07:21:19 +0200 <sm> np
2022-10-06 07:21:58 +0200 <jackdk> The provisioning of system libraries is not the responsibility of either stack or cabal, so you can use that information to set up for either.
2022-10-06 07:24:27 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de)
2022-10-06 07:26:29 +0200 <chreekat> hm, I also thought nub only removed duplicates if they were right next to each other
2022-10-06 07:26:59 +0200 <c_wraith> that's more like what group does
2022-10-06 07:27:10 +0200 <c_wraith> ... ok, not really
2022-10-06 07:27:36 +0200gmg(~user@user/gehmehgeh)
2022-10-06 07:27:38 +0200 <c_wraith> > concat . map head . group $ [1,0,2,2,4,7,1]
2022-10-06 07:27:40 +0200 <lambdabot> error:
2022-10-06 07:27:40 +0200 <lambdabot> • No instance for (Num [()]) arising from a use of ‘e_11022471’
2022-10-06 07:27:40 +0200 <lambdabot> • In the expression: e_11022471
2022-10-06 07:29:06 +0200 <chreekat> I'm not saying I'm right, in fact I'm saying I'm probably wrong and I'm curious why. :D Like did it change at some point, or did I just learn it wrong a long time ago and never got corrected
2022-10-06 07:29:09 +0200 <c_wraith> oh, right
2022-10-06 07:29:15 +0200 <c_wraith> > map head . group $ [1,0,2,2,4,7,1]
2022-10-06 07:29:17 +0200 <lambdabot> [1,0,2,4,7,1]
2022-10-06 07:29:25 +0200 <c_wraith> nah, nub's behavior has never changed
2022-10-06 07:29:56 +0200 <c_wraith> So you probably mixed it up with something like group
2022-10-06 07:33:57 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2022-10-06 07:36:01 +0200 <jonathanx_> I'm having some issues with HLS (hie-bios). I like to use both HLS (vscode) and run stack test in a terminal. When running stack test in the terminal, I use the --fast flag (-O0). Now the issue is that hie-bios keeps recompiling, stating "[Optimisation flags changed]". From this I guess that hie-bios have other flags than -O0. To resolve this, I've tried to remove all ghc-options from package.yaml, but it didn't help.
2022-10-06 07:36:04 +0200 <jonathanx_> Any ideas?
2022-10-06 07:38:34 +0200zns(~zns@user/zns)
2022-10-06 07:38:35 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2022-10-06 07:38:47 +0200 <jonathanx_> Haha, I solved it by adding "ghc-options: - -O0" to package.yaml
2022-10-06 07:38:59 +0200 <jonathanx_> Seems like it didn't default to O0 as I thought
2022-10-06 07:40:44 +0200mihaiadrian(~mihaiadri@82.76.223.244)
2022-10-06 07:42:59 +0200 <sm> nice
2022-10-06 07:42:59 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-10-06 07:43:51 +0200ec(~ec@gateway/tor-sasl/ec)
2022-10-06 07:44:08 +0200 <c_wraith> oh yeah. I think the default is -O1
2022-10-06 07:44:16 +0200 <sm> chreekat: you and I seem to have fallen into a parallel universe
2022-10-06 07:45:19 +0200 <chreekat> sm: haha exactly
2022-10-06 07:46:54 +0200michalz(~michalz@185.246.207.205)
2022-10-06 07:47:32 +0200 <jonathanx_> my local builds are blazingly fast now, such enjoyment. And I still add all of the optimizations on the prod builds, so it doesn't affect reality. Such happy.
2022-10-06 07:47:58 +0200 <sm> it's an Anything Everywhere All At Once scene
2022-10-06 07:49:33 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2022-10-06 07:49:47 +0200nate1(~nate@98.45.169.16)
2022-10-06 07:51:53 +0200 <Clinton[m]> Is there any function in base that I'm missing that has the following signature (or something similar):... (full message at <https://libera.ems.host/_matrix/media/r0/download/libera.chat/df6f815a8140ae6b09980c48f8fddcfaa135…>)
2022-10-06 07:52:13 +0200gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2022-10-06 07:53:30 +0200gmg(~user@user/gehmehgeh)
2022-10-06 07:53:34 +0200 <jackdk> Clinton[m]: pretty common in alternative preludes but I'm not aware of one in base. I wouldn't bother pulling in a prelude for it and instead write something like `maybe (Left a) Right`. Package hoist-error also has some tools for this sort of thing, but they're nicer with an ExceptT IIRC
2022-10-06 07:54:35 +0200nate1(~nate@98.45.169.16) (Ping timeout: 250 seconds)
2022-10-06 07:57:13 +0200k8yun(~k8yun@user/k8yun) (Quit: Leaving)
2022-10-06 07:59:35 +0200jargon(~jargon@174-22-201-96.phnx.qwest.net) (Remote host closed the connection)
2022-10-06 08:00:28 +0200mihaiadrian(~mihaiadri@82.76.223.244) ()
2022-10-06 08:04:01 +0200acidjnk_new(~acidjnk@p200300d6e7137a46d5006bee4692d281.dip0.t-ipconnect.de)
2022-10-06 08:08:32 +0200jargon(~jargon@174-22-201-96.phnx.qwest.net)
2022-10-06 08:08:38 +0200 <chreekat> I usually end up using the errors package anyway. I think it calls that "note"
2022-10-06 08:08:55 +0200 <chreekat> But yeah I'd first just copy/paste the implementation
2022-10-06 08:15:45 +0200kenran(~user@user/kenran)
2022-10-06 08:19:49 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:4dd:6d68:f3a8:33c3) (Quit: caryhartline)
2022-10-06 08:20:35 +0200 <jackdk> yeah I've seen it called note in other places, but it always catches me out for some reasons
2022-10-06 08:37:09 +0200king_gs(~Thunderbi@2806:103e:29:5a6:d0be:f9c4:80c9:e8c5) (Ping timeout: 268 seconds)
2022-10-06 08:38:32 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se)
2022-10-06 08:38:42 +0200jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 265 seconds)
2022-10-06 08:43:27 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 252 seconds)
2022-10-06 08:43:31 +0200lottaquestions_(~nick@104.221.24.83)
2022-10-06 08:44:01 +0200zeenk(~zeenk@2a02:2f04:a20a:3e00:5712:52b0:ca1d:bc63)
2022-10-06 08:45:49 +0200lottaquestions(~nick@2607:fa49:503e:7100:dcba:436c:887:a9eb) (Ping timeout: 246 seconds)
2022-10-06 08:53:15 +0200nate1(~nate@98.45.169.16)
2022-10-06 08:54:10 +0200bitmapper(uid464869@id-464869.lymington.irccloud.com)
2022-10-06 08:54:26 +0200king_gs(~Thunderbi@2806:103e:29:5a6:d0be:f9c4:80c9:e8c5)
2022-10-06 08:55:10 +0200razetime(~quassel@117.254.35.21)
2022-10-06 08:55:23 +0200jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se)
2022-10-06 08:56:06 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 08:56:14 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:58e7:cdd6:72c0:6b0d)
2022-10-06 08:56:25 +0200zns(~zns@user/zns)
2022-10-06 08:58:07 +0200nate1(~nate@98.45.169.16) (Ping timeout: 252 seconds)
2022-10-06 09:01:15 +0200MajorBiscuit(~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net)
2022-10-06 09:06:18 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-10-06 09:07:03 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 09:08:21 +0200off^(~off@c-76-17-6-165.hsd1.ga.comcast.net) (Remote host closed the connection)
2022-10-06 09:10:16 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 09:10:34 +0200king_gs(~Thunderbi@2806:103e:29:5a6:d0be:f9c4:80c9:e8c5) (Ping timeout: 268 seconds)
2022-10-06 09:10:53 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de)
2022-10-06 09:12:25 +0200coot(~coot@213.134.171.3)
2022-10-06 09:12:59 +0200dminuosoprefers just writing such functions on the spot rather than depending on a package for such utilities.
2022-10-06 09:13:50 +0200 <dminuoso> Especially since I tend to need different variants of it anyway
2022-10-06 09:14:32 +0200 <dminuoso> Sometimes I have `note :: String -> Maybe a -> IO a`, or maybe `liftException :: Exception e => Either e a -> IO a`, or maybe there is some MonadIO/MonadUnliftIO polymorphism going on..
2022-10-06 09:14:42 +0200rembo10(~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in)
2022-10-06 09:16:12 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 09:16:18 +0200 <dminuoso> Every package you depend upon will increase supply chain problems (transitive dependency bounds constraining you, poor PvP management in a transitive dependency, increased complexity for audits of transitive dependencies against supply chain hacks, potentially blow up object size)
2022-10-06 09:16:51 +0200rembo10(~rembo10@main.remulis.com)
2022-10-06 09:17:23 +0200chomwitt(~chomwitt@2a02:587:dc14:f500:2b1d:f941:b29c:4324)
2022-10-06 09:20:54 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 268 seconds)
2022-10-06 09:22:00 +0200shriekingnoise(~shrieking@186.137.167.202) (Quit: Quit)
2022-10-06 09:28:44 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de) (Quit: Leaving.)
2022-10-06 09:29:41 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 09:30:31 +0200 <dminuoso> Question: cast :: forall a b. (Typeable a, Typeable b) => a -> Maybe b
2022-10-06 09:30:37 +0200 <dminuoso> Why does `cast` admit two different types here?
2022-10-06 09:30:50 +0200 <dminuoso> It seems its not going to `coerce` types with same representation anyway
2022-10-06 09:32:50 +0200m5zs7k(aquares@web10.mydevil.net) (Ping timeout: 265 seconds)
2022-10-06 09:32:56 +0200MajorBiscuit(~MajorBisc@2a02-a461-129d-1-193d-75d8-745d-e91e.fixed6.kpn.net) (Ping timeout: 260 seconds)
2022-10-06 09:33:51 +0200 <jackdk> wouldn't `cast :: a -> Maybe a` be useless, even if you had contraints on `a`?
2022-10-06 09:34:16 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 09:34:30 +0200MajorBiscuit(~MajorBisc@c-001-024-018.client.tudelft.eduvpn.nl)
2022-10-06 09:34:31 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 09:35:09 +0200 <dminuoso> Ah I guess it is useful if `a` is unknown (say some outer quantification) and `b` is monomorphic.
2022-10-06 09:35:21 +0200 <dminuoso> As a way to scrutinize some arbitrary Typeable
2022-10-06 09:35:52 +0200 <dminuoso> Or well, if `a` is a skolem
2022-10-06 09:39:01 +0200kuribas(~user@silversquare.silversquare.eu)
2022-10-06 09:40:32 +0200m5zs7k(aquares@web10.mydevil.net)
2022-10-06 09:42:58 +0200ardell(~ardell@user/ardell)
2022-10-06 09:46:33 +0200cfricke(~cfricke@user/cfricke)
2022-10-06 09:50:35 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de)
2022-10-06 09:54:30 +0200ardell(~ardell@user/ardell) (Quit: Leaving)
2022-10-06 09:54:38 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1)
2022-10-06 09:54:39 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-10-06 09:54:41 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1) (Remote host closed the connection)
2022-10-06 09:54:55 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1)
2022-10-06 10:00:36 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-10-06 10:02:23 +0200ec(~ec@gateway/tor-sasl/ec)
2022-10-06 10:04:12 +0200nschoe(~quassel@141.101.51.197)
2022-10-06 10:07:56 +0200ec(~ec@gateway/tor-sasl/ec) (Remote host closed the connection)
2022-10-06 10:08:19 +0200ec(~ec@gateway/tor-sasl/ec)
2022-10-06 10:08:41 +0200Guest|50(~Guest|50@80.96.21.161)
2022-10-06 10:08:52 +0200Guest|50(~Guest|50@80.96.21.161) (Client Quit)
2022-10-06 10:15:28 +0200 <phma> I tried to write to the maintainer of a package, and it bounced. How can I get the package marked "maintainer unreachable" or something?
2022-10-06 10:15:48 +0200 <dminuoso> https://wiki.haskell.org/Taking_over_a_package
2022-10-06 10:15:59 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:f166:d554:7957:eb7a) (Remote host closed the connection)
2022-10-06 10:17:52 +0200 <phma> thanks - I'm not trying to take it over, I'll email hackage-admin and see what happens
2022-10-06 10:18:10 +0200 <dminuoso> Well, we do not have a process of marking "unmaintained packages" as far as I know.
2022-10-06 10:21:23 +0200 <sm> I thought we did have a group / github org for that
2022-10-06 10:21:32 +0200 <sm> #hackage might know
2022-10-06 10:22:25 +0200__monty__(~toonn@user/toonn)
2022-10-06 10:24:52 +0200 <dminuoso> But it would be nice if hackage had a marker for that.
2022-10-06 10:25:05 +0200 <dminuoso> Would make it easier to avoid depending on a package when, ahead of time, you know it is not maintained.
2022-10-06 10:25:18 +0200 <dminuoso> Or maybe incentize people to take packages over, if there's more visibility into whats maintained and what not
2022-10-06 10:26:00 +0200 <dminuoso> Personally I tend to check last uploaded date to infer rough maintenance status
2022-10-06 10:26:25 +0200 <dminuoso> But its only a rough patch, as sometimes trustees will just bump boundaries, but not work on issues/pull requests
2022-10-06 10:26:31 +0200 <phma> Maybe I could take it over, if only to get the Weierstrass curves working right.
2022-10-06 10:28:50 +0200 <phma> It's the elliptic-curve library; it looks like a pure Haskell implementation of elliptic curves, which is what I need to test my code for timing attacks.
2022-10-06 10:29:05 +0200 <jackdk> code-level maintenance is not really the trustees' role though
2022-10-06 10:29:50 +0200 <dminuoso> Sure, Im just saying that trustees work makes inferring whether or not a package is maintained from last update date unreliable
2022-10-06 10:30:04 +0200 <phma> but if I took it over, which I'd need the trustees to do, I could modify the code
2022-10-06 10:30:09 +0200 <dminuoso> It's not a complaint. :)
2022-10-06 10:30:18 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-10-06 10:30:22 +0200 <jackdk> Fair. Hackage does at least list the last upload date separately from the last update date
2022-10-06 10:30:46 +0200 <dminuoso> Err, is there a typo in that sentence?
2022-10-06 10:38:00 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df)
2022-10-06 10:38:01 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds)
2022-10-06 10:43:39 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 10:45:21 +0200Erez(~Erez@h-155-4-187-85.A412.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 10:47:59 +0200ec(~ec@gateway/tor-sasl/ec) (Ping timeout: 258 seconds)
2022-10-06 10:48:20 +0200chele(~chele@user/chele)
2022-10-06 10:48:59 +0200EvanR(~EvanR@user/evanr) (Remote host closed the connection)
2022-10-06 10:49:12 +0200EvanR(~EvanR@user/evanr)
2022-10-06 10:51:23 +0200razetime(~quassel@117.254.35.21) (Ping timeout: 250 seconds)
2022-10-06 10:51:50 +0200razetime(~quassel@117.254.34.19)
2022-10-06 10:52:51 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 260 seconds)
2022-10-06 10:52:56 +0200vglfr(~vglfr@145.224.100.190) (Read error: Connection reset by peer)
2022-10-06 10:53:54 +0200ec(~ec@gateway/tor-sasl/ec)
2022-10-06 10:54:04 +0200vglfr(~vglfr@145.224.100.190)
2022-10-06 10:58:03 +0200ubert(~Thunderbi@178.165.204.109.wireless.dyn.drei.com)
2022-10-06 10:59:21 +0200razetime(~quassel@117.254.34.19) (Ping timeout: 265 seconds)
2022-10-06 10:59:31 +0200razetime(~quassel@117.254.35.104)
2022-10-06 11:01:32 +0200 <jackdk> Yeah I should've said "revision" instead of "update"
2022-10-06 11:04:16 +0200kdaishi(~Thunderbi@dyn3142-171.wlan.ic.ac.uk)
2022-10-06 11:05:15 +0200nate1(~nate@98.45.169.16)
2022-10-06 11:10:28 +0200nate1(~nate@98.45.169.16) (Ping timeout: 265 seconds)
2022-10-06 11:16:28 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:f166:d554:7957:eb7a)
2022-10-06 11:18:08 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 11:19:48 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 11:20:52 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:f166:d554:7957:eb7a) (Ping timeout: 246 seconds)
2022-10-06 11:24:43 +0200ft(~ft@p3e9bc57b.dip0.t-ipconnect.de) (Quit: leaving)
2022-10-06 11:31:08 +0200razetime(~quassel@117.254.35.104) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-10-06 11:34:30 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1) (Remote host closed the connection)
2022-10-06 11:39:13 +0200kdaishi(~Thunderbi@dyn3142-171.wlan.ic.ac.uk) (Quit: kdaishi)
2022-10-06 11:39:27 +0200kdaishi(~Thunderbi@dyn3142-171.wlan.ic.ac.uk)
2022-10-06 11:44:52 +0200m1dnight(~christoph@78-22-0-121.access.telenet.be) (Ping timeout: 244 seconds)
2022-10-06 11:45:29 +0200m1dnight(~christoph@78-22-0-121.access.telenet.be)
2022-10-06 11:50:27 +0200kdaishi(~Thunderbi@dyn3142-171.wlan.ic.ac.uk) (Quit: kdaishi)
2022-10-06 11:50:46 +0200kdaishi(~Thunderbi@dyn3142-171.wlan.ic.ac.uk)
2022-10-06 11:55:31 +0200talismanick(~talismani@2601:200:c100:c9e0::24ac) (Ping timeout: 250 seconds)
2022-10-06 11:55:46 +0200jargon(~jargon@174-22-201-96.phnx.qwest.net) (Remote host closed the connection)
2022-10-06 11:57:28 +0200kdaishi(~Thunderbi@dyn3142-171.wlan.ic.ac.uk) (Ping timeout: 268 seconds)
2022-10-06 12:01:38 +0200kdaishi(~Thunderbi@dyn3135-144.wlan.ic.ac.uk)
2022-10-06 12:04:16 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 268 seconds)
2022-10-06 12:07:06 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-06 12:08:03 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 12:16:22 +0200Midjak(~Midjak@82.66.147.146)
2022-10-06 12:27:33 +0200 <cheater> > 33 * 8
2022-10-06 12:27:35 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de) (Quit: Leaving.)
2022-10-06 12:27:35 +0200 <lambdabot> 264
2022-10-06 12:29:29 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-10-06 12:36:41 +0200coot(~coot@213.134.171.3) (Quit: coot)
2022-10-06 12:39:41 +0200burnsidesLlama(~burnsides@client-8-68.eduroam.oxuni.org.uk)
2022-10-06 12:52:24 +0200coot(~coot@213.134.171.3)
2022-10-06 12:52:30 +0200zaquest(~notzaques@5.130.79.72)
2022-10-06 12:56:38 +0200enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7)
2022-10-06 13:04:07 +0200burnsidesLlama(~burnsides@client-8-68.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 13:05:12 +0200frost(~frost@user/frost)
2022-10-06 13:06:02 +0200xff0x(~xff0x@ai071162.d.east.v6connect.net)
2022-10-06 13:06:03 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 13:06:48 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 13:07:48 +0200Guest|50(~Guest|50@eduroam-wireless-pat9.nomadic.bris.ac.uk)
2022-10-06 13:08:31 +0200Guest|50(~Guest|50@eduroam-wireless-pat9.nomadic.bris.ac.uk) (Client Quit)
2022-10-06 13:18:18 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:f166:d554:7957:eb7a)
2022-10-06 13:20:53 +0200shriekingnoise(~shrieking@186.137.167.202)
2022-10-06 13:21:27 +0200codaraxis___(~codaraxis@user/codaraxis) (Ping timeout: 265 seconds)
2022-10-06 13:22:40 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:f166:d554:7957:eb7a) (Ping timeout: 246 seconds)
2022-10-06 13:24:02 +0200nate1(~nate@98.45.169.16)
2022-10-06 13:24:06 +0200hyiltiz(~quassel@31.220.5.250) (Quit: No Ping reply in 180 seconds.)
2022-10-06 13:24:09 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch)
2022-10-06 13:25:43 +0200hyiltiz(~quassel@31.220.5.250)
2022-10-06 13:26:43 +0200Demi(~Demi@212.227.212.113)
2022-10-06 13:27:34 +0200gurkenglas(~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2022-10-06 13:28:42 +0200CiaoSen(~Jura@p200300c95700eb002a3a4dfffe84dbd5.dip0.t-ipconnect.de)
2022-10-06 13:29:12 +0200nate1(~nate@98.45.169.16) (Ping timeout: 264 seconds)
2022-10-06 13:39:26 +0200lyle(~lyle@104.246.145.85)
2022-10-06 13:43:36 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 264 seconds)
2022-10-06 13:43:44 +0200ProofTechnique(sid79547@id-79547.ilkley.irccloud.com) (Read error: Connection reset by peer)
2022-10-06 13:43:45 +0200jmct(sid160793@id-160793.tinside.irccloud.com) (Read error: Connection reset by peer)
2022-10-06 13:43:53 +0200ProofTechnique(sid79547@id-79547.ilkley.irccloud.com)
2022-10-06 13:43:54 +0200jmct(sid160793@id-160793.tinside.irccloud.com)
2022-10-06 13:44:06 +0200degraafk(sid71464@id-71464.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-10-06 13:44:15 +0200degraafk(sid71464@id-71464.lymington.irccloud.com)
2022-10-06 13:44:20 +0200saolsen(sid26430@id-26430.lymington.irccloud.com) (Read error: Connection reset by peer)
2022-10-06 13:44:21 +0200tritlo(sid58727@user/tritlo) (Ping timeout: 260 seconds)
2022-10-06 13:44:27 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-06 13:44:29 +0200saolsen(sid26430@id-26430.lymington.irccloud.com)
2022-10-06 13:44:31 +0200jakesyl____(sid56879@id-56879.hampstead.irccloud.com) (Read error: Connection reset by peer)
2022-10-06 13:44:32 +0200megeve(sid523379@id-523379.hampstead.irccloud.com) (Write error: Connection reset by peer)
2022-10-06 13:44:32 +0200spivak(uid398348@user/spivak) (Read error: Connection reset by peer)
2022-10-06 13:44:32 +0200jackdk(sid373013@cssa/jackdk) (Read error: Connection reset by peer)
2022-10-06 13:44:38 +0200tritlo(sid58727@user/tritlo)
2022-10-06 13:44:43 +0200megeve(sid523379@id-523379.hampstead.irccloud.com)
2022-10-06 13:44:44 +0200jackdk(sid373013@cssa/jackdk)
2022-10-06 13:45:01 +0200jakesyl____(sid56879@id-56879.hampstead.irccloud.com)
2022-10-06 13:45:02 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-10-06 13:45:03 +0200spivak(uid398348@user/spivak)
2022-10-06 13:45:04 +0200lisq(~quassel@lis.moe) (Remote host closed the connection)
2022-10-06 13:45:13 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 252 seconds)
2022-10-06 13:45:49 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-06 13:46:14 +0200lisq(~quassel@lis.moe)
2022-10-06 13:47:23 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de)
2022-10-06 13:49:46 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net) (Ping timeout: 268 seconds)
2022-10-06 13:51:22 +0200kdaishi(~Thunderbi@dyn3135-144.wlan.ic.ac.uk) (Quit: kdaishi)
2022-10-06 13:51:40 +0200kdaishi(~Thunderbi@dyn3135-144.wlan.ic.ac.uk)
2022-10-06 13:55:03 +0200nate1(~nate@98.45.169.16)
2022-10-06 13:56:29 +0200kdaishi(~Thunderbi@dyn3135-144.wlan.ic.ac.uk) (Ping timeout: 268 seconds)
2022-10-06 13:59:46 +0200nate1(~nate@98.45.169.16) (Ping timeout: 246 seconds)
2022-10-06 14:04:45 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 14:10:00 +0200jespada_jespada
2022-10-06 14:10:03 +0200koz(~koz@121.99.240.58) (Ping timeout: 268 seconds)
2022-10-06 14:10:19 +0200koz(~koz@121.99.240.58)
2022-10-06 14:10:38 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-06 14:12:20 +0200codaraxis(~codaraxis@user/codaraxis)
2022-10-06 14:12:57 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 14:13:55 +0200frost(~frost@user/frost) (Quit: Client closed)
2022-10-06 14:16:00 +0200kdaishi(~Thunderbi@2a0c:5bc0:40:2e2f:b6bb:664c:380b:dc65)
2022-10-06 14:16:45 +0200koz(~koz@121.99.240.58) (Ping timeout: 252 seconds)
2022-10-06 14:17:46 +0200koz(~koz@121.99.240.58)
2022-10-06 14:18:13 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-10-06 14:19:55 +0200ccapndave(~ccapndave@xcpe-62-167-164-44.cgn.res.adslplus.ch) (Quit: Textual IRC Client: www.textualapp.com)
2022-10-06 14:21:19 +0200codaraxis(~codaraxis@user/codaraxis) (Read error: Connection reset by peer)
2022-10-06 14:21:43 +0200codaraxis(~codaraxis@user/codaraxis)
2022-10-06 14:27:24 +0200burnsidesLlama(~burnsides@client-8-88.eduroam.oxuni.org.uk)
2022-10-06 14:38:15 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 14:41:26 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 258 seconds)
2022-10-06 14:42:06 +0200Vajb(~Vajb@2001:999:504:1841:9e47:1ec7:a52e:1d57) (Ping timeout: 260 seconds)
2022-10-06 14:42:28 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 14:42:58 +0200gmg(~user@user/gehmehgeh) (Ping timeout: 258 seconds)
2022-10-06 14:43:25 +0200heinz9(~trace@user/trace)
2022-10-06 14:43:33 +0200 <heinz9> what does λn.λf.λx. f (n f x) mean
2022-10-06 14:44:26 +0200gmg(~user@user/gehmehgeh)
2022-10-06 14:44:38 +0200 <dminuoso> heinz9: If you replace λ with \ and . with -> then you have a haskell-equivalent expression
2022-10-06 14:45:12 +0200 <dminuoso> Note that \ is in fact an intentional ASCII approximation of λ. :)
2022-10-06 14:45:25 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 268 seconds)
2022-10-06 14:47:37 +0200 <int-e> Now if n is a Church numeral...
2022-10-06 14:48:28 +0200 <dminuoso> Note though the haskell equivalent expression might not type check.
2022-10-06 14:49:02 +0200frost(~frost@user/frost)
2022-10-06 14:49:07 +0200L29Ah(~L29Ah@wikipedia/L29Ah) (Ping timeout: 268 seconds)
2022-10-06 14:49:15 +0200 <int-e> :t \n f x -> f (n f x)
2022-10-06 14:49:16 +0200 <lambdabot> ((t1 -> t2) -> t3 -> t1) -> (t1 -> t2) -> t3 -> t2
2022-10-06 14:50:15 +0200 <heinz9> dminuoso, :) what does it though mean in haskell, I am using haskell mostly not
2022-10-06 14:50:56 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Quit: = "")
2022-10-06 14:51:43 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net)
2022-10-06 14:51:57 +0200 <int-e> Not much; it's really a thing you're more likely to see in the untyped lambda calculus.
2022-10-06 14:52:14 +0200vglfr(~vglfr@145.224.100.190) (Remote host closed the connection)
2022-10-06 14:53:09 +0200vglfr(~vglfr@145.224.100.190)
2022-10-06 14:53:29 +0200teo(~teo@user/teo)
2022-10-06 14:53:49 +0200 <dminuoso> heinz9: I could give you a teaser, if you like.
2022-10-06 14:54:18 +0200 <heinz9> thx
2022-10-06 14:54:51 +0200 <dminuoso> In very short terms, in lambda calculus we can encode both data and computation with just using lambda expressions, not too different from simple haskell functions.
2022-10-06 14:54:51 +0200 <heinz9> f is function of what is in brackets
2022-10-06 14:54:59 +0200 <dminuoso> That is, even numbers or lists would get encoded in functions.
2022-10-06 14:55:28 +0200 <heinz9> I would understand f x, that it is a function with parameter x
2022-10-06 14:55:31 +0200 <heinz9> but what is n f x
2022-10-06 14:55:38 +0200 <dminuoso> it is function application
2022-10-06 14:55:59 +0200 <heinz9> is n also a function with parameters f x ?
2022-10-06 14:56:03 +0200kdaishi(~Thunderbi@2a0c:5bc0:40:2e2f:b6bb:664c:380b:dc65) (Ping timeout: 248 seconds)
2022-10-06 14:56:11 +0200 <dminuoso> With redundant parens this would be written as:
2022-10-06 14:56:17 +0200 <dminuoso> λn.λf.λx. f (n (f x))
2022-10-06 14:56:31 +0200 <heinz9> ah great
2022-10-06 14:56:31 +0200 <dminuoso> Just like how haskell function application works
2022-10-06 14:56:33 +0200 <heinz9> then yes?
2022-10-06 14:56:42 +0200 <dminuoso> oh gosh sorry
2022-10-06 14:56:44 +0200 <int-e> no, it's f ((n f) x)
2022-10-06 14:56:45 +0200 <dminuoso> I messed up
2022-10-06 14:56:47 +0200 <dminuoso> Thanks int-e.
2022-10-06 14:56:54 +0200 <heinz9> what is n f
2022-10-06 14:56:54 +0200 <geekosaur> I was wondering there
2022-10-06 14:57:31 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-10-06 14:57:34 +0200kdaishi(~Thunderbi@dyn3130-216.wlan.ic.ac.uk)
2022-10-06 14:57:35 +0200 <geekosaur> n is a function, f is something applied to it. the result is a function which is further applied to x
2022-10-06 14:57:49 +0200 <heinz9> now I understand everything, thx
2022-10-06 14:58:03 +0200 <dminuoso> heinz9: lets start with something simpler: `λx. x x` is a lambda expression that has a binder `x`, and when applied to an argument, every occurence of `x` in its body will get replaced with that argument.
2022-10-06 14:58:05 +0200 <int-e> Which probably isn't helpful. A Church numeral takes two arguments, a function and an intial value, and applies the function to the value a certain number of times.
2022-10-06 14:58:12 +0200 <geekosaur> this is partial application, same as in Haskell
2022-10-06 14:58:17 +0200cfricke(~cfricke@user/cfricke)
2022-10-06 14:58:22 +0200califax(~califax@user/califx)
2022-10-06 14:59:09 +0200notzmv(~zmv@user/notzmv)
2022-10-06 15:00:50 +0200kuribas(~user@silversquare.silversquare.eu) (Ping timeout: 268 seconds)
2022-10-06 15:05:18 +0200burnsidesLlama(~burnsides@client-8-88.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 15:10:00 +0200cfricke(~cfricke@user/cfricke) (Ping timeout: 264 seconds)
2022-10-06 15:12:03 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 15:12:14 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-10-06 15:13:40 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-06 15:21:08 +0200cfricke(~cfricke@user/cfricke)
2022-10-06 15:21:59 +0200 <dminuoso> • Illegal equational constraint Network.RADIUS.Internal.Tree.KeyT t ~ Int
2022-10-06 15:22:00 +0200acidjnk_new(~acidjnk@p200300d6e7137a46d5006bee4692d281.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2022-10-06 15:22:14 +0200 <dminuoso> Huh okay.
2022-10-06 15:22:28 +0200 <dminuoso> It would be nice if GHC told me *what* was illegal about it.
2022-10-06 15:22:56 +0200 <dminuoso> Especially since GHC produced that particular constraint.
2022-10-06 15:23:19 +0200Sgeo(~Sgeo@user/sgeo)
2022-10-06 15:24:22 +0200yvan-sraka(~yvan-srak@37.171.151.7)
2022-10-06 15:25:02 +0200 <dminuoso> Sometimes language extensions are really weird and "unhygenic" this way.
2022-10-06 15:25:13 +0200 <[exa]> what's KeyT?
2022-10-06 15:25:18 +0200 <dminuoso> It's a type family]
2022-10-06 15:25:54 +0200 <[exa]> looks like `t` is too unknown for this to be solved?
2022-10-06 15:26:26 +0200 <[exa]> (also check out what kind comes from the tyfam)
2022-10-06 15:27:40 +0200 <dminuoso> So here's the thing
2022-10-06 15:27:56 +0200 <dminuoso> Im merely using `alterF :: forall t f a. Functor f => IsTree t => ([KeyT t] -> f ()) -> (Maybe a -> f (Maybe a)) -> [KeyT t] -> t a -> f (t a)`
2022-10-06 15:28:14 +0200 <dminuoso> But with no type signature to pin `t`
2022-10-06 15:28:41 +0200 <dminuoso> And that's enough for GHC to simply complain. Its completely bizarre, because if I add a type signature, everything is good and well. GHC still has to check type families
2022-10-06 15:29:20 +0200 <dminuoso> I feel like if I use something that has type families, I shouldnt have to enable an extension for an *inferred* invisible type signature.
2022-10-06 15:29:56 +0200 <heinz9> why does "f (n f x)" mean getting a sucessor
2022-10-06 15:30:07 +0200 <heinz9> I think I know what this syntax means
2022-10-06 15:30:08 +0200 <geekosaur> but ghc does that all the time. it'll also infer type signaturesfor things you need to enable ScopedTypeVariables to write explicitly
2022-10-06 15:30:10 +0200 <dminuoso> heinz9: It doesnt, by itself.
2022-10-06 15:30:19 +0200 <int-e> dminuoso: You may have to enable TypeFamilies or GADTs
2022-10-06 15:30:23 +0200 <heinz9> dminuoso, explain
2022-10-06 15:31:54 +0200 <heinz9> I get it
2022-10-06 15:32:00 +0200 <heinz9> I understand now
2022-10-06 15:32:18 +0200 <dminuoso> heinz9: If my code says `main = print x -- print the number 10`, that does not make every literal occurence of `print x` in every text file mean "print the number 10".
2022-10-06 15:32:21 +0200 <int-e> dminuoso: and apparently that error is gone in 9.4
2022-10-06 15:32:44 +0200 <int-e> dminuoso: but before that the code in question looked like this: http://paste.debian.net/1256171/
2022-10-06 15:34:11 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-06 15:35:46 +0200Kaiepi(~Kaiepi@142.68.249.28) (Ping timeout: 260 seconds)
2022-10-06 15:36:55 +0200 <dminuoso> https://gitlab.haskell.org/ghc/ghc/-/commit/a599abbad939820c666ced00ae9eb33706a4f360\
2022-10-06 15:36:58 +0200 <dminuoso> This it seems
2022-10-06 15:37:36 +0200 <dminuoso> At any rate, if its not necessary starting from 9.4 Im happy
2022-10-06 15:38:22 +0200yvan-sraka(~yvan-srak@37.171.151.7) (Remote host closed the connection)
2022-10-06 15:39:31 +0200 <dminuoso> heinz9: A haskell equivalent is `f (+) 0` does not necessarily sum a list. It really depends on what `f` is. :-)
2022-10-06 15:41:28 +0200 <ski> Church numerals are sortof used by `LogicT'
2022-10-06 15:41:29 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-10-06 15:41:30 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 15:41:46 +0200 <dolio> LogicT uses Church lists.
2022-10-06 15:41:55 +0200 <ski> (successor is success continuation. zero is failure continuation)
2022-10-06 15:42:00 +0200 <ski> yes
2022-10-06 15:42:29 +0200 <ski> addition is concatenation. multiplication is cartesian product
2022-10-06 15:42:50 +0200gqplox(~textual@97e654ef.skybroadband.com) (Client Quit)
2022-10-06 15:42:56 +0200yvan-sraka(~yvan-srak@37.171.151.7)
2022-10-06 15:43:55 +0200califax(~califax@user/califx) (Ping timeout: 258 seconds)
2022-10-06 15:47:48 +0200kdaishi(~Thunderbi@dyn3130-216.wlan.ic.ac.uk) (Ping timeout: 264 seconds)
2022-10-06 15:48:18 +0200kdaishi(~Thunderbi@dyn3130-216.wlan.ic.ac.uk)
2022-10-06 15:48:40 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 15:50:57 +0200kuribas(~user@silversquare.silversquare.eu)
2022-10-06 15:52:23 +0200yvan-sraka(~yvan-srak@37.171.151.7) (Remote host closed the connection)
2022-10-06 15:53:04 +0200califax(~califax@user/califx)
2022-10-06 15:54:52 +0200king_gs(~Thunderbi@187.201.126.32)
2022-10-06 15:54:54 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-10-06 15:54:54 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-10-06 15:54:54 +0200wroathe(~wroathe@user/wroathe)
2022-10-06 15:58:09 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 15:59:47 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net) (Ping timeout: 252 seconds)
2022-10-06 16:02:03 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-10-06 16:03:23 +0200king_gs(~Thunderbi@187.201.126.32) (Ping timeout: 250 seconds)
2022-10-06 16:09:36 +0200gqplox(~textual@147.188.245.219)
2022-10-06 16:09:44 +0200gqplox(~textual@147.188.245.219) (Client Quit)
2022-10-06 16:13:03 +0200nate1(~nate@98.45.169.16)
2022-10-06 16:17:06 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-10-06 16:17:40 +0200califax(~califax@user/califx)
2022-10-06 16:18:23 +0200nate1(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2022-10-06 16:18:29 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 252 seconds)
2022-10-06 16:19:48 +0200 <heinz9> can someone explain: https://hackage.haskell.org/package/HaskellForMaths-0.4.9/docs/Math-Algebras-TensorAlgebra.html#v:…
2022-10-06 16:20:06 +0200 <heinz9> how algebra leads to vector space
2022-10-06 16:23:15 +0200kenran(~user@user/kenran)
2022-10-06 16:26:10 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2022-10-06 16:30:36 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net)
2022-10-06 16:31:04 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 258 seconds)
2022-10-06 16:31:14 +0200natechan(~nate@98.45.169.16)
2022-10-06 16:31:45 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 16:33:38 +0200zns(~zns@user/zns)
2022-10-06 16:33:38 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-06 16:33:45 +0200son0p(~ff@181.136.122.143) (Ping timeout: 268 seconds)
2022-10-06 16:33:47 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 16:33:59 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 16:34:17 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 16:35:12 +0200mvk(~mvk@2607:fea8:5ce3:8500::778c) (Ping timeout: 264 seconds)
2022-10-06 16:35:21 +0200loras(~bc@c-73-139-125-125.hsd1.fl.comcast.net)
2022-10-06 16:38:10 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 16:39:33 +0200littlefinger(~littlefin@pool-100-15-237-121.washdc.fios.verizon.net)
2022-10-06 16:43:29 +0200burnsidesLlama(~burnsides@client-8-79.eduroam.oxuni.org.uk)
2022-10-06 16:43:51 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-10-06 16:48:42 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 258 seconds)
2022-10-06 16:50:21 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 16:52:32 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 16:54:12 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 16:58:16 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:58e7:cdd6:72c0:6b0d) (Quit: WeeChat 2.8)
2022-10-06 17:03:58 +0200califax_(~califax@user/califx)
2022-10-06 17:04:48 +0200califax(~califax@user/califx) (Ping timeout: 258 seconds)
2022-10-06 17:05:06 +0200califax_califax
2022-10-06 17:06:38 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 17:08:56 +0200king_gs(~Thunderbi@187.201.126.32)
2022-10-06 17:11:20 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 17:13:45 +0200nschoe_(~quassel@141.101.51.197)
2022-10-06 17:15:42 +0200nschoe_(~quassel@141.101.51.197) (Client Quit)
2022-10-06 17:15:57 +0200nschoe_(~quassel@141.101.51.197)
2022-10-06 17:16:58 +0200nschoe_(~quassel@141.101.51.197) (Client Quit)
2022-10-06 17:17:15 +0200nschoe_(~quassel@141.101.51.197)
2022-10-06 17:17:49 +0200nschoe_(~quassel@141.101.51.197) (Client Quit)
2022-10-06 17:19:33 +0200nschoe(~quassel@141.101.51.197) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-10-06 17:20:57 +0200nschoe(~q@141.101.51.197)
2022-10-06 17:21:33 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f)
2022-10-06 17:23:23 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 252 seconds)
2022-10-06 17:23:44 +0200kenran(~user@user/kenran) (Remote host closed the connection)
2022-10-06 17:23:57 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 17:25:13 +0200kdaishi(~Thunderbi@dyn3130-216.wlan.ic.ac.uk) (Ping timeout: 252 seconds)
2022-10-06 17:25:27 +0200burnsidesLlama(~burnsides@client-8-79.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 17:26:01 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f) (Ping timeout: 260 seconds)
2022-10-06 17:26:15 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 268 seconds)
2022-10-06 17:27:55 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 17:29:52 +0200fjMSX(~hypni2p@2.92.213.55)
2022-10-06 17:33:10 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 17:34:53 +0200Kaiepi(~Kaiepi@142.68.249.28)
2022-10-06 17:35:22 +0200king_gs(~Thunderbi@187.201.126.32) (Quit: king_gs)
2022-10-06 17:35:37 +0200king_gs(~Thunderbi@187.201.126.32)
2022-10-06 17:38:54 +0200littlefinger(~littlefin@pool-100-15-237-121.washdc.fios.verizon.net) (Quit: Client closed)
2022-10-06 17:40:39 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 17:42:06 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-10-06 17:43:32 +0200jakalx(~jakalx@base.jakalx.net)
2022-10-06 17:45:04 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 17:48:39 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 17:52:00 +0200king_gs(~Thunderbi@187.201.126.32) (Ping timeout: 264 seconds)
2022-10-06 17:53:28 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f)
2022-10-06 17:54:43 +0200jonathanx(~jonathan@h-98-128-168-222.NA.cust.bahnhof.se) (Ping timeout: 248 seconds)
2022-10-06 17:55:33 +0200zns(~zns@user/zns)
2022-10-06 17:59:09 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 18:00:49 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 18:04:36 +0200 <lyxia> heinz9: https://en.wikipedia.org/wiki/Tensor_algebra
2022-10-06 18:07:04 +0200causal(~user@50.35.83.177) (Quit: WeeChat 3.6)
2022-10-06 18:07:15 +0200 <heinz9> lyxia, in the type declaration of haskell
2022-10-06 18:08:11 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-06 18:09:17 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 18:09:32 +0200 <ski> (`liftTA' looks like an adjunction ..)
2022-10-06 18:12:06 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net) (Ping timeout: 260 seconds)
2022-10-06 18:12:31 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-06 18:12:49 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f) (Remote host closed the connection)
2022-10-06 18:12:54 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2022-10-06 18:13:00 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 18:13:03 +0200kuribas(~user@silversquare.silversquare.eu) (Read error: Connection reset by peer)
2022-10-06 18:13:40 +0200Lycurgus(~juan@user/Lycurgus)
2022-10-06 18:13:58 +0200mikoto-chan(~mikoto-ch@164.5.249.78)
2022-10-06 18:15:20 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 18:16:51 +0200zebrag(~chris@user/zebrag)
2022-10-06 18:19:14 +0200mvk(~mvk@2607:fea8:5ce3:8500::778c)
2022-10-06 18:19:32 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 18:22:48 +0200kdaishi(~Thunderbi@94.191.152.1)
2022-10-06 18:23:25 +0200docdave(~donovick@50.39.179.143)
2022-10-06 18:24:15 +0200nschoe(~q@141.101.51.197) (Ping timeout: 252 seconds)
2022-10-06 18:25:37 +0200jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-10-06 18:26:28 +0200Lycurgus(~juan@user/Lycurgus) (Quit: Exeunt juan@acm.org)
2022-10-06 18:29:54 +0200econo(uid147250@user/econo)
2022-10-06 18:31:41 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 18:32:57 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 18:33:11 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-10-06 18:37:08 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 18:37:25 +0200 <zero> lyxia: are you li-yao?
2022-10-06 18:37:43 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1)
2022-10-06 18:37:43 +0200 <lyxia> zero: that's me
2022-10-06 18:37:46 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 260 seconds)
2022-10-06 18:38:14 +0200 <zero> i was *just* reading https://blog.poisson.chat/posts/2019-10-27-continuation-submonads.html :)
2022-10-06 18:38:45 +0200 <EvanR> church of the submonad
2022-10-06 18:39:03 +0200chomwitt(~chomwitt@2a02:587:dc14:f500:2b1d:f941:b29c:4324) (Ping timeout: 268 seconds)
2022-10-06 18:39:39 +0200 <zero> preach
2022-10-06 18:41:33 +0200 <lyxia> :)
2022-10-06 18:41:38 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 18:43:15 +0200Tuplanolla(~Tuplanoll@91-159-69-34.elisa-laajakaista.fi)
2022-10-06 18:43:40 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-10-06 18:44:20 +0200Topsi(~Topsi@dyndsl-095-033-089-091.ewe-ip-backbone.de)
2022-10-06 18:47:09 +0200son0p(~ff@181.136.122.143)
2022-10-06 18:47:09 +0200kdaishi(~Thunderbi@94.191.152.1) (Read error: Connection reset by peer)
2022-10-06 18:48:34 +0200kdaishi(~Thunderbi@94.191.152.1)
2022-10-06 18:49:31 +0200darkstardev13(~darkstard@50.126.124.156)
2022-10-06 18:49:45 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 18:50:00 +0200fmgornick(~fmgornick@2607:ea00:107:3c07:70ce:e328:b353:33b2)
2022-10-06 18:50:16 +0200darkstarx(~darkstard@50.126.124.156) (Ping timeout: 246 seconds)
2022-10-06 18:51:47 +0200 <fmgornick> ?src array
2022-10-06 18:51:47 +0200 <lambdabot> Source not found.
2022-10-06 18:52:08 +0200zerozzz
2022-10-06 18:52:36 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2022-10-06 18:54:11 +0200 <ski> fmgornick : what're you looking for ?
2022-10-06 18:56:16 +0200 <fmgornick> oh i'm tryna figure out how the array function works
2022-10-06 18:56:49 +0200 <EvanR> that's in gentle introduction too!
2022-10-06 18:56:57 +0200 <fmgornick> does lambdabot only show src for base functions, and nothing from the Data.Array library
2022-10-06 18:57:07 +0200 <EvanR> https://www.haskell.org/tutorial/arrays.html
2022-10-06 18:57:56 +0200 <EvanR> (lambdabot doesn't have actual source from libraries, just snippets in some file on its server)
2022-10-06 18:58:05 +0200 <EvanR> for actual source, look at hackage source links
2022-10-06 18:58:06 +0200 <fmgornick> darnnn
2022-10-06 18:58:24 +0200 <fmgornick> thanks tho!
2022-10-06 18:58:30 +0200 <fmgornick> ok i'm out
2022-10-06 18:58:33 +0200fmgornick(~fmgornick@2607:ea00:107:3c07:70ce:e328:b353:33b2) (Quit: WeeChat 3.6)
2022-10-06 18:58:43 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2022-10-06 18:59:06 +0200 <Topsi> Given Bitraversable does the following definition satisfy the Traversable laws? traverse = bitraverse pure
2022-10-06 18:59:58 +0200 <lyxia> yes
2022-10-06 19:01:57 +0200MajorBiscuit(~MajorBisc@c-001-024-018.client.tudelft.eduvpn.nl) (Ping timeout: 268 seconds)
2022-10-06 19:05:30 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 19:09:10 +0200jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-10-06 19:11:36 +0200jonathanx(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 260 seconds)
2022-10-06 19:13:10 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 19:14:16 +0200jonathanx_(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 19:14:22 +0200jonathanx__(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se)
2022-10-06 19:15:56 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 19:16:13 +0200docdave(~donovick@50.39.179.143) (Ping timeout: 265 seconds)
2022-10-06 19:20:44 +0200mbuf(~Shakthi@49.204.117.154) (Quit: Leaving)
2022-10-06 19:21:20 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net)
2022-10-06 19:22:57 +0200DavidBinder(~DavidBind@tmo-099-246.customers.d1-online.com)
2022-10-06 19:25:35 +0200swistak-(~swistak@185.21.216.141) (Remote host closed the connection)
2022-10-06 19:26:23 +0200swistak(~swistak@185.21.216.141)
2022-10-06 19:30:26 +0200chomwitt(~chomwitt@2a02:587:dc14:f500:b953:cd7b:2dda:416c)
2022-10-06 19:31:32 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 19:33:11 +0200beteigeuze(~Thunderbi@2001:8a0:61b5:6101:f0c:e4e3:bfdc:91df) (Ping timeout: 260 seconds)
2022-10-06 19:36:46 +0200fresheyeball(~fresheyeb@c-76-25-93-164.hsd1.co.comcast.net) (Quit: WeeChat 3.5)
2022-10-06 19:39:14 +0200swistak(~swistak@185.21.216.141) (Remote host closed the connection)
2022-10-06 19:40:10 +0200swistak(~swistak@185.21.216.141)
2022-10-06 19:43:31 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-06 19:44:13 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 19:56:32 +0200wonko(~wjc@2a0e:1c80:11::50) (Read error: Connection reset by peer)
2022-10-06 20:02:00 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-10-06 20:02:21 +0200raehik1(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
2022-10-06 20:03:44 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2022-10-06 20:03:56 +0200king_gs(~Thunderbi@187.201.126.32)
2022-10-06 20:04:46 +0200DavidBinder(~DavidBind@tmo-099-246.customers.d1-online.com) (Ping timeout: 252 seconds)
2022-10-06 20:06:27 +0200Erez(~Erez@155.4.187.85)
2022-10-06 20:07:43 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f)
2022-10-06 20:09:24 +0200paddymahoney(~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com)
2022-10-06 20:10:38 +0200Erez(~Erez@155.4.187.85) (Ping timeout: 252 seconds)
2022-10-06 20:11:41 +0200kdaishi(~Thunderbi@94.191.152.1) (Read error: Connection reset by peer)
2022-10-06 20:13:34 +0200kdaishi(~Thunderbi@94.191.152.1.mobile.tre.se)
2022-10-06 20:13:40 +0200king_gs(~Thunderbi@187.201.126.32) (Remote host closed the connection)
2022-10-06 20:14:32 +0200nate1(~nate@98.45.169.16)
2022-10-06 20:19:24 +0200cfricke(~cfricke@user/cfricke) (Quit: WeeChat 3.6)
2022-10-06 20:19:27 +0200nate1(~nate@98.45.169.16) (Ping timeout: 268 seconds)
2022-10-06 20:19:52 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 20:21:17 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 20:26:59 +0200 <EvanR> I just realized that this actually says (>>=) https://i.imgur.com/XI5x0yK.png
2022-10-06 20:27:15 +0200 <EvanR> by doing html inspection xD
2022-10-06 20:28:09 +0200 <c_wraith> this is why I hate "coding ligatures"
2022-10-06 20:28:58 +0200ft(~ft@p3e9bc57b.dip0.t-ipconnect.de)
2022-10-06 20:29:05 +0200Erez(~Erez@155.4.187.85)
2022-10-06 20:29:21 +0200 <EvanR> writing systems aren't immune to the ongoing technological singularity xD
2022-10-06 20:29:39 +0200 <EvanR> back in the day you had to wait 400 years to see an upgrade to your alphabet
2022-10-06 20:29:43 +0200 <Rembane> How is >>= represented in body text in papers?
2022-10-06 20:30:00 +0200 <Rembane> EvanR: And you had to know a mould maker!
2022-10-06 20:31:56 +0200 <geekosaur> most of the ones I've seen use `>>=`, not fancy ligatures or symbols
2022-10-06 20:32:18 +0200 <geekosaur> but some coders really like their special ligatured fonts
2022-10-06 20:32:21 +0200 <Rembane> That's very reasonable
2022-10-06 20:33:05 +0200 <Rembane> This made me wonder the history behind the bind operator.
2022-10-06 20:33:35 +0200 <EvanR> I for one will display a mini haskell logo, probably with animated rainbow outline, for each >>=
2022-10-06 20:34:04 +0200 <ski> sometimes an infix (five-pointed) star is used for `=<<'. sometimes a superscript star to the right of the operator
2022-10-06 20:34:13 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 20:35:08 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 20:35:15 +0200mikoto-chan(~mikoto-ch@164.5.249.78) (Ping timeout: 248 seconds)
2022-10-06 20:35:42 +0200 <ski> oh, i've also seen ⌜≫=⌝ (and ⌜⧺⌝ for `++')
2022-10-06 20:36:37 +0200 <EvanR> *squint* is that a set of bowling pins stacked up
2022-10-06 20:36:53 +0200thyriaen(~thyriaen@2a01:aea0:dd4:463c:6245:cbff:fe9f:48b1) (Quit: Leaving)
2022-10-06 20:37:10 +0200 <EvanR> oh it's two right angle brackets
2022-10-06 20:39:09 +0200paddymahoney(~paddymaho@cpe9050ca207f83-cm9050ca207f80.cpe.net.cable.rogers.com) (Read error: Connection reset by peer)
2022-10-06 20:39:42 +0200 <ski> not quite. that'd be ⌜⟫⌝ .. or maybe ⌜»⌝ or ⌜》⌝
2022-10-06 20:41:35 +0200 <ski> > map generalCategory "≫⟫»》"
2022-10-06 20:41:37 +0200 <lambdabot> [MathSymbol,ClosePunctuation,FinalQuote,ClosePunctuation]
2022-10-06 20:41:46 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2022-10-06 20:42:25 +0200zeenk(~zeenk@2a02:2f04:a20a:3e00:5712:52b0:ca1d:bc63) (Quit: Konversation terminated!)
2022-10-06 20:42:28 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2022-10-06 20:42:45 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de) (Quit: Leaving.)
2022-10-06 20:43:30 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f) (Remote host closed the connection)
2022-10-06 20:46:11 +0200 <EvanR> I increased my font size
2022-10-06 20:46:32 +0200 <EvanR> wow
2022-10-06 20:46:48 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 20:48:08 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-10-06 20:48:29 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 20:49:08 +0200gqplox(~textual@97e654ef.skybroadband.com) (Client Quit)
2022-10-06 20:53:42 +0200acidjnk_new(~acidjnk@p200300d6e7137a803df8600689bd02d5.dip0.t-ipconnect.de)
2022-10-06 20:55:50 +0200cyphase(~cyphase@user/cyphase) (Ping timeout: 268 seconds)
2022-10-06 20:57:08 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-06 20:59:33 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-10-06 21:06:51 +0200cyphase(~cyphase@user/cyphase)
2022-10-06 21:08:00 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f)
2022-10-06 21:10:08 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 258 seconds)
2022-10-06 21:14:02 +0200pavonia(~user@user/siracusa)
2022-10-06 21:14:20 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 21:16:29 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2022-10-06 21:18:07 +0200Erez(~Erez@155.4.187.85) (Remote host closed the connection)
2022-10-06 21:25:48 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f) (Remote host closed the connection)
2022-10-06 21:26:43 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:99:c3ef:c701:4270)
2022-10-06 21:28:57 +0200enoq(~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq)
2022-10-06 21:34:40 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 21:37:14 +0200talismanick(~talismani@2601:200:c100:c9e0::24ac)
2022-10-06 21:38:05 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 21:38:17 +0200zns(~zns@user/zns)
2022-10-06 21:38:19 +0200zns(~zns@user/zns) (Client Quit)
2022-10-06 21:38:32 +0200zns(~zns@user/zns)
2022-10-06 21:38:49 +0200zns(~zns@user/zns) (Client Quit)
2022-10-06 21:39:00 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 21:40:11 +0200zns(~zns@user/zns)
2022-10-06 21:40:20 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-10-06 21:40:36 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-10-06 21:40:41 +0200zns(~zns@user/zns) (Client Quit)
2022-10-06 21:41:42 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 265 seconds)
2022-10-06 21:42:05 +0200zns(~zns@user/zns)
2022-10-06 21:42:59 +0200teo(~teo@user/teo) (Ping timeout: 252 seconds)
2022-10-06 21:46:31 +0200lisbeths(uid135845@id-135845.lymington.irccloud.com)
2022-10-06 21:48:05 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 21:49:39 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2022-10-06 21:50:48 +0200zns(~zns@user/zns)
2022-10-06 21:55:07 +0200rockystone(~rocky@user/rockymarine)
2022-10-06 21:56:53 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 21:57:05 +0200zns(~zns@user/zns)
2022-10-06 21:58:28 +0200Guest86(~Guest86@p200300ef9718356967cd5be491300607.dip0.t-ipconnect.de)
2022-10-06 21:58:49 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 258 seconds)
2022-10-06 21:59:00 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-10-06 22:00:05 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2022-10-06 22:00:13 +0200Guest|67(~Guest|67@dyn1158-240.insecure.ic.ac.uk)
2022-10-06 22:00:21 +0200Guest|67(~Guest|67@dyn1158-240.insecure.ic.ac.uk) (Client Quit)
2022-10-06 22:00:29 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-10-06 22:01:53 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 22:02:36 +0200lyle(~lyle@104.246.145.85) (Quit: WeeChat 3.6)
2022-10-06 22:05:09 +0200abrar(~abrar@static-108-2-152-54.phlapa.fios.verizon.net) (Quit: WeeChat 3.5)
2022-10-06 22:05:33 +0200abrar(~abrar@static-108-2-152-54.phlapa.fios.verizon.net)
2022-10-06 22:06:52 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 22:07:25 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 22:07:32 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-10-06 22:07:37 +0200zns(~zns@user/zns)
2022-10-06 22:09:44 +0200`2jt(~jtomas@90.red-88-17-81.dynamicip.rima-tde.net) (Ping timeout: 265 seconds)
2022-10-06 22:09:44 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-10-06 22:13:07 +0200 <dminuoso> At what point is a dlist better to use than a list?
2022-10-06 22:13:28 +0200zns(~zns@user/zns) (Quit: zzz)
2022-10-06 22:13:30 +0200 <dminuoso> In particular I have a small function that will consume a list and I need to keep some elements in reserve order.
2022-10-06 22:13:39 +0200zns(~zns@user/zns)
2022-10-06 22:14:08 +0200 <dminuoso> Because at some point I need to reserve that list - so I have the choice to either dlistSnoc the list together, or just list cons + reserve at the end.
2022-10-06 22:14:19 +0200 <dminuoso> List may range between 2 and 10 elements realistically
2022-10-06 22:14:38 +0200 <jackdk> I use them when I need to avoid the performance loss of repeated right-appends, and I do not care about inspecting the built list halfway through
2022-10-06 22:14:58 +0200zns(~zns@user/zns) (Client Quit)
2022-10-06 22:15:24 +0200jonathanx__(~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Ping timeout: 264 seconds)
2022-10-06 22:15:25 +0200nate1(~nate@98.45.169.16)
2022-10-06 22:18:27 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 22:20:15 +0200zns(~zns@user/zns)
2022-10-06 22:20:22 +0200nate1(~nate@98.45.169.16) (Ping timeout: 265 seconds)
2022-10-06 22:20:40 +0200 <dminuoso> But the functions themselves are not free either
2022-10-06 22:21:04 +0200 <Hecate> ooooh I cannot wait for 'List' to be available as a type in GHC 9.6
2022-10-06 22:21:18 +0200 <Hecate> I *will* wait but it will be painful
2022-10-06 22:21:32 +0200 <dminuoso> Huh? List? What's that?
2022-10-06 22:22:01 +0200Demi(~Demi@212.227.212.113) (Closing Window)
2022-10-06 22:22:07 +0200 <dminuoso> Is Haskell, after 30 years, finally getting builtin support for non-singly linked lists?
2022-10-06 22:22:38 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 22:22:53 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 22:23:07 +0200ubert(~Thunderbi@178.165.204.109.wireless.dyn.drei.com) (Remote host closed the connection)
2022-10-06 22:25:58 +0200 <EvanR> dminuoso, I was basically asking this exact thing yesterday. And I ask this about once a year
2022-10-06 22:26:17 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f)
2022-10-06 22:26:59 +0200 <EvanR> just cons then reverse at the end, vs something like DList
2022-10-06 22:30:09 +0200justHaunted_justHaunted
2022-10-06 22:30:17 +0200_justHauntedjustHaunted
2022-10-06 22:30:31 +0200frost(~frost@user/frost) (Quit: Client closed)
2022-10-06 22:31:00 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e519:421e:c827:31f) (Ping timeout: 264 seconds)
2022-10-06 22:31:31 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 22:33:10 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 22:34:23 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 22:36:16 +0200gqplox(~textual@97e654ef.skybroadband.com) (Client Quit)
2022-10-06 22:36:51 +0200Colere(~colere@about/linux/staff/sauvin) (Remote host closed the connection)
2022-10-06 22:37:09 +0200Colere(~colere@about/linux/staff/sauvin)
2022-10-06 22:37:57 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30:99:c3ef:c701:4270) (Quit: caryhartline)
2022-10-06 22:38:46 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Ping timeout: 252 seconds)
2022-10-06 22:46:36 +0200titibandit(~titibandi@xdsl-89-0-65-2.nc.de)
2022-10-06 22:48:29 +0200littlefinger(~littlefin@pool-100-15-237-121.washdc.fios.verizon.net)
2022-10-06 22:50:09 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 22:50:14 +0200caryhartline(~caryhartl@2600:1700:2d0:8d30::1c)
2022-10-06 22:50:14 +0200 <qrpnxz> ik of at least one PR where dlist gave like quadratic explosion and it was changed instead to just be cons -> reverse (simply linear)
2022-10-06 22:50:30 +0200 <qrpnxz> i don't remember the details tho
2022-10-06 22:50:33 +0200 <qrpnxz> i'll try to fin dit
2022-10-06 22:50:36 +0200 <qrpnxz> *find it
2022-10-06 22:50:36 +0200 <EvanR> the dlist package advertises O(1) snoc. And then doesn't advertise the cost of toList so you can actually use the result xD
2022-10-06 22:50:53 +0200 <qrpnxz> xD
2022-10-06 22:51:01 +0200 <EvanR> you could explain the same benefits of consing onto a normal list, then reversing
2022-10-06 22:51:07 +0200 <EvanR> it's O(1) snoc
2022-10-06 22:51:25 +0200 <dminuoso> So a list will, outside of deforestation, cost heap allocations
2022-10-06 22:51:48 +0200 <EvanR> repeatedly doing accum . f doesn't?
2022-10-06 22:52:07 +0200Topsi(~Topsi@dyndsl-095-033-089-091.ewe-ip-backbone.de) (Ping timeout: 246 seconds)
2022-10-06 22:52:19 +0200 <dminuoso> Mmm
2022-10-06 22:52:30 +0200 <EvanR> (snocing by composing a function)
2022-10-06 22:52:52 +0200 <dminuoso> I guess the heap allocation is a red herring, given that - like you pointed out - you will be toList'ing eventually anyway
2022-10-06 22:53:03 +0200 <dminuoso> And if you force the entirety of the list, you will be paying for those allocations regardless
2022-10-06 22:53:17 +0200 <dminuoso> And if the list composition causes heap allocations, you will actually increase them
2022-10-06 22:53:19 +0200 <Hecate> < dminuoso> Huh? List? What's that? // We're going the Elm road! https://twitter.com/FlavioCorpa/status/1578125123298762754
2022-10-06 22:54:09 +0200 <geekosaur> ML here we come
2022-10-06 22:54:21 +0200 <geekosaur> next it'll be "list of 'a"
2022-10-06 22:54:31 +0200 <Hecate> haha
2022-10-06 22:54:42 +0200 <Hecate> I will enjoy this little win
2022-10-06 22:55:13 +0200 <dminuoso> Hecate: Oh, you almost had me there.
2022-10-06 22:55:14 +0200 <Rembane> I wonder what the juicy bits of the proposal are.
2022-10-06 22:55:22 +0200 <Hecate> it's easier to write %s/List/Vector/g instead of a regex to capture the content of []
2022-10-06 22:55:23 +0200Rembaneclicks links
2022-10-06 22:55:30 +0200 <Hecate> Rembane: it's about syntax punning
2022-10-06 22:55:39 +0200 <Rembane> Hecate: As in dad jokes?
2022-10-06 22:55:41 +0200 <dminuoso> Anyhow, its a nice change.
2022-10-06 22:55:44 +0200 <EvanR> dminuoso, in a simple understand of it, appending to a list backward is one set of allocations, then reversing it is a second (equally sized) set. Assuming you use it all. While the toList will only do the 2nd set. But up to that point you also allocated a chain of thunks equal in number to the list size, if you only snoc 1 at a time
2022-10-06 22:56:01 +0200 <Hecate> Rembane: I'll drop a baby on your doorstep if you keep on with the dad jokes
2022-10-06 22:56:12 +0200 <Hecate> and then you'll be able to know if a wall is load-bearing
2022-10-06 22:56:13 +0200 <dminuoso> EvanR: I think I will have to stg-simulate both and analyze it.
2022-10-06 22:56:19 +0200catern(~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) (Ping timeout: 246 seconds)
2022-10-06 22:56:32 +0200 <dminuoso> Especially since we have to include any optimizations that can occur into the picture
2022-10-06 22:56:36 +0200 <Rembane> Hecate: Yes please!
2022-10-06 22:57:02 +0200 <dminuoso> Hecate: You almost had me believe we were getting a kind of usable Vector'ish type into base.
2022-10-06 22:57:23 +0200 <Rembane> Hecate: The idea seems to have pun-free code. I'm slightly skeptical. I like dad jokes.
2022-10-06 22:58:11 +0200 <Rembane> Hecate: also, I got bitten by Type vs Kind punning in Haskell 2021, that was exciting.
2022-10-06 22:58:17 +0200 <dminuoso> I dont like the tuple changes though.
2022-10-06 22:58:33 +0200 <Hecate> dminuoso: my fucking god, have you read my Discourse thread about putting Text into base? It was a bloodbath
2022-10-06 22:58:39 +0200 <qrpnxz> Hecate: they really renaming the list type? I can't believe it.
2022-10-06 22:58:48 +0200 <Hecate> Rembane: would love you to explain a bit more how you got bitten
2022-10-06 22:58:58 +0200 <dminuoso> Hecate: Honestly, Haskell is in the same deep mud that erlang/elixir is in.
2022-10-06 22:59:05 +0200 <qrpnxz> it seems like the ultimate backwards incompatible change
2022-10-06 22:59:05 +0200 <Hecate> qrpnxz: no its' just a new syntax made available, [] is still kept as a special syntax
2022-10-06 22:59:10 +0200 <qrpnxz> ah ok
2022-10-06 22:59:34 +0200 <Hecate> dminuoso: NO! Erlang managed to get UTF-8 encoded binaries for strings before Haskell, under the pressure of Elixir
2022-10-06 22:59:59 +0200 <EvanR> List will be an alternative name for [] ?
2022-10-06 23:00:05 +0200 <Rembane> Hecate: In reality it bit my friend so I don't remember the details, but it was something about GHC making up polykinds and then doing it wrong. GADTs were involved. It was solved by turning off some PolyKind extension that was on by default in the new language version.
2022-10-06 23:00:07 +0200 <EvanR> that could be handy
2022-10-06 23:00:14 +0200 <dminuoso> Hecate: Yes, but printable lists occur everywhere.
2022-10-06 23:00:34 +0200 <dminuoso> Hecate: So you have this same interop problem as Haskell has. showT, T.unpack and T.pack are *everywhere*
2022-10-06 23:00:48 +0200 <dminuoso> They are my most used functions by far.
2022-10-06 23:01:02 +0200 <EvanR> that's how people did string processing in B! xD
2022-10-06 23:01:04 +0200 <Hecate> Rembane: oh yes the PolyKinds extension is on by default, and as you know, GADTs are a Dr. Frankenstein graft on the Hindley-Milner type system
2022-10-06 23:01:10 +0200 <EvanR> unpack the string, operate on chars, repack
2022-10-06 23:01:32 +0200 <Hecate> dminuoso: yes I'm still salty about the pervasiveness of linked lists in Elixir
2022-10-06 23:01:35 +0200nate1(~nate@98.45.169.16)
2022-10-06 23:01:39 +0200 <Hecate> but that's not my battle to fight anymore
2022-10-06 23:01:40 +0200 <dminuoso> But not in Haskell? :>
2022-10-06 23:01:43 +0200 <dminuoso> heh
2022-10-06 23:01:48 +0200 <EvanR> only haskell can use linked lists
2022-10-06 23:01:59 +0200 <EvanR> go to war over it. With elixir. but not C
2022-10-06 23:02:08 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 23:02:13 +0200 <EvanR> C is too powerful
2022-10-06 23:02:14 +0200 <dminuoso> The really surprising thing is, how good GHC optimizations are to make these singly lists bearable.
2022-10-06 23:02:31 +0200 <dminuoso> Its at a point where working with large String is actually feasible in most places.
2022-10-06 23:02:41 +0200 <Hecate> dminuoso: yeah I'm paid to be a cute Haskell face in the community, my Elixir days have passed now
2022-10-06 23:02:58 +0200 <dminuoso> Elixir was my gateway drug to Haskell actually
2022-10-06 23:03:23 +0200 <Rembane> Hecate: Absolutely. They are too powerful etc. :)
2022-10-06 23:03:28 +0200 <dminuoso> After battling for about two weeks with dialyzer, I began to realize what I really wanted was a type system.
2022-10-06 23:04:03 +0200 <Rembane> dialyzer is such a lovely foot gun. Good for docs though.
2022-10-06 23:04:05 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2022-10-06 23:04:21 +0200 <Hecate> dminuoso: 🤝
2022-10-06 23:04:24 +0200 <EvanR> wow people in here know elixir? cool
2022-10-06 23:04:27 +0200 <qrpnxz> EvanR: why are you packing and unpacking so much just to do like `Data.Text.map`?
2022-10-06 23:04:38 +0200 <qrpnxz> what super complicated non-stream operations are you doing
2022-10-06 23:04:44 +0200 <qrpnxz> why can't they be done with Text
2022-10-06 23:04:47 +0200 <EvanR> me?
2022-10-06 23:04:49 +0200 <qrpnxz> yes
2022-10-06 23:04:56 +0200EvanRscrolls up
2022-10-06 23:04:56 +0200 <qrpnxz> or did i misread
2022-10-06 23:05:04 +0200 <dminuoso> You probably meant me
2022-10-06 23:05:04 +0200 <qrpnxz> dminuoso: i guess sorry
2022-10-06 23:05:36 +0200 <dminuoso> qrpnxz: So I make use of show in a lot of errors/diagnostics, but since I rely heavily on Text, its all showT (which is just an INLINEd `T.pack . show`)
2022-10-06 23:05:37 +0200 <qrpnxz> or not, it was evan that said about unpacking and repacking
2022-10-06 23:05:41 +0200 <qrpnxz> but both of you i guess
2022-10-06 23:05:41 +0200 <dminuoso> Other things is working with libraries that just hand you a string
2022-10-06 23:05:47 +0200 <dminuoso> Or libraries that expect a string
2022-10-06 23:06:08 +0200 <dminuoso> errorBundlePretty :: forall s e . (VisualStream s, TraversableStream s, ShowErrorComponent e) => ParseErrorBundle s e -> String
2022-10-06 23:06:09 +0200stackdroid18(~stackdroi@user/stackdroid)
2022-10-06 23:06:16 +0200 <dminuoso> Here, that's the most recent example from just 5 minutes ago.
2022-10-06 23:06:19 +0200 <qrpnxz> lol what
2022-10-06 23:06:35 +0200gqplox(~textual@97e654ef.skybroadband.com) (Client Quit)
2022-10-06 23:06:48 +0200 <EvanR> is that megaparsec error bundle or
2022-10-06 23:06:50 +0200 <dminuoso> Yeah
2022-10-06 23:07:12 +0200 <dminuoso> For what its worth, I will be switching to alex/happy soon. But guess what, these things have a lot of String appearing internally!
2022-10-06 23:07:17 +0200 <dminuoso> So it will be even more T.pack then.
2022-10-06 23:08:06 +0200 <EvanR> maybe there's an optimization which removes the intermediate unpack . pack and lets you operate directly on list of char xD
2022-10-06 23:08:14 +0200 <Hecate> EvanR: I was a member of the Elixir community from 2016 to 2018
2022-10-06 23:08:26 +0200 <Hecate> although I was dabbling in it since 2015
2022-10-06 23:08:26 +0200 <dminuoso> I wouldnt be surprised if some packages had RULES for that, EvanR.
2022-10-06 23:08:28 +0200 <EvanR> we'll call it CharList
2022-10-06 23:09:05 +0200 <qrpnxz> text does have some stream fusion stuff in it
2022-10-06 23:09:24 +0200 <dminuoso> text is really well built
2022-10-06 23:09:32 +0200 <qrpnxz> yep
2022-10-06 23:09:43 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-10-06 23:10:07 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 23:11:46 +0200 <Hecate> https://www.cl.cam.ac.uk/~nk480/implicit-polarized-f.pdf
2022-10-06 23:11:49 +0200 <Hecate> GAWD DAMN
2022-10-06 23:12:08 +0200 <dminuoso> The T.pack mechanism is incredibly efficient for a lot of constructions.
2022-10-06 23:12:19 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Remote host closed the connection)
2022-10-06 23:12:29 +0200 <EvanR> I'm imagining a string process library using text made mostly of Char operations, and slowed down by sometimes having to pack everything into a Text, which is immediate unpacked for reasons xD
2022-10-06 23:12:35 +0200 <dminuoso> It has a nice streaming mechanism, but is built such that for small buffers there's no streaming going on and almost no overhead.
2022-10-06 23:13:08 +0200 <EvanR> (realistically, if you are printing out a Text directly, the whole story goes inside out and is better)
2022-10-06 23:13:34 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 258 seconds)
2022-10-06 23:13:34 +0200gqplox(~textual@97e654ef.skybroadband.com) (Client Quit)
2022-10-06 23:13:41 +0200 <dminuoso> EvanR: the only bad part about Text was the internal encoding, which you would almost assuredly pay twice for over its lifetime.
2022-10-06 23:13:48 +0200 <dminuoso> but luckily this has finally been fixed in text-2.0
2022-10-06 23:13:55 +0200 <EvanR> I was wondering about that
2022-10-06 23:14:03 +0200 <EvanR> utf16 is pretty weird
2022-10-06 23:14:14 +0200 <Hecate> we're catching up with our past
2022-10-06 23:14:21 +0200 <dminuoso> To be fair, utf16 is nice if you interface with some set of particular libaries
2022-10-06 23:14:27 +0200 <Hecate> it's great to see no-bullshit people like Bodigrim do the work
2022-10-06 23:14:34 +0200 <Hecate> we do deserve better
2022-10-06 23:15:22 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 23:15:54 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-10-06 23:16:10 +0200 <dminuoso> With utf8 you much more frequently steal its internal buffer :>
2022-10-06 23:16:35 +0200 <dminuoso> Its actually one particular annoyance I have with this network encoding protocol right now
2022-10-06 23:17:09 +0200 <dminuoso> A user may specify a attribute - which is a sum type of things like Word8, ByteString and Text, but I need to know its encoded attribute length ahead of time.
2022-10-06 23:17:27 +0200 <dminuoso> In order to validate it (since I have to know whether its utf8 encoded length will fit onto the wire)
2022-10-06 23:17:55 +0200 <EvanR> if you need to know something from the future to do something now, we have that
2022-10-06 23:18:16 +0200 <EvanR> bill and ted monad
2022-10-06 23:18:25 +0200 <dminuoso> EvanR: No its called TardisT
2022-10-06 23:18:32 +0200 <dminuoso> https://hackage.haskell.org/package/tardis-0.4.4.0/docs/Control-Monad-Tardis.html#t:TardisT
2022-10-06 23:18:39 +0200 <EvanR> I know, I just saw bill and ted first
2022-10-06 23:18:45 +0200 <dminuoso> heh
2022-10-06 23:18:48 +0200 <EvanR> yes I know dr who is much older
2022-10-06 23:19:50 +0200 <dminuoso> Bill and Ted has to be the only enjoyable display of acting by Keanu Reeves.
2022-10-06 23:20:15 +0200oldsk00l(~znc@ec2-13-40-82-74.eu-west-2.compute.amazonaws.com)
2022-10-06 23:21:26 +0200 <qrpnxz> i just thought about how transforming a list to a stream fusion type doesn't use foldr, so it can't be part of foldr/build fusion. It might be interesting to have TWO levels of stream fusion, where you have like: layer 1) your library operations; layer 2) stream fusion; layer 3) if the streams are pure and you are consuming a list, use foldr/build fusion instead. But that's kind of insane, i'm
2022-10-06 23:21:28 +0200 <qrpnxz> surprised to not have seen streamList/build fusion rules before actually. I'm gonna investigate that.
2022-10-06 23:21:37 +0200jakalx(~jakalx@base.jakalx.net) (Error from remote client)
2022-10-06 23:22:18 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-10-06 23:25:19 +0200loras(~bc@c-73-139-125-125.hsd1.fl.comcast.net) (Quit: Leaving)
2022-10-06 23:25:56 +0200jakalx(~jakalx@base.jakalx.net)
2022-10-06 23:26:36 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2022-10-06 23:28:11 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-10-06 23:28:18 +0200gqplox(~textual@97e654ef.skybroadband.com) (Quit: My MacBook Air has gone to sleep. ZZZzzz…)
2022-10-06 23:28:32 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 23:30:26 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2022-10-06 23:31:30 +0200gqplox(~textual@97e654ef.skybroadband.com)
2022-10-06 23:36:06 +0200littlefinger(~littlefin@pool-100-15-237-121.washdc.fios.verizon.net) (Quit: Client closed)
2022-10-06 23:39:19 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se)
2022-10-06 23:40:38 +0200michalz(~michalz@185.246.207.205) (Remote host closed the connection)
2022-10-06 23:41:06 +0200rockystone(~rocky@user/rockymarine) (Ping timeout: 260 seconds)
2022-10-06 23:43:08 +0200Erez(~Erez@h-155-4-187-85.A980.priv.bahnhof.se) (Remote host closed the connection)
2022-10-06 23:45:53 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection)
2022-10-06 23:46:28 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk)
2022-10-06 23:46:53 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-10-06 23:47:47 +0200acidjnk_new(~acidjnk@p200300d6e7137a803df8600689bd02d5.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2022-10-06 23:51:36 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 260 seconds)
2022-10-06 23:52:11 +0200burnsidesLlama(~burnsides@client-8-86.eduroam.oxuni.org.uk) (Ping timeout: 260 seconds)
2022-10-06 23:52:19 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2022-10-06 23:59:50 +0200coot(~coot@213.134.171.3) (Quit: coot)