2023-01-03 00:03:28 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 272 seconds) |
2023-01-03 00:06:09 +0100 | motherfsck | (~motherfsc@user/motherfsck) |
2023-01-03 00:06:12 +0100 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
2023-01-03 00:10:30 +0100 | notzmv | (~zmv@user/notzmv) |
2023-01-03 00:11:23 +0100 | biberu | (~biberu@user/biberu) (Read error: Connection reset by peer) |
2023-01-03 00:11:24 +0100 | <intelligent_boat> | if I ask "what are THE BEST MONADS" that would be an unanswerable question, I know, so let me try to make the question better... what are some useful monads to know about? things like state, writer, reader. I used State to do some advent of code problems. I don't usually write much Haskell otherwise. so, stuff useful to beginner |
2023-01-03 00:12:29 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
2023-01-03 00:14:57 +0100 | <monochrom> | My favourites are [], Maybe, Either e, (->) e, Cont r. There may be more. |
2023-01-03 00:15:42 +0100 | <monochrom> | You already listed State and Writer. They are my favourites too. |
2023-01-03 00:15:54 +0100 | biberu | (~biberu@user/biberu) |
2023-01-03 00:16:09 +0100 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) |
2023-01-03 00:16:20 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 00:17:18 +0100 | <monochrom> | My favourite though anti-climatic theorem (so it generates infinitely many favourite monads) is this: Every representable functor is a monad. |
2023-01-03 00:17:56 +0100 | <monochrom> | And that's just because "my functor is represented by Foo" just means "my functor is equivalent to (->)Foo". |
2023-01-03 00:18:03 +0100 | <Rembane> | monochrom: Are all monads your favorites? |
2023-01-03 00:18:44 +0100 | <monochrom> | So this gives for example "data P a = P a a" (represented by Bool) and "data S a = S a (S a)" (represented by Natural). |
2023-01-03 00:19:13 +0100 | <monochrom> | You know, so far, every monad I have met is a favourite. :) |
2023-01-03 00:19:53 +0100 | <Rembane> | :) |
2023-01-03 00:22:27 +0100 | <monochrom> | But if you suspect that some of them get me more excited than others, yes, I'm very much more excited by Cont, probability monads, and sometimes (->)Foo. |
2023-01-03 00:23:35 +0100 | <monochrom> | There was a time I was excited by parser monads. Now it's merely useful. |
2023-01-03 00:23:54 +0100 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) |
2023-01-03 00:27:07 +0100 | titibandit | (~titibandi@xdsl-89-0-163-79.nc.de) (Remote host closed the connection) |
2023-01-03 00:29:09 +0100 | <Rembane> | I'm still in the fascination phase with parser monads. They make me happy every time I use them. |
2023-01-03 00:29:12 +0100 | <intelligent_boat> | haven't gotten a chance to look into parsing much, usually just making do with lines/words for advent of code |
2023-01-03 00:29:27 +0100 | <intelligent_boat> | maybe should look at them some day |
2023-01-03 00:31:47 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
2023-01-03 00:36:52 +0100 | <mauke> | I've used https://hackage.haskell.org/package/base-4.17.0.0/docs/Text-ParserCombinators-ReadP.html all throughout AoC |
2023-01-03 00:36:53 +0100 | <mauke> | would recommend |
2023-01-03 00:54:43 +0100 | Tuplanolla | (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.) |
2023-01-03 00:55:06 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 00:57:48 +0100 | Lycurgus | (~juan@user/Lycurgus) |
2023-01-03 00:59:47 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
2023-01-03 01:13:20 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 01:16:02 +0100 | Blightmain | (~Blightmai@203.29.154.219) |
2023-01-03 01:18:23 +0100 | sterni | (~lukas@user/sterni) (Ping timeout: 255 seconds) |
2023-01-03 01:18:48 +0100 | sterni | (~lukas@user/sterni) |
2023-01-03 01:18:50 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2023-01-03 01:21:12 +0100 | <jackdk> | intelligent_boat: a lot of application code is fundamentally in a `ExceptT e (ReaderT r IO)` monad for particular choices of `r` and `e`. |
2023-01-03 01:21:49 +0100 | nasrudin__ | (~nasrudin_@81.171.62.8) (Ping timeout: 252 seconds) |
2023-01-03 01:27:15 +0100 | tremon | (~tremon@83-85-213-108.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in) |
2023-01-03 01:29:57 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 01:36:34 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds) |
2023-01-03 01:37:33 +0100 | nasrudin__ | (~nasrudin_@174.78.13.58) |
2023-01-03 01:44:03 +0100 | <unit73e> | intelligent_boat, to transformer monads count or no? I've used Get a lot but that's because I've been working on binary parsers. |
2023-01-03 01:47:33 +0100 | <unit73e> | my use case is a bit of a niche. other thanthat yeah the usual, read/write/state |
2023-01-03 01:49:54 +0100 | <unit73e> | for a beginner I think it's more important to understand the point of monads / monad transformers, and start with simple useful ones. because otherwise it will be hard to compose much. unless the beginner wants to go around passing a giant train of arguments. |
2023-01-03 01:50:37 +0100 | <unit73e> | is that a form of train wreck, but in purely functional? |
2023-01-03 01:54:25 +0100 | <talismanick> | `join bimap (\x -> on compare x to best) (damageTo from, power . group, initiative . group)` errors out with "can't match type Ordering with Side -> Maybe Int" |
2023-01-03 01:54:43 +0100 | <talismanick> | (want to map the lambda over a tuple) |
2023-01-03 01:55:27 +0100 | <talismanick> | It's in the head of a case expression, to clarify |
2023-01-03 01:55:59 +0100 | <talismanick> | should behave as if I wrote (compare ... to best, compare ... to best, compare ... to best) |
2023-01-03 01:56:22 +0100 | <talismanick> | err, prefix that compare with on |
2023-01-03 01:57:26 +0100 | <talismanick> | I guess I could use a list and <$>, given that the functions are all of the same type... |
2023-01-03 01:58:08 +0100 | Lycurgus | (~juan@user/Lycurgus) (Ping timeout: 260 seconds) |
2023-01-03 01:59:53 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 260 seconds) |
2023-01-03 02:01:33 +0100 | <talismanick> | Still, do wish the starting point of the language was hlists and everything else was shorthand for special cases |
2023-01-03 02:02:27 +0100 | <talismanick> | I take that back - that's a wish fit for a monkey's paw |
2023-01-03 02:03:09 +0100 | <nasrudin__> | follow-up on my earlier recursion schemes question: |
2023-01-03 02:03:27 +0100 | <nasrudin__> | can anyone explain generalized apomorphisms either in terms of zygomorphisms or apomorphisms? |
2023-01-03 02:04:02 +0100 | <nasrudin__> | Ican see why `gapo` is dual to `zygo` |
2023-01-03 02:04:21 +0100 | <nasrudin__> | I can see why `gapo` generalizes `apo` |
2023-01-03 02:04:26 +0100 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 272 seconds) |
2023-01-03 02:04:37 +0100 | <nasrudin__> | I don't follow how `gapo` computes or what it computes |
2023-01-03 02:10:14 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
2023-01-03 02:11:28 +0100 | <jackdk> | talismanick: `join bimap` is only going to map over the final two slots in the tuple |
2023-01-03 02:12:29 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-01-03 02:12:29 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-01-03 02:12:29 +0100 | wroathe | (~wroathe@user/wroathe) |
2023-01-03 02:13:10 +0100 | <jackdk> | talismanick: Also, I think GHC is trying to infer a single type for your lambda, when it probably needs something with foralls in it. |
2023-01-03 02:13:22 +0100 | <nasrudin__> | Given `gapo :: forall {t} {b} {a}. Corecursive t => (b -> Base t b) -> (a -> Base t (Either b a)) -> a -> t` |
2023-01-03 02:13:22 +0100 | <nasrudin__> | in `gapo f g a0` |
2023-01-03 02:13:23 +0100 | <nasrudin__> | 1) what's the significance of `g` sometimes producing an `a` vs. sometimes producing a `b` value? |
2023-01-03 02:13:23 +0100 | <nasrudin__> | 2) how do we combine the outputs from `f` and `g`? |
2023-01-03 02:15:23 +0100 | acidjnk | (~acidjnk@p200300d6e7137a57e4469cf2ea7b5c7c.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2023-01-03 02:16:22 +0100 | albet70 | (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
2023-01-03 02:23:40 +0100 | Batzy | (~quassel@user/batzy) |
2023-01-03 02:24:49 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
2023-01-03 02:26:47 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 255 seconds) |
2023-01-03 02:28:08 +0100 | fizbin | (~fizbin@user/fizbin) (Ping timeout: 252 seconds) |
2023-01-03 02:30:35 +0100 | ddellacosta | (~ddellacos@143.244.47.81) |
2023-01-03 02:30:50 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 02:32:36 +0100 | notzmv | (~zmv@user/notzmv) (Read error: Connection reset by peer) |
2023-01-03 02:34:06 +0100 | thongpv87 | (~thongpv87@2402:9d80:3f6:6d60:8cc6:b5a1:ed72:1f2a) |
2023-01-03 02:35:28 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 260 seconds) |
2023-01-03 02:37:20 +0100 | fizbin | (~fizbin@user/fizbin) |
2023-01-03 02:39:54 +0100 | nasrudin__ | (~nasrudin_@174.78.13.58) (Ping timeout: 272 seconds) |
2023-01-03 02:40:19 +0100 | nasrudin__ | (~nasrudin_@174.78.13.58) |
2023-01-03 02:42:52 +0100 | dsrt^ | (~dsrt@76.145.185.103) |
2023-01-03 02:44:55 +0100 | Batzy | (~quassel@user/batzy) (Quit: No Ping reply in 180 seconds.) |
2023-01-03 02:46:17 +0100 | cameron_ | (~quassel@050-089-109-059.res.spectrum.com) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2023-01-03 02:46:22 +0100 | Batzy | (~quassel@user/batzy) |
2023-01-03 02:47:04 +0100 | thongpv87 | (~thongpv87@2402:9d80:3f6:6d60:8cc6:b5a1:ed72:1f2a) (Ping timeout: 252 seconds) |
2023-01-03 02:49:10 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 02:50:40 +0100 | nasrudin__ | (~nasrudin_@174.78.13.58) (Ping timeout: 272 seconds) |
2023-01-03 02:55:18 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 260 seconds) |
2023-01-03 02:56:07 +0100 | hyperbolic-dg | (~quassel@i577AA562.versanet.de) (Quit: https://quassel-irc.org - Komfortabler Chat. Überall.) |
2023-01-03 02:58:47 +0100 | razetime | (~Thunderbi@49.207.222.244) |
2023-01-03 03:04:49 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:a4db:1d71:f389:6df6) |
2023-01-03 03:05:06 +0100 | Batzy | (~quassel@user/batzy) (Quit: No Ping reply in 180 seconds.) |
2023-01-03 03:06:32 +0100 | Batzy | (~quassel@user/batzy) |
2023-01-03 03:09:04 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:a4db:1d71:f389:6df6) (Ping timeout: 252 seconds) |
2023-01-03 03:10:08 +0100 | thongpv87 | (~thongpv87@14.246.240.163) |
2023-01-03 03:10:31 +0100 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2023-01-03 03:10:46 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) |
2023-01-03 03:10:46 +0100 | wroathe | (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
2023-01-03 03:10:46 +0100 | wroathe | (~wroathe@user/wroathe) |
2023-01-03 03:11:00 +0100 | notzmv | (~zmv@user/notzmv) |
2023-01-03 03:15:15 +0100 | Lycurgus | (~juan@98.4.112.204) |
2023-01-03 03:15:15 +0100 | Lycurgus | (~juan@98.4.112.204) (Changing host) |
2023-01-03 03:15:15 +0100 | Lycurgus | (~juan@user/Lycurgus) |
2023-01-03 03:17:25 +0100 | AlaiNaaa_turkey | (~GmIRC@95.70.234.213) |
2023-01-03 03:22:36 +0100 | AlaiNaaa_turkey | (~GmIRC@95.70.234.213) (Quit: Geveze mIRC � www.Geveze.Org �) |
2023-01-03 03:28:02 +0100 | ddellacosta | (~ddellacos@143.244.47.81) (Ping timeout: 272 seconds) |
2023-01-03 03:32:28 +0100 | cameron_ | (~quassel@050-089-109-059.res.spectrum.com) |
2023-01-03 03:32:30 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-01-03 03:37:22 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
2023-01-03 03:47:36 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) |
2023-01-03 03:50:34 +0100 | instantaphex | (~jb@c-73-171-252-84.hsd1.fl.comcast.net) |
2023-01-03 03:56:55 +0100 | ddellacosta | (~ddellacos@static-198-44-136-50.cust.tzulo.com) |
2023-01-03 03:58:31 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 260 seconds) |
2023-01-03 03:58:56 +0100 | notzmv- | (~zmv@user/notzmv) |
2023-01-03 03:59:35 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 264 seconds) |
2023-01-03 04:05:09 +0100 | finn_elija | (~finn_elij@user/finn-elija/x-0085643) |
2023-01-03 04:05:09 +0100 | FinnElija | (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
2023-01-03 04:05:09 +0100 | finn_elija | FinnElija |
2023-01-03 04:05:25 +0100 | nasrudin__ | (~nasrudin_@174.78.10.145) |
2023-01-03 04:07:06 +0100 | jero98772 | (~jero98772@190.158.28.44) (Remote host closed the connection) |
2023-01-03 04:07:18 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 272 seconds) |
2023-01-03 04:07:38 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) |
2023-01-03 04:10:34 +0100 | panovia | (~user@user/siracusa) (Read error: Connection reset by peer) |
2023-01-03 04:14:16 +0100 | td_ | (~td@83.135.9.63) (Ping timeout: 272 seconds) |
2023-01-03 04:15:52 +0100 | td_ | (~td@83.135.9.22) |
2023-01-03 04:18:49 +0100 | sh1n | (~sh1n@181.229.121.151) |
2023-01-03 04:18:52 +0100 | panovia | (~user@user/siracusa) |
2023-01-03 04:19:16 +0100 | sh1n | (~sh1n@181.229.121.151) (Client Quit) |
2023-01-03 04:21:54 +0100 | [itchyjunk] | (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
2023-01-03 04:26:39 +0100 | Kaiepi | (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 260 seconds) |
2023-01-03 04:31:12 +0100 | Blightmain | (~Blightmai@203.29.154.219) (Remote host closed the connection) |
2023-01-03 04:33:10 +0100 | d34df00d | (~d34df00d@2600:1702:4f1b:7c10::48) |
2023-01-03 04:33:17 +0100 | <d34df00d> | Hi! |
2023-01-03 04:33:52 +0100 | <d34df00d> | What's the advised way to "just" download a remote file into a ByteString, without caring about cookies / HTTP pipelining / etc? |
2023-01-03 04:34:00 +0100 | <d34df00d> | s/remote/HTTP(s)/ |
2023-01-03 04:34:23 +0100 | <d34df00d> | Googling "haskell download file library" is not exactly enlightening as about the most widely used/common/etc way. |
2023-01-03 04:37:45 +0100 | <jackdk> | d34df00d: ignore the misleading package name, but I'd go with `http-conduit`'s `Network.HTTP.Simple.httpBS` |
2023-01-03 04:39:38 +0100 | <d34df00d> | jackdk: that looks nice, thanks! |
2023-01-03 04:40:59 +0100 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 264 seconds) |
2023-01-03 04:41:42 +0100 | beefbambi | (~beefbambi@183.82.26.189) (Read error: Connection reset by peer) |
2023-01-03 04:42:20 +0100 | terrorjack | (~terrorjac@2a01:4f8:1c1e:4e8c::) (Quit: The Lounge - https://thelounge.chat) |
2023-01-03 04:42:59 +0100 | Lycurgus | (~juan@user/Lycurgus) (Ping timeout: 260 seconds) |
2023-01-03 04:43:45 +0100 | terrorjack | (~terrorjac@2a01:4f8:1c1e:4e8c::) |
2023-01-03 04:44:59 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2023-01-03 04:46:54 +0100 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
2023-01-03 04:47:29 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-01-03 04:47:50 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection) |
2023-01-03 04:48:41 +0100 | thongpv | (~thongpv87@2001:ee0:54ae:c1f0:e4db:e7f4:3cf0:5fe4) |
2023-01-03 04:48:57 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) |
2023-01-03 04:50:22 +0100 | thongpv87 | (~thongpv87@14.246.240.163) (Ping timeout: 272 seconds) |
2023-01-03 04:50:45 +0100 | beefbambi | (~beefbambi@183.82.28.205) |
2023-01-03 04:51:00 +0100 | morb | (~morb@pool-72-80-94-112.nycmny.fios.verizon.net) |
2023-01-03 04:53:54 +0100 | <dsal> | I use conduit when I need simple http bs |
2023-01-03 04:54:20 +0100 | nasrudin__ | (~nasrudin_@174.78.10.145) (Ping timeout: 246 seconds) |
2023-01-03 04:55:15 +0100 | notzmv- | (~zmv@user/notzmv) (Ping timeout: 252 seconds) |
2023-01-03 04:56:59 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 260 seconds) |
2023-01-03 04:59:11 +0100 | jinsun | (~jinsun@user/jinsun) |
2023-01-03 05:01:10 +0100 | <d34df00d> | jackdk: just curious, how do you catch its errors, just for a better user error message? Will `catchError` do? |
2023-01-03 05:02:36 +0100 | <d34df00d> | Or `catch`, really. |
2023-01-03 05:04:32 +0100 | <jackdk> | I assume it throws exceptions, so probably the stuff in Control.Exception |
2023-01-03 05:06:05 +0100 | <d34df00d> | Ok cool, that makes sense. |
2023-01-03 05:09:20 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 05:09:22 +0100 | ddellacosta | (~ddellacos@static-198-44-136-50.cust.tzulo.com) (Ping timeout: 272 seconds) |
2023-01-03 05:13:17 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-01-03 05:14:32 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-01-03 05:24:49 +0100 | morb | (~morb@pool-72-80-94-112.nycmny.fios.verizon.net) (Quit: Leaving...) |
2023-01-03 05:28:21 +0100 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds) |
2023-01-03 05:37:58 +0100 | asivitz | (uid178348@id-178348.tinside.irccloud.com) |
2023-01-03 05:47:16 +0100 | beefbambi | (~beefbambi@183.82.28.205) (Read error: Connection reset by peer) |
2023-01-03 05:48:08 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) |
2023-01-03 05:50:15 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer) |
2023-01-03 05:50:34 +0100 | beefbambi | (~beefbambi@183.82.28.205) |
2023-01-03 05:53:36 +0100 | beefbambi | (~beefbambi@183.82.28.205) (Read error: Connection reset by peer) |
2023-01-03 05:54:01 +0100 | beefbambi | (~beefbambi@183.82.28.205) |
2023-01-03 05:56:51 +0100 | beefbambi | (~beefbambi@183.82.28.205) (Read error: Connection reset by peer) |
2023-01-03 05:58:06 +0100 | beefbambi | (~beefbambi@183.82.28.205) |
2023-01-03 06:00:20 +0100 | beefbambi | (~beefbambi@183.82.28.205) (Read error: Connection reset by peer) |
2023-01-03 06:00:53 +0100 | beefbambi | (~beefbambi@183.82.28.205) |
2023-01-03 06:03:32 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 06:07:09 +0100 | wroathe | (~wroathe@user/wroathe) (Quit: leaving) |
2023-01-03 06:07:37 +0100 | thongpv | (~thongpv87@2001:ee0:54ae:c1f0:e4db:e7f4:3cf0:5fe4) (Ping timeout: 256 seconds) |
2023-01-03 06:09:32 +0100 | instantaphex | (~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 272 seconds) |
2023-01-03 06:20:41 +0100 | instantaphex | (~jb@c-73-171-252-84.hsd1.fl.comcast.net) |
2023-01-03 06:25:22 +0100 | instantaphex | (~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 272 seconds) |
2023-01-03 06:30:54 +0100 | beefbambi | (~beefbambi@183.82.28.205) (Ping timeout: 260 seconds) |
2023-01-03 06:33:25 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) |
2023-01-03 06:37:11 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
2023-01-03 06:37:39 +0100 | <maerwald[m]> | dminuoso: https://github.com/brendanhay/amazonka/issues/866#issuecomment-1369408280 |
2023-01-03 06:38:20 +0100 | trev | (~trev@user/trev) |
2023-01-03 06:56:39 +0100 | thongpv | (~thongpv87@14.246.240.163) |
2023-01-03 06:58:43 +0100 | <maerwald[m]> | Apparently UTC offset for PST is defined in RFC2822 |
2023-01-03 07:04:22 +0100 | notzmv | (~zmv@user/notzmv) |
2023-01-03 07:06:08 +0100 | Feuermagier | (~Feuermagi@user/feuermagier) |
2023-01-03 07:07:13 +0100 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds) |
2023-01-03 07:16:58 +0100 | <jackdk> | and RFC5322 too, also under the `obs-zone` grammar rule. |
2023-01-03 07:23:53 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
2023-01-03 07:32:55 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 268 seconds) |
2023-01-03 07:33:09 +0100 | Lumia | (~Lumia@user/Lumia) |
2023-01-03 07:39:56 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 08:05:12 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 255 seconds) |
2023-01-03 08:05:13 +0100 | Lycurgus | (~juan@98.4.112.204) |
2023-01-03 08:05:13 +0100 | Lycurgus | (~juan@98.4.112.204) (Changing host) |
2023-01-03 08:05:13 +0100 | Lycurgus | (~juan@user/Lycurgus) |
2023-01-03 08:08:24 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) (Ping timeout: 252 seconds) |
2023-01-03 08:10:03 +0100 | jinsun | (~jinsun@user/jinsun) (Ping timeout: 260 seconds) |
2023-01-03 08:15:13 +0100 | Lumia | (~Lumia@user/Lumia) (Quit: ,-) |
2023-01-03 08:16:28 +0100 | iqubic | (~avi@2601:602:9502:c70:3dee:aba8:ea3d:300b) |
2023-01-03 08:16:34 +0100 | razetime | (~Thunderbi@49.207.222.244) (Quit: razetime) |
2023-01-03 08:28:10 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 08:29:47 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |
2023-01-03 08:29:56 +0100 | cheater_ | cheater |
2023-01-03 08:33:20 +0100 | igghibu | (~igghibu@178.249.211.70) |
2023-01-03 08:33:32 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 08:35:03 +0100 | cameron_ | (~quassel@050-089-109-059.res.spectrum.com) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
2023-01-03 08:41:54 +0100 | <[exa]> | intelligent_boat: parser monads are IMO a haskell killer feature. And LogicT is lovely. |
2023-01-03 08:45:06 +0100 | azimut | (~azimut@gateway/tor-sasl/azimut) |
2023-01-03 08:45:46 +0100 | kritzefitz | (~kritzefit@debian/kritzefitz) |
2023-01-03 08:45:47 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
2023-01-03 08:51:15 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 08:55:34 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
2023-01-03 08:56:10 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) (Ping timeout: 268 seconds) |
2023-01-03 09:02:14 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
2023-01-03 09:06:41 +0100 | thongpv | (~thongpv87@14.246.240.163) (Remote host closed the connection) |
2023-01-03 09:07:24 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
2023-01-03 09:07:44 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 246 seconds) |
2023-01-03 09:07:59 +0100 | thongpv | (~thongpv87@14.246.240.163) |
2023-01-03 09:11:16 +0100 | fserucas | (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) |
2023-01-03 09:11:26 +0100 | califax | (~califax@user/califx) (Ping timeout: 255 seconds) |
2023-01-03 09:14:52 +0100 | mbuf | (~Shakthi@49.205.80.42) |
2023-01-03 09:16:20 +0100 | hpc | (~juzz@ip98-169-35-163.dc.dc.cox.net) (Ping timeout: 260 seconds) |
2023-01-03 09:16:42 +0100 | califax | (~califax@user/califx) |
2023-01-03 09:17:20 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:3054:ac62:76b7:6154) |
2023-01-03 09:17:49 +0100 | hpc | (~juzz@ip98-169-35-163.dc.dc.cox.net) |
2023-01-03 09:24:14 +0100 | panovia | (~user@user/siracusa) (Quit: Bye!) |
2023-01-03 09:29:35 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 264 seconds) |
2023-01-03 09:31:13 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2023-01-03 09:31:44 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 09:33:25 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 09:33:27 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 09:37:31 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 248 seconds) |
2023-01-03 09:40:03 +0100 | takuan | (~takuan@178-116-218-225.access.telenet.be) |
2023-01-03 09:40:58 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 09:41:25 +0100 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) |
2023-01-03 09:41:52 +0100 | nschoe | (~q@2a01:e0a:8e:a190:79dc:4967:2fb4:bf93) |
2023-01-03 09:44:14 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 272 seconds) |
2023-01-03 09:44:23 +0100 | cheater_ | cheater |
2023-01-03 09:46:46 +0100 | avicenzi | (~avicenzi@2a00:ca8:a1f:b004::c32) |
2023-01-03 09:49:18 +0100 | mncheckm | (~mncheck@193.224.205.254) (Remote host closed the connection) |
2023-01-03 09:49:34 +0100 | mncheckm | (~mncheck@193.224.205.254) |
2023-01-03 09:51:33 +0100 | acidjnk | (~acidjnk@p200300d6e7137a39e4469cf2ea7b5c7c.dip0.t-ipconnect.de) |
2023-01-03 09:54:11 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) (Ping timeout: 264 seconds) |
2023-01-03 10:02:48 +0100 | boxscape_ | (~boxscape_@213.52.37.155) |
2023-01-03 10:03:18 +0100 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2023-01-03 10:23:59 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) |
2023-01-03 10:24:08 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 272 seconds) |
2023-01-03 10:26:37 +0100 | igghibu | (~igghibu@178.249.211.70) (Quit: igghibu) |
2023-01-03 10:28:06 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 10:30:53 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 265 seconds) |
2023-01-03 10:31:01 +0100 | cheater_ | cheater |
2023-01-03 10:34:50 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) (Ping timeout: 268 seconds) |
2023-01-03 10:37:44 +0100 | econo | (uid147250@user/econo) (Quit: Connection closed for inactivity) |
2023-01-03 10:50:13 +0100 | mechsp | (~mechsp@82-64-66-157.subs.proxad.net) |
2023-01-03 10:51:11 +0100 | mechsp | (~mechsp@82-64-66-157.subs.proxad.net) (Client Quit) |
2023-01-03 10:54:45 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
2023-01-03 11:01:48 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 260 seconds) |
2023-01-03 11:09:27 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) (Remote host closed the connection) |
2023-01-03 11:11:29 +0100 | Lycurgus | (~juan@user/Lycurgus) (Ping timeout: 255 seconds) |
2023-01-03 11:25:17 +0100 | notzmv | (~zmv@user/notzmv) (Ping timeout: 246 seconds) |
2023-01-03 11:31:26 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 11:32:21 +0100 | Kaiepi | (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) |
2023-01-03 11:35:32 +0100 | Lord_of_Life_ | (~Lord@user/lord-of-life/x-2819915) |
2023-01-03 11:35:53 +0100 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 268 seconds) |
2023-01-03 11:36:40 +0100 | boxscape_ | (~boxscape_@213.52.37.155) (Quit: Connection closed) |
2023-01-03 11:38:01 +0100 | <zzz> | > let f = const 'a' . join seq in f undefined |
2023-01-03 11:38:03 +0100 | <lambdabot> | 'a' |
2023-01-03 11:38:19 +0100 | Lord_of_Life_ | Lord_of_Life |
2023-01-03 11:38:28 +0100 | <zzz> | > let f = flip seq 'a' in f undefined |
2023-01-03 11:38:30 +0100 | <lambdabot> | *Exception: Prelude.undefined |
2023-01-03 11:40:44 +0100 | <zzz> | > let f x = 'a' in f undefined |
2023-01-03 11:40:46 +0100 | <lambdabot> | 'a' |
2023-01-03 11:40:50 +0100 | <zzz> | > let f !x = 'a' in f undefined |
2023-01-03 11:40:52 +0100 | <lambdabot> | *Exception: Prelude.undefined |
2023-01-03 11:42:28 +0100 | <mauke> | exercise: write a strict function that does not evaluate its argument |
2023-01-03 11:43:08 +0100 | pyrex | (~pyrex@user/pyrex) (Ping timeout: 246 seconds) |
2023-01-03 11:43:27 +0100 | <ncf> | const undefined ? |
2023-01-03 11:44:08 +0100 | <mauke> | :-) |
2023-01-03 11:44:18 +0100 | pyrex | (~pyrex@user/pyrex) |
2023-01-03 11:44:19 +0100 | __monty__ | (~toonn@user/toonn) |
2023-01-03 11:45:22 +0100 | <zzz> | > const 'a' $ const undefined undefined |
2023-01-03 11:45:24 +0100 | <lambdabot> | 'a' |
2023-01-03 11:48:22 +0100 | thongpv | (~thongpv87@14.246.240.163) (Ping timeout: 272 seconds) |
2023-01-03 11:52:16 +0100 | marinelli | (~marinelli@gateway/tor-sasl/marinelli) |
2023-01-03 11:52:53 +0100 | marinelli | (~marinelli@gateway/tor-sasl/marinelli) (Quit: marinelli) |
2023-01-03 11:53:17 +0100 | marinelli | (~marinelli@gateway/tor-sasl/marinelli) |
2023-01-03 11:55:24 +0100 | <mauke> | > let unconst = fix in unconst (const a) |
2023-01-03 11:55:25 +0100 | <lambdabot> | a |
2023-01-03 11:57:30 +0100 | mmhat | (~mmh@p200300f1c7235b63ee086bfffe095315.dip0.t-ipconnect.de) |
2023-01-03 11:57:31 +0100 | mmhat | (~mmh@p200300f1c7235b63ee086bfffe095315.dip0.t-ipconnect.de) (Client Quit) |
2023-01-03 11:57:37 +0100 | Guest74 | (~Guest74@dyndsl-037-138-067-145.ewe-ip-backbone.de) |
2023-01-03 11:57:49 +0100 | cheater | (~Username@user/cheater) |
2023-01-03 11:59:41 +0100 | Typedfern | (~Typedfern@60.red-83-37-32.dynamicip.rima-tde.net) |
2023-01-03 12:02:40 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) |
2023-01-03 12:05:21 +0100 | MajorBiscuit | (~MajorBisc@c-001-021-035.client.tudelft.eduvpn.nl) |
2023-01-03 12:06:32 +0100 | thongpv | (~thongpv87@2402:9d80:3f6:6d60:f56c:22a9:c5fd:d3ca) |
2023-01-03 12:06:38 +0100 | <Jadesheit[m]> | that's so cursed |
2023-01-03 12:09:55 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) |
2023-01-03 12:12:15 +0100 | acidjnk | (~acidjnk@p200300d6e7137a39e4469cf2ea7b5c7c.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2023-01-03 12:14:02 +0100 | xsperry | (~xs@86.32.66.142) |
2023-01-03 12:14:09 +0100 | xsperry | (~xs@86.32.66.142) () |
2023-01-03 12:14:22 +0100 | xsperry | (~xs@user/xsperry) |
2023-01-03 12:14:30 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) (Ping timeout: 255 seconds) |
2023-01-03 12:14:36 +0100 | king_gs | (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
2023-01-03 12:15:34 +0100 | marinelli | (~marinelli@gateway/tor-sasl/marinelli) (Remote host closed the connection) |
2023-01-03 12:15:50 +0100 | marinelli | (~marinelli@gateway/tor-sasl/marinelli) |
2023-01-03 12:16:28 +0100 | Guest74 | (~Guest74@dyndsl-037-138-067-145.ewe-ip-backbone.de) (Ping timeout: 260 seconds) |
2023-01-03 12:17:38 +0100 | jmdaemon | (~jmdaemon@user/jmdaemon) (Ping timeout: 260 seconds) |
2023-01-03 12:19:06 +0100 | <zzz> | i'll give you cursed |
2023-01-03 12:19:14 +0100 | <zzz> | @type fix flip |
2023-01-03 12:19:15 +0100 | <lambdabot> | a -> a -> c |
2023-01-03 12:21:03 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 256 seconds) |
2023-01-03 12:27:28 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
2023-01-03 12:28:06 +0100 | <zzz> | enjoy the rest of your day |
2023-01-03 12:30:19 +0100 | <[exa]> | thank you for the curse |
2023-01-03 12:30:30 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) |
2023-01-03 12:33:08 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
2023-01-03 12:35:10 +0100 | Typedfern | (~Typedfern@60.red-83-37-32.dynamicip.rima-tde.net) (Remote host closed the connection) |
2023-01-03 12:35:21 +0100 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) |
2023-01-03 12:35:22 +0100 | <dminuoso> | maerwald[m]: Ah okay |
2023-01-03 12:35:28 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 12:36:16 +0100 | <dminuoso> | [exa]: Honestly, I view them with a double edged sword. The common parser libraries have pretty poor diagnostics or control thereof. |
2023-01-03 12:36:31 +0100 | <dminuoso> | It's frequently very hard to emit good and legible errors |
2023-01-03 12:36:44 +0100 | Typedfern | (~Typedfern@60.red-83-37-32.dynamicip.rima-tde.net) |
2023-01-03 12:37:18 +0100 | <dminuoso> | And it's even more annoying to have a very inconsistent and poorly documented behavior as to which combinators freely backtrack and which ones dont. |
2023-01-03 12:39:13 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 260 seconds) |
2023-01-03 12:39:23 +0100 | cheater_ | cheater |
2023-01-03 12:40:04 +0100 | enoq | (~enoq@2a05:1141:1f5:5600:b9c9:721a:599:bfe7) (Quit: enoq) |
2023-01-03 12:41:05 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 260 seconds) |
2023-01-03 12:42:52 +0100 | Typedfern | (~Typedfern@60.red-83-37-32.dynamicip.rima-tde.net) (Remote host closed the connection) |
2023-01-03 12:49:48 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 12:53:00 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
2023-01-03 12:53:11 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 255 seconds) |
2023-01-03 12:53:13 +0100 | cheater_ | cheater |
2023-01-03 12:55:38 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-01-03 13:00:48 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) (Ping timeout: 260 seconds) |
2023-01-03 13:03:18 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 13:08:31 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Remote host closed the connection) |
2023-01-03 13:08:51 +0100 | acidjnk | (~acidjnk@p54ad5adb.dip0.t-ipconnect.de) |
2023-01-03 13:09:15 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 13:11:25 +0100 | boxscape_ | (~boxscape_@213.52.37.155) |
2023-01-03 13:15:45 +0100 | Blightmain | (~Blightmai@203.29.154.219) |
2023-01-03 13:16:00 +0100 | Blightmain_ | (~Blightmai@203.29.154.219) |
2023-01-03 13:21:31 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 248 seconds) |
2023-01-03 13:24:17 +0100 | Blightmain_ | (~Blightmai@203.29.154.219) (Quit: Leaving) |
2023-01-03 13:24:17 +0100 | Blightmain | (~Blightmai@203.29.154.219) (Quit: Leaving) |
2023-01-03 13:31:37 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) |
2023-01-03 13:32:49 +0100 | Lycurgus | (~juan@98.4.112.204) |
2023-01-03 13:32:49 +0100 | Lycurgus | (~juan@98.4.112.204) (Changing host) |
2023-01-03 13:32:49 +0100 | Lycurgus | (~juan@user/Lycurgus) |
2023-01-03 13:34:50 +0100 | Guest74 | (~Guest74@dyndsl-037-138-067-145.ewe-ip-backbone.de) |
2023-01-03 13:37:48 +0100 | Typedfern | (~Typedfern@60.red-83-37-32.dynamicip.rima-tde.net) |
2023-01-03 13:38:15 +0100 | use-value | (~Thunderbi@2a00:23c6:8a03:2f01:3d84:4b82:86a6:1821) |
2023-01-03 13:40:30 +0100 | califax_ | (~califax@user/califx) |
2023-01-03 13:41:41 +0100 | gurkenglas | (~gurkengla@p548ac72e.dip0.t-ipconnect.de) (Ping timeout: 268 seconds) |
2023-01-03 13:42:22 +0100 | califax | (~califax@user/califx) (Remote host closed the connection) |
2023-01-03 13:42:23 +0100 | califax_ | califax |
2023-01-03 13:43:23 +0100 | v0id_ptr | (~adrift@user/ptr-frac7al/x-0038398) (Ping timeout: 264 seconds) |
2023-01-03 13:44:44 +0100 | use-value | (~Thunderbi@2a00:23c6:8a03:2f01:3d84:4b82:86a6:1821) (Quit: use-value) |
2023-01-03 13:47:05 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 13:54:51 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) (Quit: ChaiTRex) |
2023-01-03 13:55:15 +0100 | CiaoSen | (~Jura@p200300c9571bac002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2023-01-03 14:07:53 +0100 | Guest74 | (~Guest74@dyndsl-037-138-067-145.ewe-ip-backbone.de) (Ping timeout: 260 seconds) |
2023-01-03 14:22:22 +0100 | razetime | (~Thunderbi@49.207.222.244) |
2023-01-03 14:23:32 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-01-03 14:28:20 +0100 | xff0x | (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 246 seconds) |
2023-01-03 14:35:10 +0100 | smallArray | (~smallArra@85.83.249.158) |
2023-01-03 14:36:34 +0100 | king_gs | (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Ping timeout: 252 seconds) |
2023-01-03 14:37:16 +0100 | <mauke> | > flip undefined `seq` () |
2023-01-03 14:37:17 +0100 | <lambdabot> | () |
2023-01-03 14:37:35 +0100 | <smallArray> | Hello! I saw that (ArrayArray# a) was removed in favor of having (Array# (Array# a)) do the same thing. Is the same true with SmallArray#? In my case, I am hoping to have a (SmallArray# (SmallArray# ByteArray#)) and I wanted to ask about it before trying to upgrade my GHC version. |
2023-01-03 14:37:59 +0100 | boxscape_ | (~boxscape_@213.52.37.155) (Quit: Connection closed) |
2023-01-03 14:38:32 +0100 | <merijn> | smallArray: I think that's a #ghc or a mailing list question :p |
2023-01-03 14:38:53 +0100 | <smallArray> | Okay, I'll try there. Thank you! |
2023-01-03 14:39:39 +0100 | shapr | (~user@68.54.166.125) (Ping timeout: 268 seconds) |
2023-01-03 14:40:57 +0100 | marinelli | (~marinelli@gateway/tor-sasl/marinelli) (Quit: marinelli) |
2023-01-03 14:42:51 +0100 | <smallArray> | Do you know how to see the levity annotations on Array# by chance? I'm not sure how to find that in the source code. |
2023-01-03 14:42:59 +0100 | ystael | (~ystael@user/ystael) |
2023-01-03 14:43:07 +0100 | <smallArray> | If I can find it on Array# I can just look at SmallArray# myself! |
2023-01-03 14:43:56 +0100 | <smallArray> | Ah, I found it! |
2023-01-03 14:43:58 +0100 | <smallArray> | https://downloads.haskell.org/~ghc/9.4.4/docs/users_guide/9.4.1-notes.html#ghc-prim-library |
2023-01-03 14:45:25 +0100 | <zzz> | @type flip undefined |
2023-01-03 14:45:26 +0100 | <lambdabot> | b -> a -> c |
2023-01-03 14:45:29 +0100 | <zzz> | what? |
2023-01-03 14:46:01 +0100 | <zzz> | oh i get it |
2023-01-03 14:46:15 +0100 | <zzz> | @type undefined :: a -> b |
2023-01-03 14:46:16 +0100 | <lambdabot> | a -> b |
2023-01-03 14:46:20 +0100 | <zzz> | ... |
2023-01-03 14:46:41 +0100 | <mauke> | :t flip id |
2023-01-03 14:46:42 +0100 | <lambdabot> | b -> (b -> c) -> c |
2023-01-03 14:47:29 +0100 | <zzz> | stop |
2023-01-03 14:47:57 +0100 | <ncf> | > fix error |
2023-01-03 14:47:59 +0100 | <lambdabot> | "*Exception: *Exception: *Exception: *Exception: *Exception: *Exception: *Ex... |
2023-01-03 14:48:41 +0100 | zzz | sighs |
2023-01-03 14:49:54 +0100 | <mauke> | :t (.) (.) (.) |
2023-01-03 14:49:55 +0100 | <lambdabot> | (b -> c) -> (a1 -> a2 -> b) -> a1 -> a2 -> c |
2023-01-03 14:50:59 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 14:51:04 +0100 | smallArray | (~smallArra@85.83.249.158) () |
2023-01-03 14:55:11 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 256 seconds) |
2023-01-03 14:55:15 +0100 | <Jadesheit[m]> | that's so cursed |
2023-01-03 14:55:26 +0100 | <zzz> | mauke: that's the total recall combinator |
2023-01-03 14:55:31 +0100 | <Jadesheit[m]> | > fix (.) |
2023-01-03 14:55:32 +0100 | <lambdabot> | error: |
2023-01-03 14:55:32 +0100 | <lambdabot> | • Occurs check: cannot construct the infinite type: c ~ a -> c |
2023-01-03 14:55:32 +0100 | <lambdabot> | Expected type: ((a -> b) -> a -> c) -> (a -> b) -> a -> c |
2023-01-03 14:55:52 +0100 | <ncf> | aka fmap fmap fmap |
2023-01-03 14:56:19 +0100 | <Jadesheit[m]> | > fix ((.) (.)) |
2023-01-03 14:56:20 +0100 | <lambdabot> | error: |
2023-01-03 14:56:20 +0100 | <lambdabot> | • Occurs check: cannot construct the infinite type: b ~ a1 -> b |
2023-01-03 14:56:20 +0100 | <lambdabot> | Expected type: (a -> (a1 -> b) -> a1 -> c) |
2023-01-03 14:57:39 +0100 | <ncf> | :t fmap fmap fmap fmap fmap fmap fmap fmap |
2023-01-03 14:57:41 +0100 | <lambdabot> | (Functor f1, Functor f2, Functor f3) => (a -> b) -> f1 (f2 (f3 a)) -> f1 (f2 (f3 b)) |
2023-01-03 14:58:27 +0100 | <Jadesheit[m]> | > fix fmap |
2023-01-03 14:58:29 +0100 | <lambdabot> | error: |
2023-01-03 14:58:29 +0100 | <lambdabot> | • Occurs check: cannot construct the infinite type: b ~ f b |
2023-01-03 14:58:29 +0100 | <lambdabot> | Expected type: (f a -> f b) -> f a -> f b |
2023-01-03 15:04:13 +0100 | jero98772 | (~jero98772@190.158.28.44) |
2023-01-03 15:05:06 +0100 | <ncf> | if it ain't broke... |
2023-01-03 15:09:25 +0100 | L29Ah | (~L29Ah@wikipedia/L29Ah) |
2023-01-03 15:09:31 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 15:10:25 +0100 | Ranhir | (~Ranhir@157.97.53.139) (Read error: Connection reset by peer) |
2023-01-03 15:11:40 +0100 | shriekingnoise | (~shrieking@186.137.175.87) |
2023-01-03 15:12:42 +0100 | Ranhir | (~Ranhir@157.97.53.139) |
2023-01-03 15:21:18 +0100 | Guest9918 | (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
2023-01-03 15:24:26 +0100 | <Guest9918> | How to teach beginners how to update list element? e.g.: update the 2nd element? |
2023-01-03 15:25:01 +0100 | <Guest9918> | either build a new list or using the lens library |
2023-01-03 15:25:18 +0100 | <Guest9918> | but it seems complicated |
2023-01-03 15:25:34 +0100 | <Guest9918> | the lens lib is very heavy |
2023-01-03 15:26:31 +0100 | <geekosaur> | there is microlems… but lens-like libraries are kinda wasted on lists |
2023-01-03 15:26:44 +0100 | <geekosaur> | and really the correct answer is lists are not meant to be updated |
2023-01-03 15:26:59 +0100 | <geekosaur> | you want Vector or Array for that |
2023-01-03 15:27:25 +0100 | <Guest9918> | so mutable vector or array, right? |
2023-01-03 15:27:33 +0100 | <geekosaur> | yeh |
2023-01-03 15:28:02 +0100 | <Guest9918> | i see thanks |
2023-01-03 15:32:09 +0100 | Lycurgus | (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
2023-01-03 15:32:55 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-01-03 15:32:56 +0100 | <geekosaur> | in fact, generally this is a good point to introduce data structures |
2023-01-03 15:33:36 +0100 | <geekosaur> | we have not only immutable and mutable Array and Vector but also Map, HashMap, priority queues, etc. |
2023-01-03 15:34:12 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-01-03 15:37:38 +0100 | <geekosaur> | alsi, lists are loops encoded as data. and "…encoded as data" is a thing you do a lot in functional programming |
2023-01-03 15:39:49 +0100 | Sgeo | (~Sgeo@user/sgeo) |
2023-01-03 15:39:51 +0100 | acidjnk | (~acidjnk@p54ad5adb.dip0.t-ipconnect.de) (Remote host closed the connection) |
2023-01-03 15:40:14 +0100 | acidjnk | (~acidjnk@p200300d6e7137a131414127c3bff1106.dip0.t-ipconnect.de) |
2023-01-03 15:46:58 +0100 | <Guest9918> | loops encoded as data, this will take some time to absorb its meaning |
2023-01-03 15:54:52 +0100 | <[exa]> | Guest9918: perhaps "generators" could be a closer concept from python&co. Lists usually do not really materialize unless you need them to, because of laziness. So `map (+1) [1..10]` can be naively viewed as a generator that asks for inputs from the generator [1..10] and adds 1 to that. |
2023-01-03 15:55:15 +0100 | <geekosaur> | yeh, it's a pretty big leap from procedural or OO if you're used to those |
2023-01-03 15:56:28 +0100 | <[exa]> | IIRC, in python you can do something that is technically very similar as `for i in range(10): yield i+1` |
2023-01-03 15:57:09 +0100 | <mauke> | does python have something like generator comprehensions? |
2023-01-03 15:57:24 +0100 | <jean-paul[m]> | yes, eg (i + 1 for i in range(10)) |
2023-01-03 15:57:55 +0100 | <jean-paul[m]> | a significant difference between lazy lists and generators is that realizing the value of a generator mutates it and consumes the values, though |
2023-01-03 15:58:12 +0100 | <mauke> | > take 5 [ i + 1 | i <- [1 ..] ] |
2023-01-03 15:58:14 +0100 | <lambdabot> | [2,3,4,5,6] |
2023-01-03 16:03:39 +0100 | <eldritchcookie[4> | i am getting a error message saying an instance overlaps with itself |
2023-01-03 16:04:09 +0100 | <eldritchcookie[4> | Overlapping instances for P.PMonad Cont... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/98088d774a7abd2da5c93949e7075ec157fa…>) |
2023-01-03 16:05:25 +0100 | <eldritchcookie[4> | any idea what could be causing this |
2023-01-03 16:05:27 +0100 | <eldritchcookie[4> | ? |
2023-01-03 16:15:45 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
2023-01-03 16:18:36 +0100 | ryantrinkle | (~ryantrink@209.91.238.110) () |
2023-01-03 16:21:55 +0100 | MajorBiscuit | (~MajorBisc@c-001-021-035.client.tudelft.eduvpn.nl) (Quit: WeeChat 3.6) |
2023-01-03 16:23:05 +0100 | MajorBiscuit | (~MajorBisc@83.22.42.172.ipv4.supernova.orange.pl) |
2023-01-03 16:23:14 +0100 | <c_wraith> | eldritchcookie[4: any chance you've got that module as a source dependency two different ways? |
2023-01-03 16:24:48 +0100 | MajorBiscuit | (~MajorBisc@83.22.42.172.ipv4.supernova.orange.pl) (Client Quit) |
2023-01-03 16:26:27 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1) |
2023-01-03 16:26:31 +0100 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
2023-01-03 16:29:55 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 16:30:32 +0100 | <eldritchcookie[4> | no idea what caused that rerunning hpack fixed it |
2023-01-03 16:30:54 +0100 | <geekosaur> | yet another reason not to trust hpack… |
2023-01-03 16:30:54 +0100 | <eldritchcookie[4> | when should i use normal unit tests? |
2023-01-03 16:32:10 +0100 | <eldritchcookie[4> | basically i want to test my library testing properties makes sense to me but when should i use a unit test? |
2023-01-03 16:32:43 +0100 | segfaultfizzbuzz | (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
2023-01-03 16:33:04 +0100 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2023-01-03 16:33:40 +0100 | tremon | (~tremon@83-85-213-108.cable.dynamic.v4.ziggo.nl) |
2023-01-03 16:39:35 +0100 | kee | (~~kee@user/wizzwizz4) |
2023-01-03 16:40:43 +0100 | <kee> | Is there a simple web server that doesn't require {-# LANGUAGE OverloadedStrings #-} ? |
2023-01-03 16:41:07 +0100 | <lyxia> | eldritchcookie[4: you can use docspec to make examples that double as unit tests |
2023-01-03 16:41:44 +0100 | <mauke> | doesn't OverloadedStrings just add a method call that you could write manually? |
2023-01-03 16:42:09 +0100 | <lyxia> | yes that's all it does |
2023-01-03 16:42:46 +0100 | <kee> | Huh. Thanks. |
2023-01-03 16:43:03 +0100 | <kee> | fromString? |
2023-01-03 16:44:04 +0100 | <lyxia> | eldritchcookie[4: also, the properties may not constrain the implementation enough. If you test a Semigroup instance only for associativity, you can trivially do x <> _ = x and satisfy associativity. |
2023-01-03 16:45:25 +0100 | <merijn> | kee: You probably just want to use Data.Text.pack over fromString, but yes |
2023-01-03 16:50:40 +0100 | <[exa]> | I guess fromString saves a dependency |
2023-01-03 16:50:51 +0100 | <[exa]> | (direct one) |
2023-01-03 16:51:27 +0100 | <kritzefitz> | eldritchcookie[4: Unit test can be useful to implement regression tests that would be hard to implement as properties. |
2023-01-03 16:52:16 +0100 | jao | (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
2023-01-03 16:54:54 +0100 | Guest9918 | (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 272 seconds) |
2023-01-03 16:56:09 +0100 | potash | (~foghorn@user/foghorn) |
2023-01-03 16:56:27 +0100 | mechap1 | (~mechap@user/mechap) |
2023-01-03 16:57:41 +0100 | ddellacosta | (~ddellacos@143.244.47.100) |
2023-01-03 16:59:09 +0100 | mechap | (~mechap@user/mechap) (Ping timeout: 260 seconds) |
2023-01-03 17:00:11 +0100 | mechap1 | (~mechap@user/mechap) (Client Quit) |
2023-01-03 17:00:32 +0100 | mechap | (~mechap@user/mechap) |
2023-01-03 17:00:37 +0100 | mei_ | (~mei@user/mei) (Quit: mei_) |
2023-01-03 17:00:53 +0100 | mei | (~mei@user/mei) |
2023-01-03 17:05:09 +0100 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) |
2023-01-03 17:06:23 +0100 | CiaoSen | (~Jura@p200300c9571bac002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
2023-01-03 17:10:26 +0100 | CiaoSen | (~Jura@p549cb938.dip0.t-ipconnect.de) |
2023-01-03 17:11:51 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
2023-01-03 17:11:52 +0100 | mei | (~mei@user/mei) (Quit: mei) |
2023-01-03 17:20:18 +0100 | jmdaemon | (~jmdaemon@user/jmdaemon) |
2023-01-03 17:22:36 +0100 | razetime | (~Thunderbi@49.207.222.244) (Quit: razetime) |
2023-01-03 17:25:39 +0100 | jakalx | (~jakalx@base.jakalx.net) () |
2023-01-03 17:27:11 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 264 seconds) |
2023-01-03 17:33:40 +0100 | jmorris | (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2023-01-03 17:35:59 +0100 | underlap | (~user@79-73-232-86.dynamic.dsl.as9105.com) |
2023-01-03 17:36:04 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
2023-01-03 17:37:11 +0100 | chele | (~chele@user/chele) |
2023-01-03 17:40:57 +0100 | <underlap> | Hi there. I've been using Rust and now now trying to learn Haskell more seriously. Can I embed hspec test modules in the same files as the runtime code I want to test? You see having parallel source and test directory trees feels old hat and reminds me of Java. I'd like hspec to be able to find and run all the test modules automatically. |
2023-01-03 17:41:03 +0100 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 265 seconds) |
2023-01-03 17:41:20 +0100 | <merijn> | underlap: Not really, tbh |
2023-01-03 17:41:36 +0100 | <underlap> | Ok, I'll have to live with it then. Thanks. |
2023-01-03 17:49:59 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 17:53:11 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
2023-01-03 17:56:27 +0100 | <eldritchcookie[4> | use template haskell you can put arbitrary io actions inside template haskell |
2023-01-03 17:57:15 +0100 | <monochrom> | Sure. I joked about playing a movie when waiting for compiling. |
2023-01-03 17:57:50 +0100 | jonathanx | (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) (Client Quit) |
2023-01-03 17:58:03 +0100 | <geekosaur> | some test engines have the ability to be embedded though |
2023-01-03 17:58:23 +0100 | <EvanR> | TH which spawns a video player? |
2023-01-03 17:58:38 +0100 | <monochrom> | I should have joked about mining bitcoins when waiting for compiling. >:) |
2023-01-03 17:58:42 +0100 | <eldritchcookie[4> | if you want sure |
2023-01-03 17:59:32 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2023-01-03 18:01:03 +0100 | malc | (~malc@109-252-130-144.dynamic.spd-mgts.ru) |
2023-01-03 18:01:28 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 18:01:34 +0100 | malc | (~malc@109-252-130-144.dynamic.spd-mgts.ru) (ERC 5.4.1 (IRC client for GNU Emacs 29.0.50)) |
2023-01-03 18:02:29 +0100 | Kaiepi | (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 246 seconds) |
2023-01-03 18:02:49 +0100 | thongpv87 | (~thongpv87@2402:9d80:3b5:d7b1:6629:a35e:8066:b5e3) |
2023-01-03 18:03:40 +0100 | <eldritchcookie[4> | i want to formally prove properties of my programs, specifically for proofs and considering my experience with haskell is agda or coq better? agda seems less focused on proofs but it is similar to haskell, however the wikipedia proof assistant page says it doesn't have proof automation so i am hesitant to waste time learning it, just to find out i have to write proofs by hand. |
2023-01-03 18:03:42 +0100 | td_ | (~td@83.135.9.22) (Ping timeout: 255 seconds) |
2023-01-03 18:04:44 +0100 | nschoe | (~q@2a01:e0a:8e:a190:79dc:4967:2fb4:bf93) (Ping timeout: 265 seconds) |
2023-01-03 18:05:29 +0100 | thongpv | (~thongpv87@2402:9d80:3f6:6d60:f56c:22a9:c5fd:d3ca) (Ping timeout: 255 seconds) |
2023-01-03 18:06:11 +0100 | underlap | (~user@79-73-232-86.dynamic.dsl.as9105.com) (Remote host closed the connection) |
2023-01-03 18:06:24 +0100 | underlap | (~user@79-73-232-86.dynamic.dsl.as9105.com) |
2023-01-03 18:09:31 +0100 | nschoe | (~q@2a01:e0a:8e:a190:667f:85b9:e241:9bc7) |
2023-01-03 18:10:42 +0100 | td_ | (~td@83.135.9.22) |
2023-01-03 18:11:19 +0100 | nschoe | (~q@2a01:e0a:8e:a190:667f:85b9:e241:9bc7) (Client Quit) |
2023-01-03 18:12:37 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
2023-01-03 18:15:39 +0100 | Kaiepi | (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) |
2023-01-03 18:17:28 +0100 | titibandit | (~titibandi@xdsl-89-0-163-79.nc.de) |
2023-01-03 18:20:40 +0100 | <underlap> | TH looks very interesting, but since I might like to share my code with students doing their first functional programming module, I'd better not stray too far off piste. |
2023-01-03 18:23:52 +0100 | <dolio> | eldritchcookie[4: There's some new Agda stuff specifically designed for clean mapping back to Haskell, so that you can take advantage of moderately fancier features of Agda, but still get readable Haskell out. |
2023-01-03 18:24:00 +0100 | <dolio> | It depends a lot on what you want to do, though. |
2023-01-03 18:24:51 +0100 | lortabac | (~lortabac@2a01:e0a:541:b8f0:3054:ac62:76b7:6154) (Quit: WeeChat 2.8) |
2023-01-03 18:25:35 +0100 | <geekosaur> | huh. wasn't agda the one that compiled to haskell more or less by wrapping everything in `unsafeCoerce`? |
2023-01-03 18:25:55 +0100 | <dolio> | Yes, I think that's how the older compiler works. |
2023-01-03 18:26:24 +0100 | <dolio> | But there's a new one that restricts the Agda features you're allowed to use so that there's a more obvious mapping back to Haskell, just by erasing certain things. |
2023-01-03 18:26:40 +0100 | <dolio> | https://jesper.sikanda.be/files/reasonable-agda-is-correct-haskell.pdf |
2023-01-03 18:29:33 +0100 | nut | (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
2023-01-03 18:31:31 +0100 | xsperry | (~xs@user/xsperry) (Ping timeout: 268 seconds) |
2023-01-03 18:34:39 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2023-01-03 18:35:27 +0100 | king_gs | (~Thunderbi@187.201.110.169) |
2023-01-03 18:37:46 +0100 | ian2 | (~ian@2607:fea8:2d1f:8400::55bd) |
2023-01-03 18:38:02 +0100 | Tuplanolla | (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) |
2023-01-03 18:38:05 +0100 | ian2 | qutebrowsershill |
2023-01-03 18:42:38 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) |
2023-01-03 18:42:53 +0100 | raym | (~ray@user/raym) (Quit: leaving) |
2023-01-03 18:43:56 +0100 | mbuf | (~Shakthi@49.205.80.42) (Quit: Leaving) |
2023-01-03 18:49:44 +0100 | iteratee_ | (~kyle@162.218.222.107) (Ping timeout: 246 seconds) |
2023-01-03 18:52:57 +0100 | iteratee | (~kyle@162.218.222.107) |
2023-01-03 18:53:17 +0100 | chele | (~chele@user/chele) (Remote host closed the connection) |
2023-01-03 18:57:20 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
2023-01-03 18:57:39 +0100 | qutebrowsershill | (~ian@2607:fea8:2d1f:8400::55bd) (Quit: WeeChat 3.7.1) |
2023-01-03 19:00:19 +0100 | avicenzi | (~avicenzi@2a00:ca8:a1f:b004::c32) (Ping timeout: 265 seconds) |
2023-01-03 19:00:30 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
2023-01-03 19:01:37 +0100 | dsrt^ | (~dsrt@76.145.185.103) (Remote host closed the connection) |
2023-01-03 19:03:32 +0100 | mechap | (~mechap@user/mechap) (Ping timeout: 255 seconds) |
2023-01-03 19:03:55 +0100 | king_gs | (~Thunderbi@187.201.110.169) (Read error: Connection reset by peer) |
2023-01-03 19:05:23 +0100 | mechap | (~mechap@user/mechap) |
2023-01-03 19:05:32 +0100 | CiaoSen | (~Jura@p549cb938.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
2023-01-03 19:05:53 +0100 | king_gs | (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
2023-01-03 19:06:44 +0100 | tzh | (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
2023-01-03 19:06:51 +0100 | bsima | (~bsima@143.198.118.179) (Quit: ZNC 1.8.2 - https://znc.in) |
2023-01-03 19:07:30 +0100 | bsima | (~bsima@143.198.118.179) |
2023-01-03 19:10:25 +0100 | <underlap> | Looking at an example repo from hspec, I see it uses hpack rather than vanilla Cabal. Which is the commonly accepted best practice for a package format? |
2023-01-03 19:11:59 +0100 | <geekosaur> | you can install hpack by itself and run it to produce a cabal file |
2023-01-03 19:12:33 +0100 | <geekosaur> | although these days stack users are actively encouraged to distribute a cabal file rather than require that of users |
2023-01-03 19:12:45 +0100 | <sclv> | yep, even when people use hspec its recommended they also check in the generated cabal file |
2023-01-03 19:13:24 +0100 | <sclv> | and as far as "commonly accepted" people do it both ways, but i'd say its only a minority of packages that use hspec -- cabal files themselves provide nearly all feature extensions hspec has these days |
2023-01-03 19:13:47 +0100 | <geekosaur> | do you mean hpack there (twice)? |
2023-01-03 19:13:52 +0100 | <geekosaur> | 3 times |
2023-01-03 19:13:55 +0100 | <sclv> | oh yep, lmao |
2023-01-03 19:14:19 +0100 | troydm | (~troydm@host-176-37-124-197.b025.la.net.ua) (Ping timeout: 252 seconds) |
2023-01-03 19:14:25 +0100 | <underlap> | phew, that was getting confusing |
2023-01-03 19:15:33 +0100 | <underlap> | So perhaps a decent approach is to use hpack to get started, generate a cabal file, and then delete the hpack stuff and maintain the cabal file? |
2023-01-03 19:16:01 +0100 | <geekosaur> | or hold onto hpack in case this comes up again later |
2023-01-03 19:16:46 +0100 | <sclv> | i mean i'd advocate just using a cabal file directly, no reason to use hspec imho |
2023-01-03 19:16:56 +0100 | <sclv> | `cabal init` gives you a nice cabal file with lots of comments |
2023-01-03 19:16:59 +0100 | <underlap> | I was assuming hpack doesn't do a good job of merging changes into the cabal file and I was trying to avoid dual maintenance. |
2023-01-03 19:17:13 +0100 | <sclv> | it doesn't merge changes in! it just generates a new one. |
2023-01-03 19:17:24 +0100 | <sclv> | any edits you make to the cabal file get stomped when you run hpack again |
2023-01-03 19:18:12 +0100 | troydm | (~troydm@host-176-37-124-197.b025.la.net.ua) |
2023-01-03 19:18:49 +0100 | <underlap> | Right - as expected. My only reason for considering using hpack is newbieness and not knowing all the ins and outs of cabal files just yet. I need to set up src and test directories and line up the modules for hspec-discover and I feel I could waste some time discovering conventions which hpack might automate. |
2023-01-03 19:19:15 +0100 | nasrudin__ | (~nasrudin_@107-132-214-117.lightspeed.sndgca.sbcglobal.net) |
2023-01-03 19:20:31 +0100 | econo | (uid147250@user/econo) |
2023-01-03 19:21:40 +0100 | <sclv> | fair dos. i don't recall the details of hspec-discover but i don't think its that tricky. my advice as a newb is to not mess with it at all though and just use the bog standard stuff until you feel more comfortable. no reason to learn too many things at once, even if it saves a little boilerplate. |
2023-01-03 19:23:03 +0100 | <sclv> | for testing, i recommend not to use something like hspec directly, but instead an integrated test framework like tasty, whose syntax may also be a bit less clunky https://hackage.haskell.org/package/tasty |
2023-01-03 19:23:22 +0100 | waleee | (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
2023-01-03 19:24:24 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 19:24:25 +0100 | <underlap> | That's good advice. I'm new to haskell, but an old lag at development, so I don't like writing/maintaining excess boilerplate. I looked at tasty earlier, but am put off because it supports multiple test frameworks. I'd prefer to pick one, like hspec, and stick with it. I've used similar frameworks to hspec in the past, so I like the style. |
2023-01-03 19:25:26 +0100 | <sclv> | even for one framework alone, i think tasty has nice ergonomics and a good runner. but i'd also really recommend trying quickcheck-style tests if you haven't used them yet, they're really a game changer |
2023-01-03 19:26:01 +0100 | <underlap> | Ok, I'll certainly bear that in mind, thanks! Gotta run off and cook... |
2023-01-03 19:27:11 +0100 | CiaoSen | (~Jura@p200300c9572e35002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
2023-01-03 19:30:49 +0100 | underlap | (~user@79-73-232-86.dynamic.dsl.as9105.com) (Ping timeout: 260 seconds) |
2023-01-03 19:32:48 +0100 | CiaoSen | (~Jura@p200300c9572e35002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
2023-01-03 19:33:47 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 264 seconds) |
2023-01-03 19:34:33 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
2023-01-03 19:39:51 +0100 | <Inst__> | can someone help me with layout rules in Haskell? |
2023-01-03 19:39:56 +0100 | <Inst__> | I'm trying to translate everything to explicit braces |
2023-01-03 19:40:20 +0100 | <Inst__> | the problem is, I can't get names to assume a brace form |
2023-01-03 19:41:11 +0100 | <geekosaur> | I don't understand what you mean by the problem |
2023-01-03 19:42:35 +0100 | <geekosaur> | > do { let { a = 5 }; print a } -- which won't print but shows how this works |
2023-01-03 19:42:36 +0100 | <lambdabot> | <IO ()> |
2023-01-03 19:44:10 +0100 | nckx | guix |
2023-01-03 19:44:18 +0100 | guix | nck |
2023-01-03 19:44:19 +0100 | nck | nckx |
2023-01-03 19:45:25 +0100 | <Inst__> | main = print "Hello World!" works, but main = {print "Hello World!"} isn't |
2023-01-03 19:45:35 +0100 | <Inst__> | {main = print "Hello World!"} doesn't work either |
2023-01-03 19:45:38 +0100 | <Inst__> | except in GHCI |
2023-01-03 19:46:01 +0100 | <geekosaur> | because layout requires a layout-introducing keyword such as `let` or `do` or `case` |
2023-01-03 19:46:15 +0100 | <Inst__> | or where, in particular |
2023-01-03 19:46:20 +0100 | <geekosaur> | braces elsewhere are understood as record syntax |
2023-01-03 19:46:28 +0100 | <geekosaur> | yes, `where` also introduces layout |
2023-01-03 19:46:39 +0100 | <Inst__> | i guess the better way to think of it is that all names are one-liners fundamentally |
2023-01-03 19:46:46 +0100 | <geekosaur> | so `main = do { print "Hello World!" } is valid |
2023-01-03 19:48:08 +0100 | <Inst__> | the idea is that i want to be able to teach whitespace layout rules via braces |
2023-01-03 19:48:28 +0100 | <geekosaur> | then you need to know what introduces layout |
2023-01-03 19:48:29 +0100 | johnw | (~johnw@2600:1700:cf00:db0:bccc:cdbd:ef47:1293) (Quit: ZNC - http://znc.in) |
2023-01-03 19:48:39 +0100 | <Inst__> | "module Main where" |
2023-01-03 19:49:13 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 19:49:38 +0100 | <[exa]> | I always read that as a question |
2023-01-03 19:49:47 +0100 | <geekosaur> | ``The layout (or “off-side”) rule takes effect whenever the open brace is omitted after the keyword where, let, do, or of.`` |
2023-01-03 19:50:06 +0100 | <geekosaur> | the open brace must immediately follow the `where` in that case |
2023-01-03 19:50:24 +0100 | <geekosaur> | you can't have type signatures, eimports, etc. before it |
2023-01-03 19:50:54 +0100 | <geekosaur> | in particular, you also can't have a newline because that switches it to layout mode |
2023-01-03 19:54:36 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 19:56:19 +0100 | <mauke> | the newline bit would surprise me |
2023-01-03 19:56:24 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
2023-01-03 19:56:47 +0100 | <geekosaur> | why? at that point it has to look for indentation to see how the layout block is defined |
2023-01-03 19:57:16 +0100 | <geekosaur> | it's committed and can't go back |
2023-01-03 19:57:53 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
2023-01-03 19:59:01 +0100 | <mauke> | ^ works here |
2023-01-03 19:59:02 +0100 | mauke | sent a haskell code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/a1c6f39a2bb6b8cf94af2da4831ecab7ccf7… |
2023-01-03 20:01:22 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) (Remote host closed the connection) |
2023-01-03 20:01:55 +0100 | <geekosaur> | Inst__, can you show the full module which triggers your error with the braces? |
2023-01-03 20:04:15 +0100 | <mauke> | "I guess the better way to think of it is that all names are one-liners fundamentally" <- or in other words, names are bound to (single) expressions |
2023-01-03 20:04:26 +0100 | <Inst__> | i think i tossed mine |
2023-01-03 20:04:48 +0100 | <mauke> | do notation ultimately turns into a simple expression, too |
2023-01-03 20:05:04 +0100 | <Inst__> | yeah, i know |
2023-01-03 20:05:14 +0100 | <Inst__> | was expecting to be able to show every term as its own brace-set |
2023-01-03 20:05:56 +0100 | <mauke> | ah |
2023-01-03 20:06:05 +0100 | <mauke> | yeah, that's not how the syntax works |
2023-01-03 20:06:06 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
2023-01-03 20:06:48 +0100 | fizbin | (~fizbin@user/fizbin) (Ping timeout: 272 seconds) |
2023-01-03 20:07:22 +0100 | sammelweis | (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
2023-01-03 20:09:27 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) |
2023-01-03 20:11:25 +0100 | <mauke> | I guess do notation is "weird" in that (like the other layout keywords) it desugars formatting into braces and semicolons, but then (unlike the others) it gets rid of the braces/semicolons again |
2023-01-03 20:12:28 +0100 | <mauke> | for the other layout keywords, braces/semicolons are the real syntax; it is just do that is entirely sugar |
2023-01-03 20:13:28 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer) |
2023-01-03 20:13:32 +0100 | <monochrom> | https://www.haskell.org/onlinereport/haskell2010/haskellch10.html#x17-17800010.3 teaches layout rules by braces. |
2023-01-03 20:14:07 +0100 | merijn | (~merijn@c-001-001-006.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds) |
2023-01-03 20:15:06 +0100 | beefbambi | (~beefbambi@183.82.178.237) |
2023-01-03 20:15:41 +0100 | beteigeuze | (~Thunderbi@bl14-81-220.dsl.telepac.pt) |
2023-01-03 20:23:13 +0100 | coot | (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
2023-01-03 20:23:19 +0100 | beefbambi | (~beefbambi@183.82.178.237) (Ping timeout: 260 seconds) |
2023-01-03 20:23:42 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) |
2023-01-03 20:25:04 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer) |
2023-01-03 20:25:21 +0100 | beefbambi | (~beefbambi@183.82.178.237) |
2023-01-03 20:27:58 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) |
2023-01-03 20:28:32 +0100 | notzmv | (~zmv@user/notzmv) |
2023-01-03 20:28:52 +0100 | titibandit | (~titibandi@xdsl-89-0-163-79.nc.de) (Remote host closed the connection) |
2023-01-03 20:29:48 +0100 | titibandit | (~titibandi@xdsl-89-0-163-79.nc.de) |
2023-01-03 20:31:36 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 20:34:47 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 246 seconds) |
2023-01-03 20:34:52 +0100 | cheater_ | cheater |
2023-01-03 20:36:33 +0100 | son0p | (~ff@2604:3d08:5b7f:5540:98a9:2169:15a1:4c7f) |
2023-01-03 20:42:03 +0100 | beefbambi | (~beefbambi@183.82.178.237) (Read error: Connection reset by peer) |
2023-01-03 20:42:22 +0100 | beefbambi | (~beefbambi@37.19.205.149) |
2023-01-03 20:44:56 +0100 | gmg | (~user@user/gehmehgeh) (Quit: Leaving) |
2023-01-03 20:46:41 +0100 | panovia | (~user@user/siracusa) |
2023-01-03 20:52:26 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) |
2023-01-03 21:06:22 +0100 | vulpine | (xfnw@tilde.team) (Quit: Connection reset by purr) |
2023-01-03 21:10:36 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) (Remote host closed the connection) |
2023-01-03 21:12:44 +0100 | tvandinther | (~tvandinth@2404:4408:872e:6000:e419:79c8:af6:d84c) |
2023-01-03 21:14:02 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) |
2023-01-03 21:16:42 +0100 | <VOID[m]> | Fellas I have a problem with stack build, is it ok to ask here, or is there some more specific channel? |
2023-01-03 21:17:06 +0100 | <geekosaur> | here is fine |
2023-01-03 21:17:12 +0100 | <VOID[m]> | Stack cannot build, gives me linking error /usr/bin/ld.gold: error: HSasn1-types-0.3.4-KIoPqxccKSq8AWVhQf2suX: malformed archive header at 8 |
2023-01-03 21:17:28 +0100 | <geekosaur> | there is #haskell-stack but I don't think it's very active |
2023-01-03 21:18:25 +0100 | <geekosaur> | that sounds very wrong |
2023-01-03 21:19:36 +0100 | <geekosaur> | it sounds like somehow the linker has been passed the package directory instead of the archive file within it |
2023-01-03 21:19:52 +0100 | <geekosaur> | (the file name should end in `.a` or `.so`) |
2023-01-03 21:20:30 +0100 | <geekosaur> | hm, except that wouldn't have `HS` prefix |
2023-01-03 21:20:59 +0100 | <VOID[m]> | I have no idea what to do with that or how to debug it... cabal build seems to work, when run in the same directory, which is even more surprising (unless I don't understand something) |
2023-01-03 21:21:00 +0100 | <VOID[m]> | I don't think it is foreign, I thought asn1-types is pure Haskell? |
2023-01-03 21:21:18 +0100 | king_gs | (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Quit: king_gs) |
2023-01-03 21:21:28 +0100 | <geekosaur> | it's trying to link a Haskell library, certainly |
2023-01-03 21:21:35 +0100 | <geekosaur> | but the library is corrupt |
2023-01-03 21:22:18 +0100 | <VOID[m]> | I think it's all part of http-client, the tls part uses asn1-types |
2023-01-03 21:22:33 +0100 | <VOID[m]> | that's basically all I was able to debug by myself :P |
2023-01-03 21:22:37 +0100 | <geekosaur> | it should start with `#<arch>\n` |
2023-01-03 21:23:21 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Ping timeout: 256 seconds) |
2023-01-03 21:24:03 +0100 | <geekosaur> | sadly I don't seem to have asn1-types built locally so I don't have much else to go on |
2023-01-03 21:24:16 +0100 | <VOID[m]> | I can give you more logs, lemme just strip some names from them |
2023-01-03 21:24:43 +0100 | beefbambi | (~beefbambi@37.19.205.149) (Ping timeout: 248 seconds) |
2023-01-03 21:25:03 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) (Ping timeout: 256 seconds) |
2023-01-03 21:25:06 +0100 | werneta | (~werneta@137.79.225.119) |
2023-01-03 21:25:33 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) |
2023-01-03 21:25:56 +0100 | VOID[m] | sent a code block: https://libera.ems.host/_matrix/media/v3/download/libera.chat/86b7151e316a961e960a57909bcc90746570… |
2023-01-03 21:25:57 +0100 | <VOID[m]> | How is it possible, that cabal build works but stack build doesn't? |
2023-01-03 21:25:58 +0100 | beefbambi | (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer) |
2023-01-03 21:26:00 +0100 | <VOID[m]> | I thought cabal stuff in the project is generated from stack stuff? |
2023-01-03 21:26:16 +0100 | beefbambi | (~beefbambi@183.82.178.237) |
2023-01-03 21:26:55 +0100 | <geekosaur> | that's not the point here. the point is your `asn1-types` package in stack's store is corrupt |
2023-01-03 21:26:55 +0100 | nckx | jeffbezos |
2023-01-03 21:27:02 +0100 | jeffbezos | nckx |
2023-01-03 21:27:19 +0100 | <geekosaur> | the one in cabal's store (which is different) isn't |
2023-01-03 21:27:33 +0100 | <VOID[m]> | can I clean it? redownload? recompile? anything like that? I tried stack clean --full |
2023-01-03 21:27:53 +0100 | <VOID[m]> | Can I replace it with the cabal one by hand maybe? Or find a difference? |
2023-01-03 21:27:56 +0100 | <VOID[m]> | What are the steps to debug that... |
2023-01-03 21:28:14 +0100 | <geekosaur> | I don't know stack well enough to say anything beyond removing all of `~/.stack` which is probably overkill |
2023-01-03 21:28:36 +0100 | <geekosaur> | and no, you can't replace it with the one in `~/.cabal/store` |
2023-01-03 21:28:55 +0100 | jrm | (~jrm@user/jrm) (Quit: ciao) |
2023-01-03 21:28:57 +0100 | <geekosaur> | anything linked against stack's version will break |
2023-01-03 21:29:14 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:30:01 +0100 | <geekosaur> | granting anything linked against stack's version is broken now, but you can force rebuilds by removing `~/.stack` or something underneath it; dropping in an incompatible build will not be detected or fixed |
2023-01-03 21:30:53 +0100 | <VOID[m]> | am trying rm -rf ~/.stack |
2023-01-03 21:31:19 +0100 | jrm | (~jrm@user/jrm) (Client Quit) |
2023-01-03 21:31:41 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:31:43 +0100 | jrm | (~jrm@user/jrm) (Remote host closed the connection) |
2023-01-03 21:32:58 +0100 | <geekosaur> | you should have saved the config file first |
2023-01-03 21:33:26 +0100 | <VOID[m]> | I haven't modified anything in that dir ever by hand, so that should not be a problem, should it? |
2023-01-03 21:33:40 +0100 | <geekosaur> | hm, maybe it's okay |
2023-01-03 21:33:54 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:34:10 +0100 | <VOID[m]> | Well too late to backup anything in there now anyway :P |
2023-01-03 21:35:05 +0100 | jrm | (~jrm@user/jrm) (Client Quit) |
2023-01-03 21:35:53 +0100 | tvandinther | (~tvandinth@2404:4408:872e:6000:e419:79c8:af6:d84c) (Ping timeout: 260 seconds) |
2023-01-03 21:36:17 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:37:01 +0100 | jrm | (~jrm@user/jrm) (Remote host closed the connection) |
2023-01-03 21:40:01 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:41:08 +0100 | <VOID[m]> | geekosaur: it worked |
2023-01-03 21:41:27 +0100 | <VOID[m]> | I am surprised stack clean --full doesn't clean all cleanable things... |
2023-01-03 21:41:44 +0100 | <geekosaur> | you generally don't want it to nuke everything you've built |
2023-01-03 21:41:55 +0100 | <geekosaur> | you will be doing a lot of rebuilding in that case |
2023-01-03 21:41:59 +0100 | <VOID[m]> | That's why I used --full :P |
2023-01-03 21:42:09 +0100 | jrm | (~jrm@user/jrm) (Client Quit) |
2023-01-03 21:42:27 +0100 | eggplantade | (~Eggplanta@2600:1700:38c5:d800:4dbe:e8ec:bab1:6e35) (Remote host closed the connection) |
2023-01-03 21:42:59 +0100 | <VOID[m]> | I am pretty sure by default it's shallow, not full |
2023-01-03 21:44:06 +0100 | coot | (~coot@213.134.171.3) |
2023-01-03 21:44:40 +0100 | phma | (phma@2001:5b0:211b:f318:7482:d8c2:3f03:7c4c) (Read error: Connection reset by peer) |
2023-01-03 21:44:50 +0100 | <dmj`> | is anyone aware of any research related to a dependently type lambda calculus that also has row types? sounds interesting |
2023-01-03 21:45:17 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:45:24 +0100 | jrm | (~jrm@user/jrm) (Remote host closed the connection) |
2023-01-03 21:45:33 +0100 | phma | (phma@2001:5b0:2144:7708:13f:34e:4754:4d0e) |
2023-01-03 21:48:33 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 21:49:03 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
2023-01-03 21:49:36 +0100 | perrierjouet | (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1) |
2023-01-03 21:50:38 +0100 | perrierjouet | (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) |
2023-01-03 21:50:44 +0100 | vulpine | (xfnw@tilde.team) |
2023-01-03 21:55:46 +0100 | freeside | (~mengwong@103.252.202.159) (Ping timeout: 265 seconds) |
2023-01-03 22:03:02 +0100 | <eldritchcookie[4> | with callCC is there any way to escape with the exception continuation? |
2023-01-03 22:06:01 +0100 | jrm | (~jrm@user/jrm) (Quit: ciao) |
2023-01-03 22:06:24 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 22:06:33 +0100 | cheater_ | (~Username@user/cheater) |
2023-01-03 22:07:48 +0100 | freeside | (~mengwong@103.252.202.159) |
2023-01-03 22:09:31 +0100 | cheater | (~Username@user/cheater) (Ping timeout: 248 seconds) |
2023-01-03 22:09:40 +0100 | cheater_ | cheater |
2023-01-03 22:09:45 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) |
2023-01-03 22:09:50 +0100 | cheater | (~Username@user/cheater) (Client Quit) |
2023-01-03 22:10:29 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-01-03 22:11:34 +0100 | nut | (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 272 seconds) |
2023-01-03 22:13:08 +0100 | werneta | (~werneta@137.79.225.119) (Ping timeout: 246 seconds) |
2023-01-03 22:14:59 +0100 | infty | (~infty@80-62-117-240-mobile.dk.customer.tdc.net) |
2023-01-03 22:15:03 +0100 | Guest9918 | (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
2023-01-03 22:15:09 +0100 | werneta | (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
2023-01-03 22:16:21 +0100 | <infty> | Hello channel! I'm trying to learn some Haskell so I'll probably ask questions here in the near future, so I thought I'd start with greetings |
2023-01-03 22:16:45 +0100 | <geekosaur> | hello! |
2023-01-03 22:16:57 +0100 | jrm | (~jrm@user/jrm) (Quit: ciao) |
2023-01-03 22:17:16 +0100 | jrm | (~jrm@user/jrm) |
2023-01-03 22:17:43 +0100 | <yushyin> | hi and welcome infty :) |
2023-01-03 22:17:53 +0100 | <eldritchcookie[4> | hello |
2023-01-03 22:18:28 +0100 | fserucas | (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Ping timeout: 260 seconds) |
2023-01-03 22:18:31 +0100 | <jle``> | iqubic: ah yeah you can't really directly convert an infinite haskell list into a mutable list using the mutable library, but the library basically gives you poitner manipulation so you can create a linked list with a cycle which is infinite if you iterate over it. i'm not sure if it will freeze properly though |
2023-01-03 22:18:33 +0100 | <jle``> | infty: welcome :) |
2023-01-03 22:18:41 +0100 | jle`` | (~jusle@user/jle/x-3894663) (Quit: WeeChat 3.6) |
2023-01-03 22:19:17 +0100 | <iqubic> | jle``: The library is actually broken, due to Vinyl being updated eventually. |
2023-01-03 22:20:01 +0100 | cheater | (~Username@user/cheater) |
2023-01-03 22:22:20 +0100 | <sm> | VOID: I hear that, but clean is for cleaning a stack project, not the machine's stack installation. (And --full is a silly wart IMHO) |
2023-01-03 22:23:11 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection) |
2023-01-03 22:23:14 +0100 | <sm> | stack manages projects, ghcup/brew/apt/... manages stack |
2023-01-03 22:23:44 +0100 | <geekosaur> | aren't there tools to manage stack's package store? I know there are a few for cabal |
2023-01-03 22:24:01 +0100 | <VOID[m]> | sm: It feels like there should be some command for cleaning stack cache, clean would be intuitive |
2023-01-03 22:24:10 +0100 | <sm> | right, and yet another tool manages stack's data... stack-clean-old is one |
2023-01-03 22:24:31 +0100 | <sm> | should that be built in to stack ? Yes I think you're right |
2023-01-03 22:24:35 +0100 | <sm> | it should |
2023-01-03 22:25:03 +0100 | <geekosaur> | cabal-extras even has a tool to detect and optionally remove broken packages, iirc |
2023-01-03 22:25:13 +0100 | <geekosaur> | which is what would have been useful here |
2023-01-03 22:25:56 +0100 | <sm> | aha, I remember making a shell/ghc-pkg script for that years ago, my first haskell-related script :) |
2023-01-03 22:27:31 +0100 | <sm> | https://gist.github.com/simonmichael/1185421 :) should still work inside cabal exec -- or stack exec -- |
2023-01-03 22:30:12 +0100 | jakalx | (~jakalx@base.jakalx.net) (Error from remote client) |
2023-01-03 22:31:14 +0100 | jakalx | (~jakalx@base.jakalx.net) |
2023-01-03 22:31:21 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 22:33:41 +0100 | elkcl | (~elkcl@broadband-188-255-19-11.ip.moscow.rt.ru) (Ping timeout: 255 seconds) |
2023-01-03 22:34:02 +0100 | elkcl | (~elkcl@broadband-188-255-19-11.ip.moscow.rt.ru) |
2023-01-03 22:34:45 +0100 | trev | (~trev@user/trev) (Remote host closed the connection) |
2023-01-03 22:35:53 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 265 seconds) |
2023-01-03 22:36:47 +0100 | bgs | (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
2023-01-03 22:37:12 +0100 | gmg | (~user@user/gehmehgeh) |
2023-01-03 22:44:03 +0100 | merijn | (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 255 seconds) |
2023-01-03 22:45:16 +0100 | ulvarref` | (~user@185.24.53.152) |
2023-01-03 22:45:52 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
2023-01-03 22:47:26 +0100 | ulvarrefr | (~user@188.124.56.153) (Ping timeout: 268 seconds) |
2023-01-03 22:50:48 +0100 | infty | (~infty@80-62-117-240-mobile.dk.customer.tdc.net) (Quit: Lost terminal) |
2023-01-03 22:50:50 +0100 | Kaiepi | (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 272 seconds) |
2023-01-03 22:52:46 +0100 | perrierjouet | (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 3.7.1) |
2023-01-03 22:52:57 +0100 | liskin | (~liskin@xmonad/liskin) (Quit: liskin) |
2023-01-03 22:54:56 +0100 | perrierjouet | (~perrier-j@modemcable048.127-56-74.mc.videotron.ca) |
2023-01-03 22:56:04 +0100 | nasrudin__ | (~nasrudin_@107-132-214-117.lightspeed.sndgca.sbcglobal.net) (Ping timeout: 268 seconds) |
2023-01-03 22:58:21 +0100 | coot | (~coot@213.134.171.3) (Quit: coot) |
2023-01-03 22:58:35 +0100 | liskin | (~liskin@xmonad/liskin) |
2023-01-03 22:58:35 +0100 | ulvarref` | (~user@185.24.53.152) (Ping timeout: 248 seconds) |
2023-01-03 23:00:23 +0100 | nabaiste^ | (~nabaiste@76.145.185.103) |
2023-01-03 23:03:39 +0100 | unit73e | (~emanuel@2001:818:e8dd:7c00:656:e5ff:fe72:9d36) |
2023-01-03 23:07:34 +0100 | nasrudin__ | (~nasrudin_@174.78.12.234) |
2023-01-03 23:10:35 +0100 | ChaiTRex | (~ChaiTRex@user/chaitrex) |
2023-01-03 23:16:59 +0100 | <talismanick> | Using HLS with Emacs lsp-mode. Why might applying hlint suggested edits be failing? |
2023-01-03 23:17:35 +0100 | <talismanick> | lsp-workspace-command-execute: ‘workspace/executeCommand’ with ‘23955:hlint:applyOne’ failed. |
2023-01-03 23:18:38 +0100 | <talismanick> | I can still apply code actions like "add signature to function" or disable the warning with a pragma, but hlint suggestions, specifically, fail as such |
2023-01-03 23:24:01 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
2023-01-03 23:28:35 +0100 | eggplantade | (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 255 seconds) |
2023-01-03 23:36:49 +0100 | Kaiepi | (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) |
2023-01-03 23:43:43 +0100 | gnalzo | (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1) |
2023-01-03 23:49:06 +0100 | mizlan | (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 268 seconds) |
2023-01-03 23:51:05 +0100 | ddellacosta | (~ddellacos@143.244.47.100) (Ping timeout: 255 seconds) |
2023-01-03 23:55:10 +0100 | emmanuelux | (~emmanuelu@user/emmanuelux) |