2023/07/08

2023-07-08 00:04:10 +0200L29Ah(~L29Ah@wikipedia/L29Ah) (Ping timeout: 250 seconds)
2023-07-08 00:05:17 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-07-08 00:07:52 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec) (Remote host closed the connection)
2023-07-08 00:08:24 +0200 <hololeap> m21it, I'm not a lens expert and I had to look it up, but wouldn't `non 321` return a map which omits keys with a value of 321?
2023-07-08 00:09:03 +0200 <hololeap> I don't see how your first expression is supposed to insert ("WORLD", 321)
2023-07-08 00:09:50 +0200sagax(~sagax_nb@user/sagax) (Read error: Connection reset by peer)
2023-07-08 00:10:43 +0200mei(~mei@user/mei)
2023-07-08 00:11:19 +0200phma_(~phma@2001:5b0:215a:da58:dcbf:27e8:323f:f6ce)
2023-07-08 00:13:50 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2023-07-08 00:13:55 +0200 <ncf> that's not what non does, but it also wouldn't insert a key
2023-07-08 00:14:11 +0200phma(~phma@host-67-44-208-87.hnremote.net) (Ping timeout: 245 seconds)
2023-07-08 00:14:29 +0200phma_phma
2023-07-08 00:17:29 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2023-07-08 00:17:54 +0200 <EvanR> dolio, would you say even recognizing negative literals for their literal value is usually deferred to parsing, in most languages
2023-07-08 00:18:41 +0200 <EvanR> outputting minus 5 instead of -5
2023-07-08 00:19:04 +0200 <dolio> I think that's pretty common, yes.
2023-07-08 00:21:00 +0200 <EvanR> wow, minus followed by several spaces then a 5 is accepted in C...
2023-07-08 00:22:12 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds)
2023-07-08 00:23:59 +0200 <ncf> m21it: non 321 effectively translates between Maybe Int and Int, where 321 now represents the Nothing case. by mapping `id` over this new representation, you go from 321 to 321, i.e. from no value to no value
2023-07-08 00:25:48 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-07-08 00:30:31 +0200 <m21it> Yes, I was thinking that `non def` in this case does "insert" the `def` value in case where focus was on `Nothing`, and becoming focused on `Just def`. The `id` example was not the best because it does actually comply with identity law, but "insertion" actually happens if the function is not `id`: `ghci> x & at "WORLD" . non 321 %~ (+1)` does produce `fromList [("HELLO",123),("WORLD",322)]`
2023-07-08 00:30:42 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec)
2023-07-08 00:31:18 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 00:32:49 +0200 <ncf> Nothing <-> def
2023-07-08 00:32:58 +0200 <ncf> Just d <-> d where d /= def
2023-07-08 00:33:18 +0200 <ncf> note that there's no `Just def` in this picture
2023-07-08 00:33:33 +0200 <ncf> mapping id is doing Nothing -> def -> Nothing
2023-07-08 00:34:01 +0200 <ncf> mapping (+1) is doing Nothing -> def ↓ def + 1 -> Just (def + 1)
2023-07-08 00:39:48 +0200yuuta(~YuutaW@2404:f4c0:f9c3:502::100:17b7) (Ping timeout: 240 seconds)
2023-07-08 00:39:56 +0200 <m21it> Yeah, I do see the idea. My problem is probably the thinking like "I could totally use lens without full understanding of implementation details". Intuitive reasoning mostly works with them, but in some cases no - lens laws do matter
2023-07-08 00:41:13 +0200bilegeek(~bilegeek@2600:1008:b068:20a1:d82d:ec1b:27cf:aa75)
2023-07-08 00:42:49 +0200YuutaW(~YuutaW@mail.yuuta.moe)
2023-07-08 00:46:26 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec) (Remote host closed the connection)
2023-07-08 00:51:36 +0200YuutaW(~YuutaW@mail.yuuta.moe) (Ping timeout: 246 seconds)
2023-07-08 00:52:01 +0200liftA2(~user@2605:a601:a60d:5400:cdf2:29ba:eca9:602a)
2023-07-08 00:52:28 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec)
2023-07-08 00:54:30 +0200 <liftA2> I was just looking at `text`, and it defines `smallChunkSize` to be `128 - chunkOverhead` . `chunkOverhead` is the number of bytes in 2 Words. So `smallChunkSize` is zero on most systems? Is there something I'm missing?
2023-07-08 00:55:11 +0200 <liftA2> Never mind, got my bits and bytes crossed.
2023-07-08 00:55:18 +0200YuutaW(~YuutaW@2404:f4c0:f9c3:502::100:17b7)
2023-07-08 00:56:01 +0200wroathe(~wroathe@user/wroathe)
2023-07-08 00:56:23 +0200 <dolio> EvanR: I'm hard pressed to think of an example where it would actually lead to perceived weirdness in most other languages. Most don't have situations like negation vs. subtraction section.
2023-07-08 00:57:29 +0200johnw_(~johnw@69.62.242.138)
2023-07-08 00:57:54 +0200johnw(~johnw@69.62.242.138) (Ping timeout: 246 seconds)
2023-07-08 00:58:15 +0200bontaq(~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 246 seconds)
2023-07-08 01:02:31 +0200alternateved(~user@77-254-166-50.dynamic.inetia.pl) (Ping timeout: 245 seconds)
2023-07-08 01:05:44 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 01:07:11 +0200Zambyte(~user@c-73-114-31-74.hsd1.ma.comcast.net) (Remote host closed the connection)
2023-07-08 01:07:24 +0200Zambyte(~user@c-73-114-31-74.hsd1.ma.comcast.net)
2023-07-08 01:09:58 +0200dmgk(~dmgk@user/dmgk) ()
2023-07-08 01:10:38 +0200 <dolio> Or, like, in most languages `f -1` would not be confused with a function call, unless `f` is part of special syntax that would make `f - 1` also like a function call.
2023-07-08 01:11:06 +0200 <dolio> (Like `print - 1`)
2023-07-08 01:12:36 +0200acidjnk(~acidjnk@p200300d6e7072f06a5c472a3c7963a83.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
2023-07-08 01:13:17 +0200caryhartline(~caryhartl@168.182.58.169) (Quit: caryhartline)
2023-07-08 01:14:01 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-07-08 01:19:13 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net)
2023-07-08 01:21:02 +0200azr4e1(~azr4e1@2a00:23c7:9cbc:3401:45fb:9c68:12fe:262b)
2023-07-08 01:21:08 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Ping timeout: 246 seconds)
2023-07-08 01:23:11 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2023-07-08 01:24:12 +0200jero98772(~jero98772@2800:484:1d7f:5d36:7b44:d981:f67d:5b1a)
2023-07-08 01:24:47 +0200jero98772(~jero98772@2800:484:1d7f:5d36:7b44:d981:f67d:5b1a) (Remote host closed the connection)
2023-07-08 01:24:48 +0200 <EvanR> in reading wikipedia about precedence and parsing algorithms I see a table saying that + - * / are left associative and ^ is right associative. Are these choices good / bad / doesn't matter in haskell?
2023-07-08 01:24:50 +0200mechap(~mechap@user/mechap) (Ping timeout: 260 seconds)
2023-07-08 01:26:07 +0200 <EvanR> also + and * having associativity seems weird
2023-07-08 01:26:19 +0200 <darkling> It doesn't matter for + and *. It very much matters (by convention) for -, / and ^
2023-07-08 01:26:47 +0200Luj5(~Luj@2a01:e0a:5f9:9681:3e8f:d5c0:40b7:2d50)
2023-07-08 01:27:13 +0200Luj(~Luj@2a01:e0a:5f9:9681:5880:c9ff:fe9f:3dfb) (Read error: Connection reset by peer)
2023-07-08 01:27:13 +0200Luj5Luj
2023-07-08 01:27:16 +0200gry(quasselcor@botters/gry)
2023-07-08 01:27:28 +0200 <EvanR> oh yeah... multiple / in a row... right
2023-07-08 01:27:47 +0200 <darkling> You can use the other associativity for the latter three, but you're going to confuse people.
2023-07-08 01:28:16 +0200 <EvanR> i would have expected a^b^c to be (a^b)^c I don't know why
2023-07-08 01:28:49 +0200 <EvanR> maybe because of the way / works
2023-07-08 01:28:50 +0200 <geekosaur> it makes more sense if you think about the other representation
2023-07-08 01:29:24 +0200 <geekosaur> (with superscripts)
2023-07-08 01:29:30 +0200 <darkling> I think it's the other way around because (a^b)^c is just a^(b*c) and there's a good syntax for that already.
2023-07-08 01:29:37 +0200 <int-e> > (2^2)^2 == 2^(2^2)
2023-07-08 01:29:38 +0200 <lambdabot> True
2023-07-08 01:29:43 +0200 <EvanR> lol
2023-07-08 01:29:53 +0200 <darkling> int-e: Stop that. ;)
2023-07-08 01:33:07 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2023-07-08 01:34:22 +0200 <DigitalKiwi> > (2^3)^4 == 2^(3^4)
2023-07-08 01:34:24 +0200 <lambdabot> False
2023-07-08 01:34:33 +0200 <DigitalKiwi> KiwiCheck
2023-07-08 01:35:01 +0200 <EvanR> > 1^(2^3) == (1^2)^3
2023-07-08 01:35:02 +0200 <lambdabot> True
2023-07-08 01:35:19 +0200 <EvanR> so far associativity is winning 2 to 1
2023-07-08 01:35:22 +0200darklingcries
2023-07-08 01:36:04 +0200 <DigitalKiwi> tears of laughter
2023-07-08 01:36:30 +0200 <int-e> @check \a b c -> (a :: Double) + (b + c) == (a + b) + c
2023-07-08 01:36:31 +0200 <lambdabot> *** Failed! Falsifiable (after 6 tests and 4 shrinks):
2023-07-08 01:36:31 +0200 <lambdabot> 4.300390628860152 0.7865356995813799 -0.7580302228566115
2023-07-08 01:36:58 +0200 <int-e> darkling: there you go, + is not associative; you're welcome.
2023-07-08 01:37:06 +0200 <darkling> :D
2023-07-08 01:37:15 +0200 <EvanR> I eat my words
2023-07-08 01:37:41 +0200 <DigitalKiwi> 6 tests out of how many
2023-07-08 01:37:51 +0200 <int-e> 6
2023-07-08 01:38:08 +0200 <EvanR> that means 5 tests passed, that's pretty good considering
2023-07-08 01:38:09 +0200 <int-e> it stops at 100 tests
2023-07-08 01:38:11 +0200 <DigitalKiwi> oh wait it found 1 after six tests
2023-07-08 01:38:15 +0200 <DigitalKiwi> i thought it found six lol
2023-07-08 01:38:48 +0200 <int-e> > 0.1 + (0.2 + 0.3) == (0.1 + 0.2) + 0.3
2023-07-08 01:38:49 +0200 <lambdabot> False
2023-07-08 01:38:50 +0200 <DigitalKiwi> so 5/6
2023-07-08 01:39:24 +0200 <DigitalKiwi> > 5/6 > 2/3
2023-07-08 01:39:25 +0200 <lambdabot> True
2023-07-08 01:39:27 +0200 <EvanR> asking for software to work better than 5 in 6 is just entitlement
2023-07-08 01:39:38 +0200 <int-e> ouch
2023-07-08 01:39:39 +0200 <ddellacosta> that's what my LLM told me
2023-07-08 01:39:47 +0200 <DigitalKiwi> EvanR: it's better than you thought!
2023-07-08 01:39:51 +0200 <darkling> "Oh, that's nothing, says Man, who goes on to prove that black is white, and gets himself run over on the next zebra crossing"
2023-07-08 01:39:52 +0200 <int-e> EvanR: so you own a Tesla
2023-07-08 01:39:58 +0200 <EvanR> lol
2023-07-08 01:40:30 +0200 <DigitalKiwi> saw a torched car driving my pax on the interstate and said "huh that doesn't look like a tesla"
2023-07-08 01:40:31 +0200 <ddellacosta> darkling, lovely Douglas Adams quote
2023-07-08 01:40:35 +0200 <geekosaur> you don't even need a Tesla for that
2023-07-08 01:41:04 +0200 <darkling> ddellacosta: I justfinished reading The Salmon of Doubt. :)
2023-07-08 01:41:10 +0200fweht(uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-07-08 01:41:15 +0200 <geekosaur> cars have been capable of bluescreening on you for a couple decades
2023-07-08 01:41:56 +0200 <geekosaur> tesla just failed to learn the lessons every other car manufacturer did the hard way
2023-07-08 01:42:16 +0200 <darkling> s/failed to learn/deliberately ignored/
2023-07-08 01:43:53 +0200sagax(~sagax_nb@user/sagax)
2023-07-08 01:46:54 +0200gurkenglas(~gurkengla@dynamic-046-114-176-237.46.114.pool.telefonica.de) (Ping timeout: 246 seconds)
2023-07-08 01:50:00 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.)
2023-07-08 01:51:03 +0200mauke_(~mauke@user/mauke)
2023-07-08 01:52:38 +0200mauke(~mauke@user/mauke) (Ping timeout: 246 seconds)
2023-07-08 01:52:38 +0200mauke_mauke
2023-07-08 01:55:52 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-07-08 01:55:53 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-07-08 01:55:53 +0200wroathe(~wroathe@user/wroathe)
2023-07-08 02:05:48 +0200praknak(~praknak@bcdcac82.skybroadband.com) (Ping timeout: 246 seconds)
2023-07-08 02:16:19 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-07-08 02:16:58 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds)
2023-07-08 02:22:12 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 02:24:31 +0200 <EvanR> I wonder what the actual probability is for + to be associative or not on Double
2023-07-08 02:39:09 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 240 seconds)
2023-07-08 02:40:26 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-07-08 02:46:54 +0200falafel(~falafel@2603-7000-a700-8710-770e-b4b3-5186-ab58.res6.spectrum.com) (Remote host closed the connection)
2023-07-08 02:51:56 +0200 <geekosaur> isn't there a variant mathematics that accurately characterizes IEEE754?
2023-07-08 02:56:46 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2023-07-08 03:01:44 +0200Midjak(~Midjak@82.66.147.146) (Quit: This computer has gone to sleep)
2023-07-08 03:06:36 +0200mei(~mei@user/mei) (Remote host closed the connection)
2023-07-08 03:07:24 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 246 seconds)
2023-07-08 03:10:34 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2023-07-08 03:11:58 +0200mei(~mei@user/mei)
2023-07-08 03:16:43 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2023-07-08 03:28:14 +0200 <EvanR> ViewPatterns, the wiki has tantalizing new syntax which denoise the use of Maybe views. Instead of view -> Just x, view => x. But it doesn't seem to exist yet?
2023-07-08 03:31:16 +0200m21it(~m21it@2800:ac:8012:135a:9aa8:aa:24dc:5f7a) (Remote host closed the connection)
2023-07-08 03:38:11 +0200 <dolio> a^(b^c) is handy for writing exponential towers, I guess. Maybe people figure that's the main reason to use repeated exponential.
2023-07-08 03:39:39 +0200 <dolio> Most languages don't have n-ary arithmetic operations, so you have to parse them into some binary tree.
2023-07-08 03:46:25 +0200 <monochrom> IEEE754 defines floating point plus to be exact plus then rounding. This still induces non-associativity in edge cases.
2023-07-08 03:47:23 +0200 <monochrom> As for probability, different users have different distributions of inputs.
2023-07-08 03:52:35 +0200 <monochrom> Let e be the machine epsilon. Then (e/2 + e/2) + 1 = e + 1, but e/2 + (e/2 + 1) = e/2 + 1 = 1
2023-07-08 04:07:14 +0200azr4e1(~azr4e1@2a00:23c7:9cbc:3401:45fb:9c68:12fe:262b) (Ping timeout: 260 seconds)
2023-07-08 04:10:42 +0200bontaq(~user@ool-45779b84.dyn.optonline.net)
2023-07-08 04:13:16 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 04:13:45 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2023-07-08 04:13:45 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2023-07-08 04:13:45 +0200finn_elijaFinnElija
2023-07-08 04:16:34 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-07-08 04:16:41 +0200td_(~td@i5387091B.versanet.de) (Ping timeout: 245 seconds)
2023-07-08 04:18:06 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 04:18:40 +0200td_(~td@i53870908.versanet.de)
2023-07-08 04:20:32 +0200ceoltb^(~cd@24.125.210.85)
2023-07-08 04:27:03 +0200cptaffe(~cptaffe@99-47-99-155.lightspeed.ltrkar.sbcglobal.net)
2023-07-08 04:36:54 +0200[Reinhilde](ellenor@2001:19f0:8001:279::2000:1) (Quit: Bye Open Projects!)
2023-07-08 04:41:55 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-07-08 04:42:28 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Read error: Connection reset by peer)
2023-07-08 04:42:39 +0200[Reinhilde](ellenor@callbox.trd.is)
2023-07-08 04:42:59 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-07-08 04:52:00 +0200falafel(~falafel@2603-7000-a700-8710-8626-7c28-fb33-398f.res6.spectrum.com)
2023-07-08 04:56:59 +0200 <Inst_> wait, question about Haddock
2023-07-08 04:57:11 +0200 <Inst_> does Haddock support putting haddock comments on the same line as the type declaration?
2023-07-08 04:57:40 +0200 <Axman6> type Foo = Bar -- ^ Something?
2023-07-08 04:57:48 +0200 <Inst_> erm, type annotation
2023-07-08 04:58:14 +0200 <Axman6> fo :: Int -> Bool -- ^ thing?
2023-07-08 04:58:17 +0200 <Inst_> myFun :: a -> b {- type annotations can literally be thought of as glorified comments that the type checker will honor -}
2023-07-08 04:58:35 +0200 <Inst_> myFun :: a -> b {-| type annotation can literally be thought of as glorified comments that the type checker will honor -}
2023-07-08 04:59:04 +0200 <Inst_> also helps with the old Haskell disease of "we really believe that types are sufficient documentatino!"
2023-07-08 04:59:16 +0200 <Inst_> now they literally are, because we stuffed the documentation into the type signature
2023-07-08 04:59:49 +0200 <Axman6> ... why bother answering if you won't read it?
2023-07-08 05:01:26 +0200 <Axman6> I think even this works: foo :: Int {- ^ an int -} -> Bar {- ^ some result -}, but I haven't tried
2023-07-08 05:02:39 +0200azr4e1(~azr4e1@host86-134-72-140.range86-134.btcentralplus.com)
2023-07-08 05:03:06 +0200 <Inst_> ummm, because -- doesn't generate haddock comments, right?
2023-07-08 05:03:33 +0200 <Inst_> oh, -- ^, bleh, should look up Haddock on my own
2023-07-08 05:04:56 +0200 <Inst_> ah, thanks Axman6, I understand what you mean, just never saw -- ^ before
2023-07-08 05:07:19 +0200 <Inst_> but do we support {-^?
2023-07-08 05:09:08 +0200 <probie> Inst_: why not `myFun :: typeAnnotationsCanLiterallyBeThoughtOfAs -> glorifiedCommentsThatTheTypeCheckerWillHonor` :p
2023-07-08 05:09:40 +0200 <Inst_> probie_ we don't make expressive use of type variables enough :)
2023-07-08 05:10:10 +0200 <Inst_> like, I wish we had standardized on Monad monad => monad a -> (a -> monad b) -> monad b
2023-07-08 05:11:59 +0200 <geekosaur> Inst_, `{- ^` should work, `{-^` will probably be a lexical error (likewise `--^` is an operator, not a comment with Haddock markup)
2023-07-08 05:13:31 +0200 <probie> That in particular I dislike, because it falls apart when you have two monads :p
2023-07-08 05:13:42 +0200 <Inst_> monadA monadB
2023-07-08 05:13:44 +0200 <Inst_> what's the problem?
2023-07-08 05:14:15 +0200 <geekosaur> or ghc-style, monad monad0 monad1 …
2023-07-08 05:14:18 +0200 <Inst_> and I'd love to see some kind of function m a -> n a -> o a
2023-07-08 05:15:26 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2023-07-08 05:18:37 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 05:18:54 +0200 <probie> Inst_: `weirdLiftM2 :: (Monad m, Monad n, Monad o, LiftsInto m o, LiftsInto n o) => (a -> b -> c) -> m a -> n b -> o c; weirdLiftM2 f x y = liftM2 f (lift x) (lift y)` with a class like `class LiftsInto m n where lift :: m a -> n a`
2023-07-08 05:19:34 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 260 seconds)
2023-07-08 05:20:22 +0200 <geekosaur> perhaps sadly, Haskell types are mathy types and like their single character variables
2023-07-08 05:20:50 +0200 <monochrom> > {-^ turns out to be not an error. but I don't know whether haddock honours it -} ()
2023-07-08 05:20:51 +0200 <lambdabot> ()
2023-07-08 05:21:03 +0200 <geekosaur> (because `mn` is `m × n`)
2023-07-08 05:30:12 +0200liftA2(~user@2605:a601:a60d:5400:cdf2:29ba:eca9:602a) (Ping timeout: 245 seconds)
2023-07-08 05:47:12 +0200dtman34(~dtman34@c-76-156-89-180.hsd1.mn.comcast.net) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
2023-07-08 05:47:33 +0200dtman34(~dtman34@2601:447:d000:93c9:b5e2:1160:553c:b6d1)
2023-07-08 05:52:55 +0200aforemny_(~aforemny@2001:9e8:6cf3:4100:4e3b:e088:1c2f:d9f3)
2023-07-08 05:52:56 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2023-07-08 05:53:39 +0200aforemny(~aforemny@i59F516EE.versanet.de) (Ping timeout: 246 seconds)
2023-07-08 05:56:56 +0200falafel(~falafel@2603-7000-a700-8710-8626-7c28-fb33-398f.res6.spectrum.com) (Ping timeout: 246 seconds)
2023-07-08 06:00:54 +0200paddymahoney(~paddymaho@cpe883d24bcf597-cmbc4dfb741f80.cpe.net.cable.rogers.com)
2023-07-08 06:08:21 +0200azr4e1(~azr4e1@host86-134-72-140.range86-134.btcentralplus.com) (Ping timeout: 245 seconds)
2023-07-08 06:11:49 +0200 <hololeap> % :t \f mx -> maybe empty f
2023-07-08 06:11:50 +0200 <yahb2> \f mx -> maybe empty f ; :: Alternative f => (a1 -> f a2) -> p -> Maybe a1 -> f a2
2023-07-08 06:12:08 +0200 <hololeap> % :t \f -> maybe empty f
2023-07-08 06:12:08 +0200 <yahb2> \f -> maybe empty f ; :: Alternative f => (a1 -> f a2) -> Maybe a1 -> f a2
2023-07-08 06:12:17 +0200 <hololeap> is there a name for this?
2023-07-08 06:13:31 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-07-08 06:14:52 +0200 <hololeap> looks like there's something in relude, but not in any common libs
2023-07-08 06:17:06 +0200bontaq(~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 246 seconds)
2023-07-08 06:23:10 +0200EvanR_(~EvanR@user/evanr)
2023-07-08 06:23:48 +0200EvanR(~EvanR@user/evanr) (Read error: Connection reset by peer)
2023-07-08 06:26:33 +0200EvanR_EvanR
2023-07-08 06:27:33 +0200 <EvanR> monochrom, i knew someone would dependency inject the distribution of doubles into the question
2023-07-08 06:27:45 +0200 <EvanR> let it be so injected
2023-07-08 06:30:10 +0200 <EvanR> as demonstrated by weirdLiftM2 if we used descriptive variable names our type signatures might be even worse than scala
2023-07-08 06:34:16 +0200 <monochrom> Monad theMonadWhoMustNotBeName => theBoyWhoLived -> theMonadWhoMustNotBeName theBoyWhoLived
2023-07-08 06:34:31 +0200 <monochrom> err, s/Name/Named/ !
2023-07-08 06:35:21 +0200 <monochrom> Conclusion: If we used descriptive names, we would have "variable not in scope" errors left right and centre.
2023-07-08 06:36:52 +0200johnw_(~johnw@69.62.242.138) (Ping timeout: 245 seconds)
2023-07-08 06:37:12 +0200 <monochrom> variable `theBoyWhoLivedAndDefeatedTheDarkLord' not found. Do you mean: `theBoyWhoLivedAndDefaetedTheDarkLord'
2023-07-08 06:39:10 +0200johnw(~johnw@216.93.230.148)
2023-07-08 06:39:31 +0200trev(~trev@user/trev)
2023-07-08 06:39:47 +0200 <monochrom> True story: When creating an assignment, I defined a C struct to have 48 bytes: A name field of 44 bytes, an unsigned field of 4 bytes.
2023-07-08 06:40:26 +0200 <monochrom> So I was looking for a long name that's kind of meaningful and takes up 44 bytes.
2023-07-08 06:41:38 +0200 <monochrom> I started with "The Boy Who Lived" and looked for adding more words, hmm let me just try adding " And Defeated the Dark Lord" and see how far it goes.
2023-07-08 06:41:51 +0200 <monochrom> > "The Boy Who Lived And Defeated The Dark Lord"
2023-07-08 06:41:52 +0200 <lambdabot> "The Boy Who Lived And Defeated The Dark Lord"
2023-07-08 06:41:57 +0200 <monochrom> > length "The Boy Who Lived And Defeated The Dark Lord"
2023-07-08 06:41:58 +0200 <lambdabot> 44
2023-07-08 06:42:13 +0200 <monochrom> It worked right away. :)
2023-07-08 06:44:11 +0200 <EvanR> that reminds me of when my old boss, who still had a mainframe and SCO unix in the basement, asked how long the name field could be in the database
2023-07-08 06:44:16 +0200 <EvanR> in characters
2023-07-08 06:45:27 +0200 <EvanR> (type was string, not char(44))
2023-07-08 06:46:06 +0200 <EvanR> your name is exactly as long as the space allocated for it? bold
2023-07-08 06:46:26 +0200 <monochrom> Hrm would that be a SQL database?
2023-07-08 06:47:09 +0200 <monochrom> Also I don't think I know about string in SQL, as opposed to char(44).
2023-07-08 06:49:27 +0200 <EvanR> 'text' in postgres, actually
2023-07-08 06:49:57 +0200 <monochrom> Ah.
2023-07-08 06:50:08 +0200 <EvanR> they forsaw the coming cultural shift in jargon that haskell would bring forth
2023-07-08 06:50:47 +0200 <monochrom> Naw I think it's shell scripting, tcl, and python.
2023-07-08 06:51:46 +0200 <EvanR> python is using legacy jargon: string
2023-07-08 06:52:04 +0200 <monochrom> Oh oops, right, text, not string.
2023-07-08 06:56:53 +0200 <EvanR> martin erwig inductive graph algorithms algorithms paper posits this data type data Graph a b = Empty | Context a b :& Graph a b. Preempting anyone who would say this is just a dang list, says not so fast. Graphs are not freely generated by Empty and :&
2023-07-08 06:58:27 +0200shriekingnoise_(~shrieking@186.137.175.87)
2023-07-08 06:58:43 +0200 <EvanR> mildly perplexing argument
2023-07-08 06:58:45 +0200shriekingnoise(~shrieking@186.137.175.87) (Ping timeout: 246 seconds)
2023-07-08 07:12:22 +0200 <monochrom> I am more fond of https://hackage.haskell.org/package/algebraic-graphs . The paper is at https://dl.acm.org/doi/10.1145/3122955.3122956 (don't worry, not walled)
2023-07-08 07:14:09 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds)
2023-07-08 07:15:54 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-07-08 07:16:48 +0200 <EvanR> oh hell yeah, free papers
2023-07-08 07:19:23 +0200johnw(~johnw@216.93.230.148) (Quit: ZNC - http://znc.in)
2023-07-08 07:20:14 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds)
2023-07-08 07:23:23 +0200hdggxin(~hdggxin@122.175.41.19) (Ping timeout: 264 seconds)
2023-07-08 07:28:58 +0200passiva(~passiva@bcdcac82.skybroadband.com)
2023-07-08 07:29:52 +0200 <mauke> free-range papers
2023-07-08 07:37:04 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2023-07-08 07:39:52 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-07-08 07:43:52 +0200bilegeek(~bilegeek@2600:1008:b068:20a1:d82d:ec1b:27cf:aa75) (Quit: Leaving)
2023-07-08 07:57:39 +0200 <EvanR> figure 9 of algebraic graphs paper was worth the 11 pages of algebra and borderline category theory
2023-07-08 08:02:37 +0200hdggxin(~hdggxin@122.175.41.19)
2023-07-08 08:12:51 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2023-07-08 08:19:44 +0200acidjnk(~acidjnk@p200300d6e7072f92ad7ea4d90152ea04.dip0.t-ipconnect.de)
2023-07-08 08:20:06 +0200johnw(~johnw@216.93.230.148)
2023-07-08 08:23:17 +0200 <monochrom> :)
2023-07-08 08:27:41 +0200 <tomsmeding> monochrom: is paywalled here, though I can access it anyway through uni :p
2023-07-08 08:27:54 +0200 <tomsmeding> is the paywall region-dependent? Surely not?
2023-07-08 08:46:38 +0200myme(~myme@2a01:799:d60:e400:ad99:fa1a:576b:14a8) (Ping timeout: 258 seconds)
2023-07-08 08:47:39 +0200myme(~myme@2a01:799:d60:e400:a779:7b8:869:aeae)
2023-07-08 08:57:49 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 08:58:11 +0200son0p(~ff@181.136.122.143) (Ping timeout: 264 seconds)
2023-07-08 08:58:23 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 09:00:08 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 240 seconds)
2023-07-08 09:00:19 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2023-07-08 09:01:31 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 09:07:12 +0200ryantrinkle(~ryantrink@89.247.249.243) (Ping timeout: 246 seconds)
2023-07-08 09:08:23 +0200aforemny_(~aforemny@2001:9e8:6cf3:4100:4e3b:e088:1c2f:d9f3) (Ping timeout: 264 seconds)
2023-07-08 09:08:55 +0200aforemny(~aforemny@i59F516C0.versanet.de)
2023-07-08 09:12:38 +0200aforemny_(~aforemny@i59F516E0.versanet.de)
2023-07-08 09:13:30 +0200aforemny(~aforemny@i59F516C0.versanet.de) (Ping timeout: 246 seconds)
2023-07-08 09:13:45 +0200 <hololeap> https://hackage.haskell.org/package/attoparsec-0.14.4/docs/Data-Attoparsec-ByteString-Char8.html
2023-07-08 09:13:57 +0200 <hololeap> isEndOfLine :: Word8 -> Bool
2023-07-08 09:14:11 +0200 <hololeap> how am I supposed to use this? there's nothing that takes a (Word8 -> Bool)
2023-07-08 09:15:37 +0200mrmr(~mrmr@user/mrmr) (Ping timeout: 245 seconds)
2023-07-08 09:19:58 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 09:19:58 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 09:19:59 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 09:29:22 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-07-08 09:29:48 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2023-07-08 09:31:10 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2023-07-08 09:32:06 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2023-07-08 09:35:40 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving)
2023-07-08 09:36:16 +0200 <tomsmeding> hololeap: with `char8` supposedly :p
2023-07-08 09:37:03 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 09:39:50 +0200 <hololeap> char8 :: Char -> Parser Word8
2023-07-08 09:39:54 +0200 <hololeap> I don't follow
2023-07-08 09:41:30 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 09:42:28 +0200hisa38775(~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net)
2023-07-08 09:44:30 +0200hisa3877(~hisa38@104-181-102-238.lightspeed.wepbfl.sbcglobal.net) (Ping timeout: 252 seconds)
2023-07-08 09:44:30 +0200hisa38775hisa3877
2023-07-08 09:44:37 +0200 <mauke> hololeap: makes more sense with https://hackage.haskell.org/package/attoparsec-0.14.4/docs/Data-Attoparsec-ByteString.html#v:satisfy
2023-07-08 09:46:42 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
2023-07-08 09:46:56 +0200 <hololeap> mauke: the problem there is that Parser from that module doesn't line up with Parser in the Char8 module
2023-07-08 09:47:18 +0200 <hololeap> or at least the compiler yelled at me when I tried that
2023-07-08 09:47:41 +0200 <mauke> what does "line up" mean?
2023-07-08 09:48:01 +0200 <mauke> also, what are you trying to do?
2023-07-08 09:48:42 +0200 <hololeap> hm, never mind. it must have been a fluke since they both use the same ByteString
2023-07-08 09:48:54 +0200 <hololeap> I'm trying to match a non-empty line
2023-07-08 09:50:11 +0200 <hololeap> I ended up making: notEOL c = not $ c == '\r' || c == '\n'
2023-07-08 09:50:44 +0200 <hololeap> but I'll try satisfy from the other module again
2023-07-08 09:51:18 +0200 <hololeap> ok, it worked :p
2023-07-08 09:51:28 +0200 <mauke> many1 (satisfy (notInClass "\n\r")) ?
2023-07-08 09:52:09 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 09:52:26 +0200fweht(uid404746@id-404746.lymington.irccloud.com)
2023-07-08 09:53:47 +0200 <hololeap> this uses more efficient combinators and seems to work: http://sprunge.us/6P7m0L
2023-07-08 09:54:19 +0200 <hololeap> eh, I'll keep working on it
2023-07-08 09:54:58 +0200 <tomsmeding> hololeap: guard exists
2023-07-08 09:55:16 +0200 <tomsmeding> Control.Monad.Guard (not . isEndOfLine) char8
2023-07-08 09:55:22 +0200 <tomsmeding> er, Control.Monad.guard
2023-07-08 09:55:30 +0200 <tomsmeding> surely that's the idea
2023-07-08 09:57:44 +0200 <hololeap> back in good old snoyberg land
2023-07-08 10:00:26 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds)
2023-07-08 10:01:29 +0200dibblego(~dibblego@116.255.1.157)
2023-07-08 10:01:30 +0200dibblego(~dibblego@116.255.1.157) (Changing host)
2023-07-08 10:01:30 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 10:03:36 +0200gurkenglas(~gurkengla@dynamic-046-114-179-053.46.114.pool.telefonica.de)
2023-07-08 10:06:47 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 10:09:39 +0200sagax(~sagax_nb@user/sagax) (Read error: Connection reset by peer)
2023-07-08 10:15:12 +0200foul_owl(~kerry@185.219.141.164) (Ping timeout: 245 seconds)
2023-07-08 10:19:59 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec) (Remote host closed the connection)
2023-07-08 10:29:41 +0200Guest8835(~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr)
2023-07-08 10:30:36 +0200foul_owl(~kerry@185.219.141.164)
2023-07-08 10:32:10 +0200czy(~user@host-140-26.ilcub310.champaign.il.us.clients.pavlovmedia.net) (Read error: Connection reset by peer)
2023-07-08 10:35:56 +0200stilgart(~Christoph@chezlefab.net) (Quit: leaving)
2023-07-08 10:36:05 +0200stilgart(~Christoph@chezlefab.net)
2023-07-08 10:36:24 +0200ryantrinkle(~ryantrink@fire.tngtech.com)
2023-07-08 10:37:31 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds)
2023-07-08 10:37:37 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2023-07-08 10:40:49 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 10:40:49 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 10:40:49 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 10:43:57 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2023-07-08 10:46:46 +0200econo_(uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity)
2023-07-08 10:48:43 +0200Pickchea(~private@user/pickchea)
2023-07-08 10:49:50 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 250 seconds)
2023-07-08 10:56:59 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 10:56:59 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 10:56:59 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 11:01:07 +0200jmcantrell(~jmcantrel@user/jmcantrell) (Remote host closed the connection)
2023-07-08 11:03:32 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds)
2023-07-08 11:04:02 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 11:06:29 +0200son0p(~ff@181.136.122.143)
2023-07-08 11:13:42 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 11:13:42 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 11:13:42 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 11:16:56 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-07-08 11:20:17 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-07-08 11:20:20 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds)
2023-07-08 11:20:27 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec)
2023-07-08 11:21:15 +0200fendor(~fendor@2a02:8388:1640:be00:821b:25b5:c8f3:73a0)
2023-07-08 11:21:29 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 240 seconds)
2023-07-08 11:22:07 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 11:22:08 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 11:22:08 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 11:24:11 +0200jmdaemon(~jmdaemon@user/jmdaemon) (Ping timeout: 245 seconds)
2023-07-08 11:24:53 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec) (Ping timeout: 246 seconds)
2023-07-08 11:26:49 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds)
2023-07-08 11:28:56 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2023-07-08 11:31:29 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 240 seconds)
2023-07-08 11:33:03 +0200Tuplanolla(~Tuplanoll@91-159-68-236.elisa-laajakaista.fi)
2023-07-08 11:35:17 +0200mathr(~claude@cpc99374-croy26-2-0-cust100.19-2.cable.virginm.net)
2023-07-08 11:43:18 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-07-08 11:43:42 +0200dibblego(~dibblego@116.255.1.157)
2023-07-08 11:43:42 +0200dibblego(~dibblego@116.255.1.157) (Changing host)
2023-07-08 11:43:42 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 11:43:50 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2023-07-08 11:50:29 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 11:53:56 +0200nyc(~nyc@user/nyc) (Ping timeout: 246 seconds)
2023-07-08 11:57:18 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds)
2023-07-08 12:02:23 +0200nyc(~nyc@2603-7000-a106-2fb5-0000-0000-0000-1f21.res6.spectrum.com)
2023-07-08 12:03:33 +0200titibandit(~titibandi@user/titibandit)
2023-07-08 12:04:09 +0200tackleton(~tackleton@services.tilde.club)
2023-07-08 12:05:51 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 12:05:51 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 12:05:51 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 12:12:21 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 246 seconds)
2023-07-08 12:17:26 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 12:17:26 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 12:17:26 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 12:23:10 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.1)
2023-07-08 12:27:40 +0200sagax(~sagax_nb@user/sagax)
2023-07-08 12:28:44 +0200emmanuelux(~emmanuelu@user/emmanuelux)
2023-07-08 12:39:09 +0200alternateved(~user@77-254-166-50.dynamic.inetia.pl)
2023-07-08 12:45:09 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 240 seconds)
2023-07-08 12:46:10 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 12:46:16 +0200gurkenglas(~gurkengla@dynamic-046-114-179-053.46.114.pool.telefonica.de) (Ping timeout: 245 seconds)
2023-07-08 12:52:14 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au)
2023-07-08 12:52:15 +0200dibblego(~dibblego@116-255-1-157.ip4.superloop.au) (Changing host)
2023-07-08 12:52:15 +0200dibblego(~dibblego@haskell/developer/dibblego)
2023-07-08 12:53:59 +0200Inst_Inst
2023-07-08 13:18:27 +0200mechap(~mechap@user/mechap)
2023-07-08 13:19:07 +0200alternateved(~user@77-254-166-50.dynamic.inetia.pl) (Remote host closed the connection)
2023-07-08 13:19:41 +0200mathr(~claude@cpc99374-croy26-2-0-cust100.19-2.cable.virginm.net) (Quit: ->)
2023-07-08 13:20:36 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 13:25:10 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member) (Quit: Ping timeout (120 seconds))
2023-07-08 13:25:34 +0200Sciencentistguy(~sciencent@hacksoc/ordinary-member)
2023-07-08 13:36:05 +0200 <Inst> also, not that this is particularly interesting, but at least on VSC + HLS, Haddock isn't respecting -- ^, -- |, or {- foo on the same line as the type annotation.
2023-07-08 13:39:08 +0200acidjnk(~acidjnk@p200300d6e7072f92ad7ea4d90152ea04.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2023-07-08 13:40:00 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-07-08 13:42:41 +0200titibandit(~titibandi@user/titibandit) (Read error: Connection reset by peer)
2023-07-08 13:42:56 +0200Guest8835(~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 245 seconds)
2023-07-08 13:43:59 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-07-08 13:48:02 +0200titibandit(~titibandi@user/titibandit)
2023-07-08 13:51:11 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2023-07-08 13:55:21 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470)
2023-07-08 13:55:44 +0200azr4e1(~azr4e1@host86-134-72-140.range86-134.btcentralplus.com)
2023-07-08 14:05:55 +0200 <ski> `a ^ b ^ c' is `a ^ (b ^ c)' because you can already express `(a ^ b) ^ c' as `a ^ (b * c)'
2023-07-08 14:06:17 +0200 <ski> `a / b / c' (and mutatis mutandis for `a - b - c') is `(a / b) / c', because you usually want the `a / (b * c)' interpretation, who would want to say `a / (b / c)' (being `(a * c) / b') ?
2023-07-08 14:06:20 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 14:08:17 +0200 <ski> (btw, one reason to have `+' and `*' left-associative, assuming `-' and `*' is, is to allow mixing, like `a - b + c - d' and `a / b * c / d')
2023-07-08 14:27:32 +0200Zambyte(~user@c-73-114-31-74.hsd1.ma.comcast.net) (Remote host closed the connection)
2023-07-08 14:36:18 +0200azr4e1(~azr4e1@host86-134-72-140.range86-134.btcentralplus.com) (Ping timeout: 260 seconds)
2023-07-08 14:37:38 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 14:41:26 +0200Guest8835(~finn@176-151-21-224.abo.bbox.fr)
2023-07-08 14:44:05 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2023-07-08 14:48:02 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl)
2023-07-08 15:00:01 +0200pyooque(~puke@user/puke)
2023-07-08 15:00:01 +0200pukeGuest5318
2023-07-08 15:00:01 +0200Guest5318(~puke@user/puke) (Killed (copper.libera.chat (Nickname regained by services)))
2023-07-08 15:00:01 +0200pyooquepuke
2023-07-08 15:00:42 +0200puke(~puke@user/puke) (Remote host closed the connection)
2023-07-08 15:01:07 +0200puke(~puke@user/puke)
2023-07-08 15:02:17 +0200puke(~puke@user/puke) (Max SendQ exceeded)
2023-07-08 15:03:37 +0200puke(~puke@user/puke)
2023-07-08 15:10:59 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 15:18:28 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-07-08 15:23:16 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 250 seconds)
2023-07-08 15:30:40 +0200azr4e1(~azr4e1@host86-134-72-140.range86-134.btcentralplus.com)
2023-07-08 15:33:39 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-07-08 15:40:02 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-07-08 15:41:10 +0200L29Ah(~L29Ah@wikipedia/L29Ah)
2023-07-08 15:43:52 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c)
2023-07-08 15:49:18 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 15:56:44 +0200bontaq(~user@ool-45779b84.dyn.optonline.net)
2023-07-08 15:58:38 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:06:30 +0200aforemny_(~aforemny@i59F516E0.versanet.de) (Ping timeout: 246 seconds)
2023-07-08 16:06:32 +0200aforemny(~aforemny@2001:9e8:6cf9:2c00:376c:4324:3d32:3d30)
2023-07-08 16:07:59 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net)
2023-07-08 16:08:07 +0200esph(~weechat@user/esph) (Ping timeout: 245 seconds)
2023-07-08 16:09:57 +0200aforemny_(~aforemny@2001:9e8:6cf9:3500:715e:1f57:b282:6674)
2023-07-08 16:10:59 +0200aforemny(~aforemny@2001:9e8:6cf9:2c00:376c:4324:3d32:3d30) (Ping timeout: 246 seconds)
2023-07-08 16:13:58 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Quit: Leaving...)
2023-07-08 16:14:06 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2023-07-08 16:14:16 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:14:16 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 16:14:46 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:14:46 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 16:15:22 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:15:32 +0200aforemny_(~aforemny@2001:9e8:6cf9:3500:715e:1f57:b282:6674) (Ping timeout: 246 seconds)
2023-07-08 16:16:04 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 16:16:21 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:16:29 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 16:16:45 +0200dmgk(~dmgk@user/dmgk)
2023-07-08 16:16:51 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:16:55 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 16:17:30 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:18:06 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 16:18:32 +0200aforemny(~aforemny@2001:9e8:6cf9:4f00:3e66:d6cc:bb2d:f731)
2023-07-08 16:22:53 +0200aforemny(~aforemny@2001:9e8:6cf9:4f00:3e66:d6cc:bb2d:f731) (Ping timeout: 246 seconds)
2023-07-08 16:24:53 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec)
2023-07-08 16:26:05 +0200ripspin(~chatzilla@1.145.170.235)
2023-07-08 16:26:35 +0200aforemny(~aforemny@i59F516EA.versanet.de)
2023-07-08 16:28:45 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 16:29:02 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:b9c2:276d:fb2c:5cec) (Ping timeout: 246 seconds)
2023-07-08 16:33:09 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 240 seconds)
2023-07-08 16:37:00 +0200euandreh(~Thunderbi@189.6.18.7) (Ping timeout: 252 seconds)
2023-07-08 16:39:41 +0200 <hololeap> anyone know of combinators for conduit that work similarly to Bifunctor? for instance, splitting the x and y of `ConduitT (x,y) o m a` to their own conduits and then recombining them at the end?
2023-07-08 16:40:20 +0200fendor(~fendor@2a02:8388:1640:be00:821b:25b5:c8f3:73a0) (Remote host closed the connection)
2023-07-08 16:40:55 +0200euandreh(~Thunderbi@189.6.18.7)
2023-07-08 16:41:07 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 16:43:40 +0200igghibu(~igghibu@37.120.201.118)
2023-07-08 16:44:07 +0200igghibu(~igghibu@37.120.201.118) (Client Quit)
2023-07-08 16:45:06 +0200tzh(~tzh@c-24-21-73-154.hsd1.wa.comcast.net)
2023-07-08 16:48:36 +0200 <hololeap> this is actually looking more like Arrow than Bifunctor
2023-07-08 16:49:21 +0200 <c_wraith> that looks like the sort of thing that could use unbounded memory
2023-07-08 16:49:29 +0200 <c_wraith> Which is probably why they don't have it.
2023-07-08 16:51:38 +0200 <hololeap> ok, I'll make do
2023-07-08 16:53:14 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Quit: Leaving...)
2023-07-08 16:54:02 +0200gnalzo(~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.1)
2023-07-08 16:54:53 +0200 <hololeap> I wonder if streamly has an interface for this
2023-07-08 16:55:04 +0200 <hololeap> I've never used it
2023-07-08 17:06:43 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Quit: Leaving)
2023-07-08 17:08:49 +0200Fischmiep(~Fischmiep@user/Fischmiep) (Read error: Connection reset by peer)
2023-07-08 17:12:37 +0200segfaultfizzbuzz(~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Quit: segfaultfizzbuzz)
2023-07-08 17:15:42 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-07-08 17:16:33 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-07-08 17:17:03 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 17:17:23 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
2023-07-08 17:17:53 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 17:18:19 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
2023-07-08 17:18:47 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 17:23:10 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Client Quit)
2023-07-08 17:25:02 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-07-08 17:28:08 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection)
2023-07-08 17:34:16 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542)
2023-07-08 17:34:50 +0200econo_(uid147250@id-147250.tinside.irccloud.com)
2023-07-08 17:38:02 +0200ryantrinkle(~ryantrink@fire.tngtech.com) (Ping timeout: 250 seconds)
2023-07-08 17:38:11 +0200buckwheatsuperpo(~buckwheat@209.122.211.192)
2023-07-08 17:45:18 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2023-07-08 17:48:30 +0200gry(quasselcor@botters/gry) (Ping timeout: 240 seconds)
2023-07-08 17:48:40 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
2023-07-08 17:50:23 +0200wootehfoot(~wootehfoo@user/wootehfoot)
2023-07-08 17:51:52 +0200_xor(~xor@ip-50-5-233-250.dynamic.fuse.net)
2023-07-08 17:52:16 +0200__monty__(~toonn@user/toonn)
2023-07-08 17:52:17 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-07-08 17:56:47 +0200wroathe(~wroathe@50.205.197.50)
2023-07-08 17:56:47 +0200wroathe(~wroathe@50.205.197.50) (Changing host)
2023-07-08 17:56:47 +0200wroathe(~wroathe@user/wroathe)
2023-07-08 18:00:10 +0200harveypwca(~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67)
2023-07-08 18:01:25 +0200gurkenglas(~gurkengla@dynamic-046-114-179-053.46.114.pool.telefonica.de)
2023-07-08 18:01:42 +0200Midjak(~Midjak@82.66.147.146)
2023-07-08 18:05:30 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 246 seconds)
2023-07-08 18:06:10 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-07-08 18:11:48 +0200machinedgod(~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 246 seconds)
2023-07-08 18:14:05 +0200acidjnk(~acidjnk@p200300d6e7072f9278793b6e90b80047.dip0.t-ipconnect.de)
2023-07-08 18:19:48 +0200stiell_(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2023-07-08 18:20:40 +0200stiell_(~stiell@gateway/tor-sasl/stiell)
2023-07-08 18:20:53 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 18:30:06 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 18:33:08 +0200 <EvanR> newtype GraphMonad a = M { bind :: forall g . Graph g => (a -> g) -> g }
2023-07-08 18:33:54 +0200 <EvanR> this algebraic graphs paper is packed with interesting constructions, which don't take up much code
2023-07-08 18:35:14 +0200elkcl(~elkcl@broadband-178-140-133-76.ip.moscow.rt.ru) (Ping timeout: 250 seconds)
2023-07-08 18:46:14 +0200Deide(~deide@user/deide) (Remote host closed the connection)
2023-07-08 18:46:41 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2023-07-08 18:49:55 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl)
2023-07-08 18:52:34 +0200titibandit(~titibandi@user/titibandit)
2023-07-08 18:52:45 +0200ripspin(~chatzilla@1.145.170.235) (Remote host closed the connection)
2023-07-08 18:53:21 +0200 <ncf> is there a quick way to see all the versions of the core libraries for a given GHC version?
2023-07-08 18:54:15 +0200 <ncf> i guess it's in the documentation
2023-07-08 18:54:44 +0200dolio(~dolio@130.44.134.54) (Quit: ZNC 1.8.2 - https://znc.in)
2023-07-08 18:55:47 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2023-07-08 18:56:15 +0200dolio(~dolio@130.44.134.54)
2023-07-08 18:56:48 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2023-07-08 18:59:33 +0200dolio(~dolio@130.44.134.54) (Client Quit)
2023-07-08 19:01:10 +0200dolio(~dolio@130.44.134.54)
2023-07-08 19:01:13 +0200buckwheatsuperpo(~buckwheat@209.122.211.192) (Quit: Leaving...)
2023-07-08 19:03:33 +0200ystael(~ystael@user/ystael)
2023-07-08 19:04:48 +0200gtf(~gideon@2a02:8012:2259:0:299:560e:70f9:4290) (Quit: Konversation terminated!)
2023-07-08 19:05:43 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:05:51 +0200Deide(d0130db69a@user/deide)
2023-07-08 19:06:55 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-07-08 19:08:59 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 246 seconds)
2023-07-08 19:09:14 +0200 <monochrom> EvanR: Glad you like it. :)
2023-07-08 19:09:17 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e574:ea25:1127:161e)
2023-07-08 19:10:32 +0200 <monochrom> That is also a very interesting type. (I have only skimmed the paper, didn't notice that one.)
2023-07-08 19:10:50 +0200victorivanov(~buckwheat@209.122.211.192)
2023-07-08 19:11:08 +0200victorivanov(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 19:12:02 +0200 <monochrom> Normally if someone wrote "T a = forall g. (a -> g) -> g" it would be the same as "T a = a" and it would be the identity monad. But this time, the constraint "Graph g" is standing in the way. That's going to be different.
2023-07-08 19:13:08 +0200 <monochrom> Ahhh just unpack the dictionary of Graph. forall g. (Graph methods for g) -> (a -> g) -> g
2023-07-08 19:13:25 +0200 <dolio> Yeah, it's essentially the free Graph monad.
2023-07-08 19:14:04 +0200 <monochrom> Nice.
2023-07-08 19:15:18 +0200Ekho(~Ekho@user/ekho) (Ping timeout: 258 seconds)
2023-07-08 19:16:11 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 19:16:34 +0200 <dolio> By quantifying over g with the constraint Graph g, you are quantifying over 'graph algebras'. The occurrences of g can be understood as being Ug implicitly, for the 'underlying set' of the algebra.
2023-07-08 19:17:55 +0200 <dolio> Then that is the formula for Ran_U U, which is equivalent to the monad of the F ⊣ U adjunction, I think.
2023-07-08 19:17:56 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-07-08 19:18:28 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:18:36 +0200 <dolio> Which is the free algebra monad.
2023-07-08 19:18:52 +0200buckwheat(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 19:19:21 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 19:20:45 +0200euandreh(~Thunderbi@189.6.18.7) (Ping timeout: 246 seconds)
2023-07-08 19:22:31 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Ping timeout: 245 seconds)
2023-07-08 19:22:32 +0200wroathe(~wroathe@50.205.197.50)
2023-07-08 19:22:32 +0200wroathe(~wroathe@50.205.197.50) (Changing host)
2023-07-08 19:22:32 +0200wroathe(~wroathe@user/wroathe)
2023-07-08 19:22:32 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Client Quit)
2023-07-08 19:23:01 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:23:04 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
2023-07-08 19:23:25 +0200 <monochrom> Ah similar to "forall r. (F r -> r) -> (a -> r) -> r" meaning "data M a = Wrap (F (M a)) | Pure a" the free monad for functor F.
2023-07-08 19:23:34 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:23:58 +0200 <ncf> why does it say the paper is freely available? i get a "get access" link asking me to log in
2023-07-08 19:24:30 +0200 <EvanR> I found preprints on github, linked from the hackage package
2023-07-08 19:24:35 +0200buckwheat(~buckwheat@209.122.211.192) (Quit: WeeChat 3.8)
2023-07-08 19:24:47 +0200 <monochrom> Please ignore the "Get Access" button.
2023-07-08 19:25:04 +0200 <monochrom> Somewhere on the right edge there should be a "PDF" button. Please use that.
2023-07-08 19:25:49 +0200 <ncf> i do not see such a thing
2023-07-08 19:26:00 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Client Quit)
2023-07-08 19:26:03 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf)
2023-07-08 19:26:28 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:26:33 +0200 <ncf> https://f.monade.li/e7Si2J.png
2023-07-08 19:27:01 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 19:27:42 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Client Quit)
2023-07-08 19:27:47 +0200 <monochrom> OK, would this work? https://dl.acm.org/doi/pdf/10.1145/3156695.3122956?casa_token=yVZZocg3JV0AAAAA:r3iLQ7dSL5S0pxwXAy6…
2023-07-08 19:28:13 +0200 <EvanR> use DCC to transfer the file directly to ncf xD
2023-07-08 19:28:21 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:28:30 +0200 <ncf> nope i get a slightly different page with just as many pdf links
2023-07-08 19:28:39 +0200 <ncf> EvanR: i mean i'm reading the preprint, it's fine
2023-07-08 19:28:44 +0200 <monochrom> Ahhhhh I see. Use this: https://dl.acm.org/authorize?N46678
2023-07-08 19:29:02 +0200 <ncf> nope that's the link i clicked to begin with
2023-07-08 19:29:24 +0200 <int-e> https://github.com/snowleopard/alga-paper has a preprint
2023-07-08 19:29:26 +0200 <monochrom> Well OK then I don't know. The author certainly thought that it would do.
2023-07-08 19:31:33 +0200 <monochrom> Maybe it is regional... I'm in Canada.
2023-07-08 19:33:16 +0200 <int-e> No luck from here either, FWIW...
2023-07-08 19:33:25 +0200 <int-e> (EU)
2023-07-08 19:34:41 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-07-08 19:35:16 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:37:13 +0200 <mauke> can confirm, no pdf link
2023-07-08 19:37:22 +0200 <mauke> they want me to pay $15, but their shop doesn't work
2023-07-08 19:38:04 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2023-07-08 19:38:48 +0200 <EvanR> locked out
2023-07-08 19:40:38 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-07-08 19:41:15 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 19:47:27 +0200buckwheat(~buckwheat@209.122.211.192) (Quit: WeeChat 3.8)
2023-07-08 19:50:20 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 19:50:38 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds)
2023-07-08 19:51:26 +0200buckwheat(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 19:51:54 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 19:53:54 +0200buckwheat(~buckwheat@209.122.211.192) (Client Quit)
2023-07-08 19:55:37 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 20:00:05 +0200Guest8835(~finn@176-151-21-224.abo.bbox.fr) (Ping timeout: 246 seconds)
2023-07-08 20:12:27 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 20:12:37 +0200buckwheat(~buckwheat@209.122.211.192) (Quit: WeeChat 3.8)
2023-07-08 20:13:37 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 20:15:16 +0200elkcl(~elkcl@37.204.145.186)
2023-07-08 20:19:10 +0200 <somerandomnick[m> DOI?
2023-07-08 20:19:14 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 250 seconds)
2023-07-08 20:20:17 +0200 <monochrom> DOI.
2023-07-08 20:21:43 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2023-07-08 20:21:52 +0200bratwurst(~dfadsva@2604:3d09:207f:f650::5b03)
2023-07-08 20:22:51 +0200 <bratwurst> im finally beginning to understand dependent types
2023-07-08 20:23:12 +0200 <bratwurst> i finally read an article that showed dep-types can be done very simply
2023-07-08 20:23:33 +0200titibandit(~titibandi@user/titibandit) (Remote host closed the connection)
2023-07-08 20:23:48 +0200 <bratwurst> so i started to think about how all the stuff i have done could be done with just that and now it's starting to click
2023-07-08 20:25:27 +0200Guest92(~Guest92@87.116.177.139)
2023-07-08 20:28:01 +0200 <bratwurst> so of course im going to implement a dep-typed language that generates correct elisp
2023-07-08 20:28:25 +0200 <bratwurst> and i'm going to implement ide stuff for haskell in that language
2023-07-08 20:28:56 +0200 <bratwurst> yes more big talk from the sausage. just wanted to talk about it with someone
2023-07-08 20:29:39 +0200pukeGuest5082
2023-07-08 20:29:39 +0200pyooque(~puke@user/puke)
2023-07-08 20:29:39 +0200Guest5082(~puke@user/puke) (Killed (tantalum.libera.chat (Nickname regained by services)))
2023-07-08 20:29:39 +0200pyooquepuke
2023-07-08 20:30:13 +0200bratwurst(~dfadsva@2604:3d09:207f:f650::5b03) (Quit: Leaving)
2023-07-08 20:31:10 +0200buckwheat(~buckwheat@209.122.211.192) (Quit: WeeChat 3.8)
2023-07-08 20:31:42 +0200buckwheat(~buckwheat@209.122.211.192)
2023-07-08 20:32:31 +0200ddellacosta(~ddellacos@146.70.168.100) (Ping timeout: 245 seconds)
2023-07-08 20:32:33 +0200Guest92(~Guest92@87.116.177.139) (Quit: Client closed)
2023-07-08 20:34:57 +0200 <EvanR> dependent types, the world is not ready for such problems
2023-07-08 20:40:14 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-07-08 20:45:33 +0200 <int-e> psst, try @quote dependable ;-)
2023-07-08 20:45:48 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2023-07-08 20:46:27 +0200 <monochrom> @quote dependable
2023-07-08 20:46:27 +0200 <lambdabot> int-e says: I want dependable types.
2023-07-08 20:46:31 +0200 <monochrom> :)
2023-07-08 20:47:14 +0200 <EvanR> the meta level of my trying that in secret first but int-e sees everything done on lambdabot in secret
2023-07-08 20:47:24 +0200 <EvanR> as well as already knowing the content
2023-07-08 20:48:34 +0200 <int-e> EvanR: I actually don't though I can see that you'll have to take my word for it
2023-07-08 20:48:58 +0200notzmv(~zmv@user/notzmv)
2023-07-08 20:49:04 +0200 <EvanR> int-e is the priest, use lambdabot to confess your use of imperative and OOP methodology
2023-07-08 20:49:21 +0200alternateved(~user@77-254-166-50.dynamic.inetia.pl)
2023-07-08 20:49:29 +0200 <int-e> @quote oop
2023-07-08 20:49:30 +0200 <lambdabot> IceDane says: [on escaping an imperative mindset]: <kmc> i recommend heavy drinking <IceDane> I've tried that. I just have fun and wake up and feel like shit the day after. but still think in loops.
2023-07-08 20:49:53 +0200alternateved(~user@77-254-166-50.dynamic.inetia.pl) (Remote host closed the connection)
2023-07-08 20:49:56 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-07-08 20:49:57 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-07-08 20:49:57 +0200wroathe(~wroathe@user/wroathe)
2023-07-08 20:50:23 +0200 <int-e> @quote \boop\b
2023-07-08 20:50:24 +0200 <lambdabot> oleg says: It is known, albeit not so well, that following the OOP letter and practice may lead to insidious errors.
2023-07-08 20:52:27 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 246 seconds)
2023-07-08 20:53:39 +0200 <int-e> FWIW, I truly believe that dependent types make the programmer work too hard for most programming tasks.
2023-07-08 20:54:00 +0200 <int-e> Unless you plan on proving your code correct anyway, I guess.
2023-07-08 20:54:24 +0200 <EvanR> a circle is an ellipse is a quadruped. A reflexive graph is a graph is a hypergraph. We're ready for the IT section of barnes and noble
2023-07-08 20:55:31 +0200 <EvanR> from the beginning Idris was design to let you go ahead with nonsense and prove stuff later*
2023-07-08 20:55:46 +0200ddellacosta(~ddellacos@143.244.47.70)
2023-07-08 20:55:47 +0200 <EvanR> division by zero even crashes the program
2023-07-08 20:57:39 +0200Sgeo(~Sgeo@user/sgeo)
2023-07-08 20:57:54 +0200 <EvanR> a wishful thinking thought is that libraries exist and can be used that have proofs already
2023-07-08 20:58:05 +0200 <EvanR> but I guess that's chicken and egg
2023-07-08 20:59:36 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 245 seconds)
2023-07-08 21:02:47 +0200 <int-e> Which properties do you track and check? You probably get a dozen different list types that are generally useful because of that. (Say, track length, track distinctness of items, track sortedness, track sum according to some weight function...)
2023-07-08 21:03:10 +0200ystael(~ystael@user/ystael) (Ping timeout: 260 seconds)
2023-07-08 21:03:50 +0200fweht(uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2023-07-08 21:03:51 +0200 <EvanR> we already do that right
2023-07-08 21:04:32 +0200 <EvanR> Vector, Set, Set or Map, (Map, sum), all with different types
2023-07-08 21:04:35 +0200 <int-e> True, but there are limits to that in current (mostly non-dependent) Haskell.
2023-07-08 21:04:57 +0200 <EvanR> I mean without help from the type system
2023-07-08 21:05:05 +0200 <int-e> EvanR: What I had in mind would all be isomorphic in [a] at the value level.
2023-07-08 21:05:29 +0200 <int-e> Just tracking different invariants/measurements on the list.
2023-07-08 21:05:52 +0200 <EvanR> according to conal, list is terrible and we should be using the right structures for the job xD (in a talk where he said this, he then pulls out something with a dependent type)
2023-07-08 21:06:01 +0200 <int-e> Because with dependent types you *can* do that so people will want to do that.
2023-07-08 21:06:31 +0200 <int-e> The *same* thing can be done for Vector.
2023-07-08 21:06:49 +0200 <EvanR> if something can be treated as a list while remembering something important, that can be part of the API
2023-07-08 21:07:03 +0200 <EvanR> otherwise, anything can be listified by forgetting everything
2023-07-08 21:08:02 +0200 <EvanR> even in haskell you're discouraged from using list except as a loop
2023-07-08 21:08:10 +0200 <int-e> (Of course even Haskell managed to make a small mess out of [a] in the form of NonEmpty)
2023-07-08 21:08:15 +0200 <int-e> Or Nonempty?
2023-07-08 21:08:36 +0200 <EvanR> I actually like NonEmpty
2023-07-08 21:08:38 +0200 <[exa]> NoActuallyEmpty
2023-07-08 21:10:01 +0200 <int-e> NonEmpty could be nice if Haskell had subtypes.
2023-07-08 21:10:39 +0200 <EvanR> writing realToFrac everywhere is fine, but not toList ? xD
2023-07-08 21:11:10 +0200 <int-e> I don't write realToFrac everywhere.
2023-07-08 21:11:26 +0200 <EvanR> fromIntegral
2023-07-08 21:11:39 +0200 <EvanR> me neither I put let fi = fromIntegral in
2023-07-08 21:11:49 +0200 <int-e> (It's mostly fromIntegral and I try to keep that to a minimum too and it's at least mildly annoying.)
2023-07-08 21:12:16 +0200 <int-e> (So the last thing I want is more of that.)
2023-07-08 21:12:57 +0200 <int-e> But maybe I just haven't been bitten often enough by working with head and tail on lists that turned out to be empty.
2023-07-08 21:14:20 +0200 <EvanR> it does add noise to the code, meanwhile this proof here that the list is not empty exists
2023-07-08 21:21:50 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net)
2023-07-08 21:22:37 +0200_xor(~xor@ip-50-5-233-250.dynamic.fuse.net) (Quit: brb)
2023-07-08 21:26:16 +0200nate2(~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds)
2023-07-08 21:27:40 +0200Thorin(~Thorin@user/Thorin)
2023-07-08 21:28:55 +0200acarrico(~acarrico@dhcp-68-142-49-163.greenmountainaccess.net) (Quit: Leaving.)
2023-07-08 21:29:58 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-07-08 21:30:08 +0200acarrico(~acarrico@dhcp-68-142-49-163.greenmountainaccess.net)
2023-07-08 21:30:52 +0200img(~img@user/img)
2023-07-08 21:30:54 +0200img(~img@user/img) (Remote host closed the connection)
2023-07-08 21:31:39 +0200acarrico(~acarrico@dhcp-68-142-49-163.greenmountainaccess.net) (Client Quit)
2023-07-08 21:31:48 +0200img(~img@user/img)
2023-07-08 21:37:12 +0200eggplantade(~Eggplanta@2600:1700:38c5:d800:e574:ea25:1127:161e) (Remote host closed the connection)
2023-07-08 21:42:52 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl)
2023-07-08 21:43:01 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-07-08 21:43:57 +0200img(~img@user/img)
2023-07-08 21:45:32 +0200titibandit(~titibandi@user/titibandit)
2023-07-08 21:46:45 +0200acarrico(~acarrico@dhcp-68-142-49-163.greenmountainaccess.net)
2023-07-08 21:50:58 +0200trev(~trev@user/trev) (Quit: trev)
2023-07-08 21:52:38 +0200titibandit(~titibandi@user/titibandit) (Ping timeout: 260 seconds)
2023-07-08 21:55:37 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net)
2023-07-08 21:55:52 +0200titibandit(~titibandi@user/titibandit)
2023-07-08 22:01:54 +0200michalz(~michalz@185.246.207.221)
2023-07-08 22:02:54 +0200img(~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in)
2023-07-08 22:03:22 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)
2023-07-08 22:03:46 +0200titibandit(~titibandi@user/titibandit) (Ping timeout: 245 seconds)
2023-07-08 22:03:49 +0200img(~img@user/img)
2023-07-08 22:05:02 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 246 seconds)
2023-07-08 22:07:29 +0200waleee(~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7)
2023-07-08 22:10:51 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 22:11:34 +0200Guest8835(~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr)
2023-07-08 22:11:58 +0200Thorin(~Thorin@user/Thorin) (Quit: Leaving ...)
2023-07-08 22:16:29 +0200titibandit(~titibandi@user/titibandit)
2023-07-08 22:17:56 +0200bontaq(~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 245 seconds)
2023-07-08 22:21:15 +0200_ht(~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
2023-07-08 22:30:17 +0200zer0bitz(~zer0bitz@user/zer0bitz) (Read error: Connection reset by peer)
2023-07-08 22:30:26 +0200misterfish(~misterfis@84-53-85-146.bbserv.nl) (Ping timeout: 260 seconds)
2023-07-08 22:33:08 +0200Pickchea(~private@user/pickchea)
2023-07-08 22:34:13 +0200zer0bitz(~zer0bitz@user/zer0bitz)
2023-07-08 22:37:31 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2023-07-08 22:40:55 +0200azr4e1(~azr4e1@host86-134-72-140.range86-134.btcentralplus.com) (Remote host closed the connection)
2023-07-08 22:41:23 +0200gry(quasselcor@botters/gry)
2023-07-08 22:47:57 +0200Kaladin(~Kaladin@157-131-203-194.fiber.dynamic.sonic.net)
2023-07-08 22:49:43 +0200hololeapwholesomeleap
2023-07-08 22:50:14 +0200mmhat(~mmh@p200300f1c724ae56ee086bfffe095315.dip0.t-ipconnect.de)
2023-07-08 22:50:37 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot)
2023-07-08 22:51:08 +0200wholesomeleaphololeap
2023-07-08 22:51:24 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 22:52:54 +0200gry(quasselcor@botters/gry) (Ping timeout: 240 seconds)
2023-07-08 22:53:28 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Client Quit)
2023-07-08 22:55:11 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 22:55:39 +0200coot(~coot@89-69-206-216.dynamic.chello.pl) (Remote host closed the connection)
2023-07-08 22:56:12 +0200wootehfoot(~wootehfoo@user/wootehfoot) (Ping timeout: 240 seconds)
2023-07-08 22:56:24 +0200coot(~coot@89-69-206-216.dynamic.chello.pl)
2023-07-08 22:56:58 +0200gry(quasselcor@botters/gry)
2023-07-08 23:08:00 +0200pavonia(~user@user/siracusa)
2023-07-08 23:09:21 +0200jargon(~jargon@184.101.73.95) (Remote host closed the connection)
2023-07-08 23:09:22 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com)
2023-07-08 23:09:22 +0200wroathe(~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host)
2023-07-08 23:09:22 +0200wroathe(~wroathe@user/wroathe)
2023-07-08 23:09:34 +0200mmhat(~mmh@p200300f1c724ae56ee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 4.0.1)
2023-07-08 23:12:48 +0200Buggys(Buggys@Buggy.shelltalk.net) (Ping timeout: 246 seconds)
2023-07-08 23:21:14 +0200Buggys(Buggys@shelltalk.net)
2023-07-08 23:22:50 +0200gmg(~user@user/gehmehgeh)
2023-07-08 23:28:20 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2023-07-08 23:34:16 +0200 <L29Ah> is there a getopt solution similar to optparse-generic, but supporting common options for a command and subcommands with subcommand-specific options at the same time?
2023-07-08 23:34:50 +0200 <L29Ah> https://hackage.haskell.org/package/optparse-generic-1.5.0/docs/Options-Generic.html tells it only does subcommand-specific options, and that it can't work with nested records
2023-07-08 23:45:03 +0200caryhartline(~caryhartl@168.182.58.169)
2023-07-08 23:45:37 +0200mechap(~mechap@user/mechap) (Ping timeout: 245 seconds)
2023-07-08 23:46:06 +0200gry(quasselcor@botters/gry) (Ping timeout: 240 seconds)
2023-07-08 23:50:37 +0200 <sm> I do that with cmdargs at least
2023-07-08 23:50:54 +0200 <sm> presumably one of the optparse flavours can do it
2023-07-08 23:53:54 +0200eggplantade(~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2023-07-08 23:53:54 +0200jinsun_(~jinsun@user/jinsun)
2023-07-08 23:53:55 +0200jinsunGuest6478
2023-07-08 23:53:55 +0200Guest6478(~jinsun@user/jinsun) (Killed (cadmium.libera.chat (Nickname regained by services)))
2023-07-08 23:53:55 +0200jinsun_jinsun
2023-07-08 23:54:27 +0200merijn(~merijn@088-129-128-083.dynamic.caiway.nl)