2024/10/25

2024-10-25 00:03:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 00:03:08 +0200 <justsomeguy> Haskell error messages can be gnarly, sometimes, when there's a lot of polymorphism.
2024-10-25 00:06:09 +0200vglfr(~vglfr@2607:fb90:eab7:5356:ac39:c397:6933:1a7b) (Ping timeout: 246 seconds)
2024-10-25 00:06:21 +0200 <zero> just found out that you can have uninitiated record fields. ugh
2024-10-25 00:06:35 +0200 <haskellbridge> <sm> yes.. you get good at pattern-matching / distilling them
2024-10-25 00:06:44 +0200 <EvanR> there should be a warning for that
2024-10-25 00:06:49 +0200 <haskellbridge> <sm> +(error messages)
2024-10-25 00:07:00 +0200 <EvanR> constructing a record without defining all the fields
2024-10-25 00:07:11 +0200 <zero> there is a warning message
2024-10-25 00:07:13 +0200 <haskellbridge> <sm> * youwill
2024-10-25 00:07:18 +0200 <zero> imo it should be an error
2024-10-25 00:07:18 +0200 <haskellbridge> <sm> * you will
2024-10-25 00:07:27 +0200 <EvanR> you can set warnings = errors xD
2024-10-25 00:07:35 +0200 <haskellbridge> <sm> yes, that's what -Werror is for
2024-10-25 00:08:02 +0200 <EvanR> but since any given value may be an undefined or an infinite loop, it still doesn't fully save you
2024-10-25 00:08:24 +0200 <EvanR> strict fields in the record will make it easier to notice sooner
2024-10-25 00:08:54 +0200mrmonday(~robert@what.i.hope.is.not.a.tabernaevagant.es) (Quit: .)
2024-10-25 00:09:25 +0200 <monochrom> uninited fields = initialized to undefined
2024-10-25 00:10:47 +0200 <EvanR> [1, let x = x in x, 4, 8, 16]
2024-10-25 00:10:47 +0200vglfr(~vglfr@2607:fb91:845:141a:ad2:e57:b1d0:dd1d) vglfr
2024-10-25 00:10:53 +0200mrmonday(~robert@what.i.hope.is.not.a.tabernaevagant.es) mrmonday
2024-10-25 00:11:04 +0200 <EvanR> can I haz warning
2024-10-25 00:11:26 +0200 <sm> oops sorry for edits
2024-10-25 00:12:25 +0200 <EvanR> IRC returns you to a jane austen-like time where you had to write out your whole message with no typos and perfect grammar the first time
2024-10-25 00:12:55 +0200sm(~znc@plaintextaccounting/sm) ()
2024-10-25 00:13:54 +0200 <monochrom> Clearly, I only simulate to write perfectly the first time by proofreading and editing multiple times before I press enter. :)
2024-10-25 00:14:26 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 00:15:04 +0200 <EvanR> nobody got time for that
2024-10-25 00:16:51 +0200sm(~znc@plaintextaccounting/sm) sm
2024-10-25 00:17:17 +0200 <sm> I'll try that again:
2024-10-25 00:17:20 +0200 <sm> I admire your vision EvanR, I shall try to keep it in mind.
2024-10-25 00:17:30 +0200 <zero> enter keys should require higher actuation force than the others
2024-10-25 00:17:47 +0200 <EvanR> they should require a license
2024-10-25 00:18:03 +0200 <int-e> EvanR: don't give the manufacturers ideas
2024-10-25 00:18:13 +0200 <zero> [ ] I have read and agree to the terms of pressing this key.
2024-10-25 00:18:58 +0200 <EvanR> keyboard not detected. Press any key to continue
2024-10-25 00:19:10 +0200 <int-e> EvanR: though it'll probably be structured differently; you get the return key for free but enabling backspace will require a subscription
2024-10-25 00:19:13 +0200 <zero> _Select all squares with *traffic lights*_
2024-10-25 00:19:20 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 00:20:24 +0200 <zero> "Before pressing this key: Have you considered a donation? [ ] 5$ [ ] 10$ [ ] 20$ (other options)
2024-10-25 00:20:31 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2024-10-25 00:20:51 +0200 <tomsmeding> the keys will have small embedded LEDs that make crude pictures, and you should press the keys that look like traffic lights
2024-10-25 00:21:43 +0200 <zero> You have reached your daily limit for the Enter key. Please wait XX seconds. TIRED OF WAITING? CLICK [HERE] FOR ENTER PREMIUM*
2024-10-25 00:23:45 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 248 seconds)
2024-10-25 00:23:48 +0200ljdarj1ljdarj
2024-10-25 00:24:23 +0200 <EvanR> probably something that will be on phones first
2024-10-25 00:26:23 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) Smiles
2024-10-25 00:29:56 +0200 <geekosaur> to be shortly followed by apps that will defeat it
2024-10-25 00:30:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 00:30:41 +0200 <Rembane> The circle of life
2024-10-25 00:30:59 +0200 <zero> create the problem, sell the solution
2024-10-25 00:32:01 +0200 <zero> this message brought to you by NordVPN
2024-10-25 00:32:13 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.6)
2024-10-25 00:35:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 00:36:49 +0200vglfr(~vglfr@2607:fb91:845:141a:ad2:e57:b1d0:dd1d) (Read error: Connection reset by peer)
2024-10-25 00:41:37 +0200 <monochrom> haha
2024-10-25 00:45:38 +0200 <zero> i also just found out that you can't use lazy annotations without StrictData :(
2024-10-25 00:45:39 +0200vglfr(~vglfr@c-73-250-25-113.hsd1.md.comcast.net) vglfr
2024-10-25 00:45:51 +0200 <zero> that's a shame
2024-10-25 00:46:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 00:50:46 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 00:51:07 +0200Everything(~Everythin@178-133-200-119.mobile.vf-ua.net) (Quit: leaving)
2024-10-25 00:52:33 +0200acidjnk_new(~acidjnk@p200300d6e72cfb1760fc46cbba529b10.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2024-10-25 00:58:28 +0200ubert(~Thunderbi@77.119.173.172.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2024-10-25 01:01:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 01:03:26 +0200motherfsck(~motherfsc@user/motherfsck) (Read error: Connection reset by peer)
2024-10-25 01:04:01 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-10-25 01:04:30 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 01:06:42 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 01:08:33 +0200 <zero> help
2024-10-25 01:08:43 +0200 <zero> i have the following line:
2024-10-25 01:08:44 +0200 <zero> quotRem x y = join bimap toEnum $ on quotRem fromEnum x y
2024-10-25 01:09:39 +0200 <zero> why does eta reducing this to
2024-10-25 01:09:49 +0200 <zero> quotRem = join bimap toEnum . on quotRem fromEnum
2024-10-25 01:10:04 +0200 <dibblego> those two expressions are not equivalent
2024-10-25 01:10:34 +0200 <zero> cause a type mismatch in bimap?
2024-10-25 01:11:27 +0200xff0x(~xff0x@2405:6580:b080:900:e0cc:218e:37fe:3b0c) (Ping timeout: 244 seconds)
2024-10-25 01:11:45 +0200 <zero> dibblego: they're not?
2024-10-25 01:12:08 +0200 <Leary> `\f g x -> f (g x)` and `\f g x y -> f (g x y)` are not the same. You want the latter and are using the former.
2024-10-25 01:12:12 +0200 <dibblego> quotRem x = join bimap toEnum . on quotRem fromEnum x
2024-10-25 01:12:25 +0200 <dibblego> quotRem = (join bimap toEnum .) . on quotRem fromEnum
2024-10-25 01:12:33 +0200 <dibblego> -- (done without a type checker)
2024-10-25 01:12:58 +0200 <int-e> :t (.)(.)(.)
2024-10-25 01:12:59 +0200 <lambdabot> (b -> c) -> (a1 -> a2 -> b) -> a1 -> a2 -> c
2024-10-25 01:13:09 +0200 <zero> i see it now. ty
2024-10-25 01:17:05 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds)
2024-10-25 01:17:37 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 01:17:41 +0200euleritian(~euleritia@dynamic-176-006-128-175.176.6.pool.telefonica.de)
2024-10-25 01:18:58 +0200xff0x(~xff0x@2405:6580:b080:900:e0cc:218e:37fe:3b0c)
2024-10-25 01:20:34 +0200motherfsck(~motherfsc@user/motherfsck) motherfsck
2024-10-25 01:22:18 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 01:25:15 +0200pavonia(~user@user/siracusa) siracusa
2024-10-25 01:28:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 01:32:52 +0200sojuro(~sojuro@syn-069-206-166-125.res.spectrum.com) (Quit: Client closed)
2024-10-25 01:32:56 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 01:34:50 +0200symdrome(~user@2804:1e78:2202:2220::416) (ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4))
2024-10-25 01:41:53 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2024-10-25 01:44:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 01:46:47 +0200poscat0x04(~poscat@user/poscat) poscat
2024-10-25 01:48:07 +0200poscat(~poscat@user/poscat) (Ping timeout: 264 seconds)
2024-10-25 01:50:45 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 01:52:47 +0200sawilagar(~sawilagar@user/sawilagar) (Ping timeout: 244 seconds)
2024-10-25 01:59:05 +0200rkazak(~rkazak@173.195.77.203)
2024-10-25 02:02:04 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 02:02:45 +0200JuanDaugherty(~juan@user/JuanDaugherty) JuanDaugherty
2024-10-25 02:06:54 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 02:08:32 +0200hgolden__(~hgolden@23.162.40.28) hgolden
2024-10-25 02:11:19 +0200hgolden_(~hgolden@146.70.173.229) (Ping timeout: 260 seconds)
2024-10-25 02:13:18 +0200SlackCoder(~SlackCode@64-94-63-8.ip.weststar.net.ky) (Quit: Leaving)
2024-10-25 02:14:00 +0200rkazak(~rkazak@173.195.77.203) (Ping timeout: 252 seconds)
2024-10-25 02:15:24 +0200euleritian(~euleritia@dynamic-176-006-128-175.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-25 02:15:41 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 02:17:50 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 02:24:43 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-10-25 02:26:41 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 02:31:57 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-10-25 02:32:56 +0200zeroyin
2024-10-25 02:36:49 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-10-25 02:42:23 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 02:42:29 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-10-25 02:47:23 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 02:56:35 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-25 02:58:10 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 03:01:13 +0200xff0x(~xff0x@2405:6580:b080:900:e0cc:218e:37fe:3b0c) (Ping timeout: 245 seconds)
2024-10-25 03:02:54 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 03:04:08 +0200infinity0(~infinity0@pwned.gg) (Ping timeout: 245 seconds)
2024-10-25 03:15:54 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 03:20:41 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 03:24:41 +0200infinity0(~infinity0@pwned.gg) infinity0
2024-10-25 03:28:54 +0200pabs3(~pabs3@user/pabs3) (Ping timeout: 260 seconds)
2024-10-25 03:31:17 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 03:35:11 +0200pabs3(~pabs3@user/pabs3) pabs3
2024-10-25 03:36:29 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-25 03:43:44 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds)
2024-10-25 03:47:07 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 03:51:42 +0200identity(~identity@user/ZharMeny) (Quit: ERC 5.6.0.30.1 (IRC client for GNU Emacs 30.0.91))
2024-10-25 03:51:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 03:56:31 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2024-10-25 03:59:17 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Ping timeout: 248 seconds)
2024-10-25 04:00:49 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-10-25 04:02:51 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 04:07:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 04:09:01 +0200weary-traveler(~user@user/user363627) user363627
2024-10-25 04:10:27 +0200alphazone(~alphazone@2.219.56.221) (Ping timeout: 246 seconds)
2024-10-25 04:14:52 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 244 seconds)
2024-10-25 04:17:14 +0200alphazone(~alphazone@2.219.56.221)
2024-10-25 04:18:40 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 04:19:40 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-25 04:22:25 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2024-10-25 04:22:54 +0200weary-traveler(~user@user/user363627) (Quit: Konversation terminated!)
2024-10-25 04:23:43 +0200weary-traveler(~user@user/user363627) user363627
2024-10-25 04:23:45 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-10-25 04:24:42 +0200vanishingideal(~vanishing@user/vanishingideal) (Quit: leaving)
2024-10-25 04:25:18 +0200paddymahoney(~paddymaho@pool-99-250-10-137.cpe.net.cable.rogers.com)
2024-10-25 04:26:01 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-25 04:27:05 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 04:31:46 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 04:36:46 +0200jcarpenter2(~lol@2603:3016:1e01:b9c0:6d01:fe2b:de0:d441) (Read error: Connection reset by peer)
2024-10-25 04:38:28 +0200td_(~td@i5387092E.versanet.de) (Ping timeout: 252 seconds)
2024-10-25 04:40:11 +0200td_(~td@i5387090F.versanet.de)
2024-10-25 04:40:50 +0200euleritian(~euleritia@77.22.252.56)
2024-10-25 04:42:24 +0200terrorjack4(~terrorjac@2a01:4f8:c17:dc9f::) (Quit: The Lounge - https://thelounge.chat)
2024-10-25 04:43:05 +0200emmanuelux(~emmanuelu@user/emmanuelux) emmanuelux
2024-10-25 04:44:07 +0200terrorjack4(~terrorjac@static.48.15.202.116.clients.your-server.de) terrorjack
2024-10-25 04:44:27 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 04:48:59 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-25 04:50:27 +0200AkechiShiro(~licht@user/akechishiro) (Quit: WeeChat 4.4.2)
2024-10-25 04:59:51 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 05:04:11 +0200haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection)
2024-10-25 05:04:48 +0200haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) hackager
2024-10-25 05:04:48 +0200ChanServ+v haskellbridge
2024-10-25 05:06:16 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-25 05:09:15 +0200vanishingideal(~vanishing@user/vanishingideal) (Ping timeout: 246 seconds)
2024-10-25 05:10:04 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 272 seconds)
2024-10-25 05:11:18 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-25 05:11:20 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2024-10-25 05:11:35 +0200chexum(~quassel@gateway/tor-sasl/chexum) chexum
2024-10-25 05:13:25 +0200euleritian(~euleritia@77.22.252.56) (Read error: Connection reset by peer)
2024-10-25 05:14:15 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 05:16:51 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 05:18:53 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-10-25 05:19:32 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 05:20:48 +0200vanishingideal(~vanishing@user/vanishingideal) (Ping timeout: 246 seconds)
2024-10-25 05:20:48 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-10-25 05:21:23 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 05:21:43 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 05:22:42 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-25 05:23:08 +0200hgolden(~hgolden@169.150.203.23) hgolden
2024-10-25 05:24:59 +0200hgolden__(~hgolden@23.162.40.28) (Ping timeout: 260 seconds)
2024-10-25 05:26:09 +0200pabs3(~pabs3@user/pabs3) (Read error: Connection reset by peer)
2024-10-25 05:27:04 +0200pabs3(~pabs3@user/pabs3) pabs3
2024-10-25 05:27:09 +0200Sgeo(~Sgeo@user/sgeo) Sgeo
2024-10-25 05:32:38 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 05:37:30 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 05:39:41 +0200spew(~spew@185.153.177.94) (Quit: good night)
2024-10-25 05:48:24 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 05:55:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 05:58:15 +0200mantraofpie(~mantraofp@user/mantraofpie) (Remote host closed the connection)
2024-10-25 05:58:36 +0200mantraofpie(~mantraofp@user/mantraofpie) mantraofpie
2024-10-25 06:06:27 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 06:11:07 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds)
2024-10-25 06:22:15 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 06:27:26 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 06:28:02 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 06:32:54 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-25 06:33:40 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 06:38:57 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-10-25 06:42:04 +0200Wstfgl0(~me-me@kc.randomserver.name)
2024-10-25 06:42:19 +0200zmt01(~zmt00@user/zmt00) zmt00
2024-10-25 06:42:56 +0200EvanR(~EvanR@user/evanr) (Remote host closed the connection)
2024-10-25 06:42:57 +0200EvanR_(~EvanR@user/evanr) EvanR
2024-10-25 06:43:33 +0200jackdk(sid373013@cssa/jackdk) (Ping timeout: 248 seconds)
2024-10-25 06:43:33 +0200Techcable(sid534393@user/Techcable) (Ping timeout: 248 seconds)
2024-10-25 06:43:55 +0200Pent(sid313808@id-313808.lymington.irccloud.com) (Ping timeout: 264 seconds)
2024-10-25 06:44:13 +0200NiKaN(sid385034@id-385034.helmsley.irccloud.com) (Ping timeout: 252 seconds)
2024-10-25 06:44:16 +0200Me-me(~me-me@user/me-me) (Read error: Connection reset by peer)
2024-10-25 06:44:26 +0200Wstfgl0Me-me
2024-10-25 06:44:26 +0200Fangs(sid141280@id-141280.hampstead.irccloud.com) (Ping timeout: 272 seconds)
2024-10-25 06:44:27 +0200sa(sid1055@id-1055.tinside.irccloud.com) (Ping timeout: 246 seconds)
2024-10-25 06:44:31 +0200bw(sid2730@user/betawaffle) (Ping timeout: 264 seconds)
2024-10-25 06:44:37 +0200jakesyl_____(sid56879@id-56879.hampstead.irccloud.com) (Ping timeout: 248 seconds)
2024-10-25 06:45:37 +0200jakesyl_____(sid56879@id-56879.hampstead.irccloud.com)
2024-10-25 06:45:38 +0200bw(sid2730@user/betawaffle) betawaffle
2024-10-25 06:45:40 +0200Pent(sid313808@id-313808.lymington.irccloud.com) Pent____
2024-10-25 06:45:42 +0200swamp_(~zmt00@user/zmt00) (Ping timeout: 272 seconds)
2024-10-25 06:45:44 +0200sa(sid1055@id-1055.tinside.irccloud.com) sa
2024-10-25 06:46:47 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-25 06:47:17 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) (Ping timeout: 248 seconds)
2024-10-25 06:47:33 +0200Fangs(sid141280@id-141280.hampstead.irccloud.com) Fangs
2024-10-25 06:47:37 +0200jackdk(sid373013@cssa/jackdk) jackdk
2024-10-25 06:47:53 +0200Techcable(sid534393@user/Techcable) Techcable
2024-10-25 06:48:05 +0200NiKaN(sid385034@id-385034.helmsley.irccloud.com) NiKaN
2024-10-25 06:49:15 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 06:51:49 +0200ezzieyguywuf(~Unknown@user/ezzieyguywuf) ezzieyguywuf
2024-10-25 06:53:54 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 06:55:52 +0200artu(artu@2600:3c01::f03c:92ff:fecc:1d32) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
2024-10-25 06:56:19 +0200artu(~artu@li90-184.members.linode.com) artu
2024-10-25 06:56:43 +0200hgolden(~hgolden@169.150.203.23) (Quit: Leaving)
2024-10-25 06:56:57 +0200hgolden(~hgolden@169.150.203.23) hgolden
2024-10-25 07:02:55 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-10-25 07:03:57 +0200euleritian(~euleritia@176.6.128.48)
2024-10-25 07:05:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 07:06:31 +0200artu(~artu@li90-184.members.linode.com) (Quit: ZNC 1.7.2+deb3 - https://znc.in)
2024-10-25 07:08:36 +0200artu(~artu@li90-184.members.linode.com) artu
2024-10-25 07:10:24 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-25 07:12:06 +0200michalz(~michalz@185.246.207.193)
2024-10-25 07:14:32 +0200vanishingideal(~vanishing@user/vanishingideal) (Quit: Lost terminal)
2024-10-25 07:15:54 +0200gorignak(~gorignak@user/gorignak) (Quit: quit)
2024-10-25 07:16:12 +0200gorignak(~gorignak@user/gorignak) gorignak
2024-10-25 07:17:19 +0200hgolden_(~hgolden@146.70.172.37) hgolden
2024-10-25 07:17:20 +0200briandaed(~root@185.234.210.211.r.toneticgroup.pl)
2024-10-25 07:18:44 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 255 seconds)
2024-10-25 07:19:48 +0200hgolden(~hgolden@169.150.203.23) (Ping timeout: 246 seconds)
2024-10-25 07:20:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 07:21:45 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2024-10-25 07:25:19 +0200euleritian(~euleritia@176.6.128.48) (Ping timeout: 264 seconds)
2024-10-25 07:25:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 07:26:00 +0200euleritian(~euleritia@dynamic-176-006-135-172.176.6.pool.telefonica.de)
2024-10-25 07:27:31 +0200euleritian(~euleritia@dynamic-176-006-135-172.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-25 07:27:48 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 07:29:02 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 07:30:05 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-10-25 07:38:34 +0200Square(~Square@user/square) Square
2024-10-25 07:38:51 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-10-25 07:39:10 +0200euleritian(~euleritia@dynamic-176-006-135-172.176.6.pool.telefonica.de)
2024-10-25 07:39:24 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-25 07:43:20 +0200hgolden__(~hgolden@23.162.40.110) hgolden
2024-10-25 07:44:33 +0200billchenchina-(~billchenc@103.152.35.21) billchenchina
2024-10-25 07:45:57 +0200hgolden_(~hgolden@146.70.172.37) (Ping timeout: 248 seconds)
2024-10-25 07:49:22 +0200alp(~alp@2001:861:e3d6:8f80:34d6:624f:71bd:319b)
2024-10-25 07:51:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 07:52:31 +0200 <cheater> int-e: ah, the Total Recall operator
2024-10-25 07:56:38 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-25 08:03:47 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2024-10-25 08:06:59 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 08:08:01 +0200Pixi`(~Pixi@user/pixi) Pixi
2024-10-25 08:11:13 +0200Pixi(~Pixi@user/pixi) (Ping timeout: 245 seconds)
2024-10-25 08:11:51 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 08:14:14 +0200weary-traveler(~user@user/user363627) (Remote host closed the connection)
2024-10-25 08:18:59 +0200euleritian(~euleritia@dynamic-176-006-135-172.176.6.pool.telefonica.de) (Ping timeout: 260 seconds)
2024-10-25 08:20:06 +0200euleritian(~euleritia@dynamic-176-002-146-178.176.2.pool.telefonica.de)
2024-10-25 08:22:47 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 08:22:52 +0200ft(~ft@p4fc2a216.dip0.t-ipconnect.de) (Quit: leaving)
2024-10-25 08:25:29 +0200 <carbolymer> lol
2024-10-25 08:27:28 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-10-25 08:30:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 08:31:14 +0200CiaoSen(~Jura@2a05:5800:470:a00:ca4b:d6ff:fec1:99da) CiaoSen
2024-10-25 08:32:13 +0200youthlic(~Thunderbi@user/youthlic) (Quit: youthlic)
2024-10-25 08:34:33 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-10-25 08:35:18 +0200youthlic(~Thunderbi@user/youthlic) youthlic
2024-10-25 08:43:44 +0200ubert(~Thunderbi@77.119.173.172.wireless.dyn.drei.com) ubert
2024-10-25 08:46:32 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 08:51:44 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-25 08:54:33 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2024-10-25 09:00:01 +0200caconym(~caconym@user/caconym) (Quit: bye)
2024-10-25 09:00:40 +0200caconym(~caconym@user/caconym) caconym
2024-10-25 09:01:20 +0200euleritian(~euleritia@dynamic-176-002-146-178.176.2.pool.telefonica.de) (Ping timeout: 255 seconds)
2024-10-25 09:01:56 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 09:02:09 +0200euleritian(~euleritia@176.2.1.182)
2024-10-25 09:07:19 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-10-25 09:08:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 09:13:56 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 09:23:02 +0200acidjnk_new(~acidjnk@p200300d6e72cfb03d1a45ef603fb56e9.dip0.t-ipconnect.de) acidjnk
2024-10-25 09:24:55 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 09:25:58 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2024-10-25 09:29:33 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-10-25 09:29:52 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2024-10-25 09:30:08 +0200billchenchina-(~billchenc@103.152.35.21) (Remote host closed the connection)
2024-10-25 09:31:03 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 09:41:54 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 246 seconds)
2024-10-25 09:43:03 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) Lord_of_Life
2024-10-25 09:45:30 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2024-10-25 09:51:18 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-25 09:52:51 +0200chele(~chele@user/chele) chele
2024-10-25 09:56:01 +0200euleritian(~euleritia@176.2.1.182) (Ping timeout: 248 seconds)
2024-10-25 09:57:14 +0200euleritian(~euleritia@dynamic-176-006-139-122.176.6.pool.telefonica.de)
2024-10-25 10:09:40 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be)
2024-10-25 10:12:32 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2024-10-25 10:20:47 +0200euleritian(~euleritia@dynamic-176-006-139-122.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-25 10:21:05 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 10:32:13 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2024-10-25 10:38:31 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Ping timeout: 264 seconds)
2024-10-25 10:47:15 +0200 <tomsmeding> :t fmap fmap fmap
2024-10-25 10:47:16 +0200 <lambdabot> (Functor f1, Functor f2) => (a -> b) -> f1 (f2 a) -> f1 (f2 b)
2024-10-25 10:47:45 +0200sord937(~sord937@gateway/tor-sasl/sord937) sord937
2024-10-25 10:49:54 +0200son0p(~ff@190.69.120.100) (Ping timeout: 252 seconds)
2024-10-25 10:51:49 +0200emmanuelux(~emmanuelu@user/emmanuelux) emmanuelux
2024-10-25 10:59:33 +0200CrunchyFlakes(~CrunchyFl@31.19.233.78)
2024-10-25 11:24:30 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2024-10-25 11:25:45 +0200hexagoxel(~hexagoxel@2a01:4f8:c0c:e::2) (Quit: ZNC 1.8.2+deb2+b1 - https://znc.in)
2024-10-25 11:29:05 +0200 <ash3en> does ghc use happy/alex as parser and lexing mechanisms?
2024-10-25 11:31:23 +0200 <tomsmeding> ash3en: https://gitlab.haskell.org/ghc/ghc/-/blob/master/compiler/GHC/Parser/Lexer.x https://gitlab.haskell.org/ghc/ghc/-/blob/master/compiler/GHC/Parser.y
2024-10-25 11:32:08 +0200 <ash3en> tomsmeding: thank you for the links as well as the TH explanations I just saw
2024-10-25 11:32:26 +0200 <tomsmeding> :)
2024-10-25 11:32:49 +0200JamesMowery43(~JamesMowe@ip98-167-207-182.ph.ph.cox.net) JamesMowery
2024-10-25 11:34:13 +0200JamesMowery4(~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Ping timeout: 248 seconds)
2024-10-25 11:36:32 +0200JamesMowery4(~JamesMowe@ip98-167-207-182.ph.ph.cox.net) JamesMowery
2024-10-25 11:37:37 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Quit: Lost terminal)
2024-10-25 11:38:17 +0200JamesMowery43(~JamesMowe@ip98-167-207-182.ph.ph.cox.net) (Ping timeout: 252 seconds)
2024-10-25 11:38:47 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2024-10-25 11:40:31 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Client Quit)
2024-10-25 11:41:59 +0200lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2024-10-25 11:44:49 +0200Square(~Square@user/square) (Ping timeout: 248 seconds)
2024-10-25 11:47:12 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 246 seconds)
2024-10-25 11:48:31 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Ping timeout: 265 seconds)
2024-10-25 11:53:16 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-25 11:54:31 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2)
2024-10-25 11:55:04 +0200alp_(~alp@2001:861:e3d6:8f80:3768:4546:4853:a163)
2024-10-25 11:56:45 +0200alp_(~alp@2001:861:e3d6:8f80:3768:4546:4853:a163) (Remote host closed the connection)
2024-10-25 11:57:02 +0200alp_(~alp@2001:861:e3d6:8f80:3d9:9a29:a310:5aa4)
2024-10-25 11:57:56 +0200alp(~alp@2001:861:e3d6:8f80:34d6:624f:71bd:319b) (Ping timeout: 272 seconds)
2024-10-25 11:59:45 +0200driib318(~driib@vmi931078.contaboserver.net) (Quit: The Lounge - https://thelounge.chat)
2024-10-25 12:00:22 +0200driib318(~driib@vmi931078.contaboserver.net) driib
2024-10-25 12:05:40 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
2024-10-25 12:06:16 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 12:11:19 +0200hgolden_(~hgolden@169.150.203.10) hgolden
2024-10-25 12:14:04 +0200hgolden__(~hgolden@23.162.40.110) (Ping timeout: 260 seconds)
2024-10-25 12:15:32 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-25 12:20:22 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2024-10-25 12:28:48 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Ping timeout: 244 seconds)
2024-10-25 12:31:33 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2024-10-25 12:33:57 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 12:40:03 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) Smiles
2024-10-25 12:40:33 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-10-25 12:41:21 +0200euleritian(~euleritia@dynamic-176-006-139-122.176.6.pool.telefonica.de)
2024-10-25 12:46:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 12:49:32 +0200alexherbo2(~alexherbo@2a02-8440-3204-088a-fce6-8c1c-cc30-bfac.rev.sfr.net) alexherbo2
2024-10-25 12:50:15 +0200rosco(~rosco@60.53.7.10) rosco
2024-10-25 12:52:46 +0200yinzzz
2024-10-25 12:55:53 +0200euleritian(~euleritia@dynamic-176-006-139-122.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-25 12:56:16 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 12:59:52 +0200son0p(~ff@190.69.120.100) son0p
2024-10-25 13:03:26 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 265 seconds)
2024-10-25 13:03:58 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 13:12:07 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2024-10-25 13:18:22 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) ash3en
2024-10-25 13:33:15 +0200ash3en(~Thunderbi@2a03:7846:b6eb:101:93ac:a90a:da67:f207) (Ping timeout: 246 seconds)
2024-10-25 13:55:26 +0200wootehfoot(~wootehfoo@user/wootehfoot) wootehfoot
2024-10-25 13:57:20 +0200mari-estel(~mari-este@user/mari-estel) ()
2024-10-25 14:10:08 +0200euphores(~SASL_euph@user/euphores) (Ping timeout: 265 seconds)
2024-10-25 14:10:34 +0200euphores(~SASL_euph@user/euphores) euphores
2024-10-25 14:13:18 +0200acidjnk_new(~acidjnk@p200300d6e72cfb03d1a45ef603fb56e9.dip0.t-ipconnect.de) (Ping timeout: 245 seconds)
2024-10-25 14:16:07 +0200xff0x(~xff0x@2405:6580:b080:900:c8b8:61af:1cb3:d380)
2024-10-25 14:22:05 +0200acidjnk_new(~acidjnk@p200300d6e72cfb03d1a45ef603fb56e9.dip0.t-ipconnect.de) acidjnk
2024-10-25 14:22:24 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-25 14:24:05 +0200rosco(~rosco@60.53.7.10) (Quit: Lost terminal)
2024-10-25 14:26:06 +0200euandreh(~Thunderbi@189.6.105.228) euandreh
2024-10-25 14:29:54 +0200euandreh(~Thunderbi@189.6.105.228) (Remote host closed the connection)
2024-10-25 14:30:04 +0200__monty__(~toonn@user/toonn) toonn
2024-10-25 14:30:26 +0200euandreh(~Thunderbi@189.6.105.228) euandreh
2024-10-25 14:52:16 +0200sawilagar(~sawilagar@user/sawilagar) sawilagar
2024-10-25 14:52:22 +0200identity(~identity@user/ZharMeny) identity
2024-10-25 14:54:02 +0200ft(~ft@p4fc2a216.dip0.t-ipconnect.de) ft
2024-10-25 15:00:52 +0200alp_(~alp@2001:861:e3d6:8f80:3d9:9a29:a310:5aa4) (Remote host closed the connection)
2024-10-25 15:11:10 +0200mantraofpie(~mantraofp@user/mantraofpie) (Quit: ZNC 1.9.1 - https://znc.in)
2024-10-25 15:11:33 +0200mantraofpie(~mantraofp@user/mantraofpie) mantraofpie
2024-10-25 15:15:06 +0200euandreh(~Thunderbi@189.6.105.228) (Ping timeout: 246 seconds)
2024-10-25 15:16:42 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2)
2024-10-25 15:17:48 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-25 15:18:59 +0200euandreh(~Thunderbi@189.6.105.228) euandreh
2024-10-25 15:20:23 +0200CiaoSen(~Jura@2a05:5800:470:a00:ca4b:d6ff:fec1:99da) (Ping timeout: 245 seconds)
2024-10-25 15:31:30 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 252 seconds)
2024-10-25 15:31:39 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 15:35:40 +0200eugenrh(~eugenrh@user/eugenrh) eugenrh
2024-10-25 15:35:50 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 244 seconds)
2024-10-25 15:36:02 +0200euleritian(~euleritia@dynamic-176-006-136-012.176.6.pool.telefonica.de)
2024-10-25 15:36:09 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-25 15:51:25 +0200GdeVolpiano(~GdeVolpia@user/GdeVolpiano) (Quit: WeeChat 4.4.2)
2024-10-25 15:53:32 +0200GdeVolpiano(~GdeVolpia@user/GdeVolpiano) GdeVolpiano
2024-10-25 15:54:24 +0200scaniatrucker(~user@78.56.98.5) scaniatrucker
2024-10-25 16:00:18 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-25 16:02:57 +0200Sgeo(~Sgeo@user/sgeo) Sgeo
2024-10-25 16:04:44 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2024-10-25 16:05:48 +0200vanishingideal(~vanishing@user/vanishingideal) (Ping timeout: 244 seconds)
2024-10-25 16:08:29 +0200euandreh(~Thunderbi@189.6.105.228) (Quit: euandreh)
2024-10-25 16:10:32 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-25 16:11:54 +0200habib(~habib@185.195.232.250) habib
2024-10-25 16:15:38 +0200 <habib> hey everyone. i'm working on porting ghc to openbsd/arm64, and i've gotten as far as building the stage 1 compiler (which was a palaver in itself), but i'm getting an error about missing libs pthread and m when trying to build the stage 2 compiler. i've tried so many combinations of various flags to pass various options using hadrian to no success; the last command i ran was as follows:
2024-10-25 16:16:07 +0200 <habib> hadrian/build --docs=none --flavour=quickest "stage0.*.cabal.configure.opts += --configure-option=LDFLAGS= --configure-option=--target=aarch64-unknown-openbsd" "stage1.*.cabal.configure.opts += --configure-option=LDFLAGS=\"-syslibroot=$SYSROOT -L/usr/lib -L$SYSROOT/usr/lib\" --configure-option=CPPFLAGS=\"-isysroot=$SYSROOT -I/usr/include -I$SYSROOT/usr/include\" --configure-option=--extra-lib-dirs=$SYSROOT/usr/lib\" --configure-option=--extra-lib-dirs=/usr
2024-10-25 16:16:07 +0200 <habib> /lib\" --configure-option=--extra-include-dirs=$SYSROOT/usr/include\" --configure-option=--extra-include-dirs=/usr/include\" --configure-option=--ghc-option=\"-optl -L$SYSROOT/usr/lib\" --configure-option=--ghc-option=\"-optl -L/usr/lib\" --configure-option=--ghc-option=\"-optl -lpthread\" --configure-option=--ghc-option=\"-optc -I$SYSROOT/usr/include\" --configure-option=--ghc-option=\"-optc -I/usr/include\" --configure-option=-v3" "stage1.*.ghc.c.opts
2024-10-25 16:16:07 +0200 <habib> += -I$SYSROOT/usr/include -I/usr/include" "stage1.*.ghc.link.opts += -L$SYSROOT/usr/lib -L/usr/lib -lpthread" "stage1.*.cc.c.opts += -L$SYSROOT/usr/lib -L/usr/lib -lpthread" -VVVVVVVVVV --freeze1 stage2:exe:ghc-bin
2024-10-25 16:17:56 +0200 <habib> i've sent an in depth message to the ports@openbsd mailing list about my progress; i've been working on this since the early hours of monday
2024-10-25 16:18:34 +0200weary-traveler(~user@user/user363627) user363627
2024-10-25 16:19:00 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-10-25 16:19:19 +0200 <habib> if anyone knows anything about weird interactions between openbsd, ghc, and libpthread and/or libm, i'd really appreciate your help. i couldn't find anything online even close to this situation
2024-10-25 16:19:47 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2024-10-25 16:20:00 +0200 <kqr> A persistent entity id, can that be converted to some more basic type like e.g. a bytestring? The use case is that a library needs to hold on to a reference to an entity, but it cannot itself know about the entity type.
2024-10-25 16:20:55 +0200 <habib> again, this is for cross-compiling ghc to openbsd/arm64, and i've successfully built the stage one compiler that should output aarch64 openbsd binaries so i can use it to build the stage two compiler
2024-10-25 16:23:32 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds)
2024-10-25 16:23:33 +0200ljdarj1ljdarj
2024-10-25 16:29:23 +0200JuanDaugherty(~juan@user/JuanDaugherty) JuanDaugherty
2024-10-25 16:29:23 +0200euleritian(~euleritia@dynamic-176-006-136-012.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-25 16:29:52 +0200euleritian(~euleritia@dynamic-176-006-136-012.176.6.pool.telefonica.de)
2024-10-25 16:37:45 +0200EvanR_EvanR
2024-10-25 16:38:20 +0200 <EvanR> kqr, good question. Can it?
2024-10-25 16:38:41 +0200 <EvanR> whether something can be converted to ByteString is a question answered by each types API
2024-10-25 16:39:05 +0200 <EvanR> there's no universal answer in haskell
2024-10-25 16:40:25 +0200vglfr(~vglfr@c-73-250-25-113.hsd1.md.comcast.net) (Ping timeout: 252 seconds)
2024-10-25 16:40:33 +0200mceresa(~mceresa@user/mceresa) (Remote host closed the connection)
2024-10-25 16:41:50 +0200 <kqr> EvanR, I was hoping there was some universal answer for Persistent Entity keys...
2024-10-25 16:42:32 +0200 <EvanR> oh, persistent is the name of a library
2024-10-25 16:42:36 +0200vglfr(~vglfr@2607:fb91:856:ab8:ac39:6af7:e195:e6e8) vglfr
2024-10-25 16:42:38 +0200 <EvanR> not an adjective
2024-10-25 16:42:53 +0200 <EvanR> that answers how to find the answer
2024-10-25 16:42:54 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) Smiles
2024-10-25 16:43:29 +0200mceresa(~mceresa@user/mceresa) mceresa
2024-10-25 16:44:08 +0200 <EvanR> does this persistent entity id have a type name
2024-10-25 16:44:38 +0200 <EvanR> the Key type associated with PersistentEntity class
2024-10-25 16:47:51 +0200 <EvanR> kqr, it says that the `Key foo' type for each entity must be an instance of ToJSON, FromJSON, Show, and Read, so there's that
2024-10-25 16:48:28 +0200 <EvanR> ToJSON gives you a way to convert the key to ByteString
2024-10-25 16:49:10 +0200 <EvanR> show converts it to String
2024-10-25 16:50:05 +0200 <habib> seems like none of my arguments to hadrian for stge
2024-10-25 16:50:24 +0200 <habib> seems like none of my arguments to hadrian for stage two are getting passed through, unlike stage one
2024-10-25 16:50:57 +0200BolzmannPain2(~BolzmannP@2a0a-a546-8e55-1-7325-1e9-989-bd93.ipv6dyn.netcologne.de)
2024-10-25 16:51:13 +0200 <kqr> EvanR, Ah, thanks. I did find those instances, but I was hoping there was something else I was missing. I'll assume that if you also don't see it, then there is not. Thanks!
2024-10-25 16:51:45 +0200vglfr(~vglfr@2607:fb91:856:ab8:ac39:6af7:e195:e6e8) (Ping timeout: 260 seconds)
2024-10-25 16:51:55 +0200vglfr(~vglfr@2607:fb90:ea15:5496:ad3:f751:9b84:2064) vglfr
2024-10-25 16:58:18 +0200tabemann_(~tabemann@2600:1700:7990:24e0:9b92:fe17:1b69:2f6b) (Remote host closed the connection)
2024-10-25 16:58:37 +0200tabemann_(~tabemann@2600:1700:7990:24e0:cb63:a13b:e8da:1b84)
2024-10-25 16:58:39 +0200 <mauke> habib: do you know about #ghc?
2024-10-25 16:58:49 +0200 <habib> no, i didnt
2024-10-25 16:59:05 +0200 <Leary> kqr: I'm not really sure what you're doing, but if you just want to hide the type then use an existential? E.g. `data SomeKey where Some :: PersistEntity record => Key record -> SomeKey`
2024-10-25 16:59:11 +0200 <habib> i just opened my irc client and it has some rooms i saved, thanks for letting me know
2024-10-25 16:59:22 +0200 <habib> i'll add that to my list
2024-10-25 16:59:37 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-25 17:00:08 +0200chele(~chele@user/chele) (Remote host closed the connection)
2024-10-25 17:01:18 +0200drdo(~drdo@bl9-110-63.dsl.telepac.pt) (Quit: Ping timeout (120 seconds))
2024-10-25 17:01:40 +0200drdo(~drdo@bl9-110-63.dsl.telepac.pt) drdo
2024-10-25 17:01:41 +0200jespada(~jespada@222.203-67-87.adsl-dyn.isp.belgacom.be) jespada
2024-10-25 17:03:53 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-25 17:06:55 +0200euleritian(~euleritia@dynamic-176-006-136-012.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-25 17:07:12 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 17:14:11 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2024-10-25 17:15:02 +0200BolzmannPain2(~BolzmannP@2a0a-a546-8e55-1-7325-1e9-989-bd93.ipv6dyn.netcologne.de) (Quit: Client closed)
2024-10-25 17:16:05 +0200identity(~identity@user/ZharMeny) (ERC 5.6.0.30.1 (IRC client for GNU Emacs 30.0.91))
2024-10-25 17:18:28 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-10-25 17:23:20 +0200mari-estel(~mari-este@user/mari-estel) (Remote host closed the connection)
2024-10-25 17:30:01 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 244 seconds)
2024-10-25 17:30:19 +0200 <bwe> which test framework allows for simple parametrised tests [(input, expected)]?
2024-10-25 17:31:26 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-25 17:32:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-25 17:33:17 +0200 <mauke> all of them, I hope
2024-10-25 17:33:36 +0200euleritian(~euleritia@176.7.153.100)
2024-10-25 17:37:55 +0200euleritian(~euleritia@176.7.153.100) (Read error: Connection reset by peer)
2024-10-25 17:38:36 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
2024-10-25 17:40:17 +0200Katarushisu(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
2024-10-25 17:41:34 +0200Katarushisu(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) Katarushisu
2024-10-25 17:42:17 +0200 <tomsmeding> bwe: a popular option is hspec
2024-10-25 17:42:45 +0200euleritian(~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 248 seconds)
2024-10-25 17:42:48 +0200 <tomsmeding> there's also HUnit
2024-10-25 17:43:31 +0200euleritian(~euleritia@dynamic-176-007-153-100.176.7.pool.telefonica.de)
2024-10-25 17:44:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 17:44:26 +0200 <tomsmeding> if you want to mix multiple test frameworks in one test suite (e.g. unit tests + property tests), 'tasty' is a thing that you can slot various other test frameworks into
2024-10-25 17:44:30 +0200 <bwe> I mean which supports output that is optimised for parametrised tests? I nowhere can find such in the docs - do I overlook sth?
2024-10-25 17:44:50 +0200 <tomsmeding> what is a "parametrised test", precisely?
2024-10-25 17:47:54 +0200euleritian(~euleritia@dynamic-176-007-153-100.176.7.pool.telefonica.de) (Ping timeout: 252 seconds)
2024-10-25 17:48:22 +0200euleritian(~euleritia@dynamic-176-006-143-043.176.6.pool.telefonica.de)
2024-10-25 17:50:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 17:51:35 +0200 <tomsmeding> bwe: (I'm asking because the haddocks for 'it' in hspec look to me like that's precisely what you want; if not, then apparently I misunderstand what you mean with "parametrised test")
2024-10-25 17:55:20 +0200Katarushisu(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) (Quit: The Lounge - https://thelounge.chat)
2024-10-25 17:55:39 +0200Square(~Square@user/square) Square
2024-10-25 17:55:40 +0200Katarushisu(~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) Katarushisu
2024-10-25 17:57:27 +0200rosco(~rosco@60.53.7.10) rosco
2024-10-25 17:57:48 +0200habib(~habib@185.195.232.250) (Ping timeout: 252 seconds)
2024-10-25 17:58:07 +0200 <c_wraith> Why do you need special cases for testing multiple inputs against expected outputs? Haskell is a programming language. Create your tests in a loop so that each pair is a separate test case.
2024-10-25 18:01:04 +0200acarrico(~acarrico@dhcp-209-99-192-63.greenmountainaccess.net) (Killed (NickServ (GHOST command used by acarrico1)))
2024-10-25 18:02:02 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 18:02:10 +0200acarrico1(~acarrico@dhcp-209-99-192-63.greenmountainaccess.net)
2024-10-25 18:02:12 +0200 <lxsameer> hey folks, I'm trying to understand profunctors in the context of Hasql statements. Is it the case that I can compose some statements together to form a new statement using profunctors?
2024-10-25 18:04:32 +0200mari-estel(~mari-este@user/mari-estel) ()
2024-10-25 18:05:08 +0200 <EvanR> Statement paramsType resultType
2024-10-25 18:05:40 +0200 <EvanR> as far as profunctor goes, it means you can fmap the resultTypes with normal functions, and you can "preprocess" the paramsType with normal functions
2024-10-25 18:06:19 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-10-25 18:06:43 +0200 <lxsameer> EvanR: ah got it, thanks
2024-10-25 18:06:58 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-25 18:07:46 +0200mceresa(~mceresa@user/mceresa) (Remote host closed the connection)
2024-10-25 18:09:47 +0200 <EvanR> composing would be like Category or Semigroupoid
2024-10-25 18:10:42 +0200mceresa(~mceresa@user/mceresa) mceresa
2024-10-25 18:10:48 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 245 seconds)
2024-10-25 18:11:02 +0200 <lxsameer> cheers
2024-10-25 18:12:34 +0200vglfr(~vglfr@2607:fb90:ea15:5496:ad3:f751:9b84:2064) (Read error: Connection reset by peer)
2024-10-25 18:14:40 +0200morsinichi(~morsinich@61.4.97.157)
2024-10-25 18:14:42 +0200acarrico1(~acarrico@dhcp-209-99-192-63.greenmountainaccess.net) (Quit: Leaving.)
2024-10-25 18:17:26 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 18:19:22 +0200 <morsinichi> hi, i am new to functional programming and i recently thought about whether there is general concepts about data like data traversal or data structure; i've noticed that in haskell you might define types that are non-terminating (like stream) and the traversal is bound to type's structure.
2024-10-25 18:21:10 +0200 <bwe> tomsmeding: I mean https://docs.pytest.org/en/latest/how-to/parametrize.html
2024-10-25 18:21:11 +0200 <EvanR> Functor and Foldable classes are so uniquely defined for data structures that they are auto derivable
2024-10-25 18:21:49 +0200 <tomsmeding> bwe: you aren't going to be able to have decorators on functions, because haskell simply doesn't have that syntax
2024-10-25 18:22:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 18:22:28 +0200acarrico1(~acarrico@dhcp-209-99-192-63.greenmountainaccess.net)
2024-10-25 18:22:28 +0200vglfr(~vglfr@c-73-250-25-113.hsd1.md.comcast.net) vglfr
2024-10-25 18:22:45 +0200 <tomsmeding> but re input/output pairs, what about \l -> describe "function name" $ sequence [it (show input) $ f input == expec | (input, expec) <- l]
2024-10-25 18:22:53 +0200 <bwe> tomsmeding: I don't mean the decorators :) - I mean the inputs and expected values for the test function.
2024-10-25 18:22:58 +0200 <tomsmeding> as c_wraith said: haskell is a programming language :p
2024-10-25 18:23:28 +0200 <tomsmeding> (using hspec here, but any unit testing framework could be adapted in this way surely)
2024-10-25 18:24:29 +0200acarrico1acarrico
2024-10-25 18:25:42 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) tzh
2024-10-25 18:26:33 +0200 <bwe> tomsmeding: ok! and I can change the output for such a group with custom formatters (hspec): https://hspec.github.io/extending-hspec-formatter.html#a-simple-formatter
2024-10-25 18:27:00 +0200 <bwe> (to summarise a group instead giving each member of that sequence its own line, for example)
2024-10-25 18:27:20 +0200 <bwe> c_wraith: yeah, it's mainly about how the test suite outputs the results of parametrised tests
2024-10-25 18:27:38 +0200 <bwe> …I know, nitty-picky
2024-10-25 18:32:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 18:35:45 +0200jespada(~jespada@222.203-67-87.adsl-dyn.isp.belgacom.be) (Quit: My Mac has gone to sleep. ZZZzzz…)
2024-10-25 18:37:09 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 18:38:59 +0200tomsmeding(~tomsmedin@2a01:4f8:c0c:5e5e::2) (Quit: ZNC 1.9.1 - https://znc.in)
2024-10-25 18:39:34 +0200tomsmeding(~tomsmedin@static.21.109.88.23.clients.your-server.de) tomsmeding
2024-10-25 18:45:37 +0200 <EvanR> morsinichi, there are types where there are multiple valid Applicative instances
2024-10-25 18:45:58 +0200 <EvanR> (though only one is allowed at a time in haskell)
2024-10-25 18:46:55 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2024-10-25 18:50:02 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 18:51:35 +0200 <geekosaur> the more canonical example of such is `Monoid`
2024-10-25 18:52:15 +0200 <geekosaur> because you hit it immediately with numeric types, since `(+)` and `(*)` both form valid and important monoids on them
2024-10-25 18:53:20 +0200tomsmeding(~tomsmedin@static.21.109.88.23.clients.your-server.de) (Quit: ZNC 1.9.1 - https://znc.in)
2024-10-25 18:53:55 +0200tomsmeding(~tomsmedin@2a01:4f8:c0c:5e5e::2) tomsmeding
2024-10-25 18:54:14 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds)
2024-10-25 18:54:21 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2024-10-25 18:57:45 +0200yahb2(~yahb2@user/tomsmeding/bot/yahb2) (Remote host closed the connection)
2024-10-25 18:58:27 +0200athan(~athan@syn-173-042-095-241.biz.spectrum.com) athan
2024-10-25 18:58:40 +0200yahb2(~yahb2@user/tomsmeding/bot/yahb2) yahb2
2024-10-25 18:58:40 +0200ChanServ+v yahb2
2024-10-25 18:58:44 +0200athan(~athan@syn-173-042-095-241.biz.spectrum.com) (Client Quit)
2024-10-25 19:01:05 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-25 19:05:25 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 19:07:48 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-25 19:10:30 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-25 19:16:25 +0200ChaiTRex(~ChaiTRex@user/chaitrex) ChaiTRex
2024-10-25 19:17:46 +0200Flerix(Flerix@user/Flerix) Flerix
2024-10-25 19:20:47 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 19:20:48 +0200spew(~spew@155.133.15.67) spew
2024-10-25 19:21:16 +0200rosco(~rosco@60.53.7.10) (Quit: Lost terminal)
2024-10-25 19:28:20 +0200Flerix(Flerix@user/Flerix) (Quit: Leaving)
2024-10-25 19:28:52 +0200Flerix(Flerix@user/Flerix) Flerix
2024-10-25 19:29:42 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2024-10-25 19:30:50 +0200alexherbo2(~alexherbo@2a02-8440-3204-088a-fce6-8c1c-cc30-bfac.rev.sfr.net) (Remote host closed the connection)
2024-10-25 19:31:09 +0200alexherbo2(~alexherbo@2a02-8440-3204-088a-fce6-8c1c-cc30-bfac.rev.sfr.net) alexherbo2
2024-10-25 19:31:29 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 248 seconds)
2024-10-25 19:31:30 +0200ljdarj1ljdarj
2024-10-25 19:31:48 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-10-25 19:32:01 +0200morj(~morj@2a01:e0a:e0e:5dd0:c932:38f5:27f7:ff4b)
2024-10-25 19:41:27 +0200morj(~morj@2a01:e0a:e0e:5dd0:c932:38f5:27f7:ff4b) (Quit: Konversation terminated!)
2024-10-25 19:41:45 +0200michalz(~michalz@185.246.207.193) (Quit: ZNC 1.9.0 - https://znc.in)
2024-10-25 19:42:04 +0200michalz(~michalz@185.246.207.203)
2024-10-25 19:43:33 +0200halloy7829(~halloy782@2a01:e0a:e0e:5dd0:c932:38f5:27f7:ff4b)
2024-10-25 19:44:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 19:48:53 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 19:59:02 +0200Digitteknohippie(~user@user/digit) Digit
2024-10-25 19:59:10 +0200Digit(~user@user/digit) (Ping timeout: 252 seconds)
2024-10-25 19:59:34 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 20:00:19 +0200LukeHoersten(~LukeHoers@user/lukehoersten) LukeHoersten
2024-10-25 20:04:37 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 20:04:39 +0200Digitteknohippie(~user@user/digit) (Ping timeout: 252 seconds)
2024-10-25 20:10:58 +0200 <lxsameer> Can't understand why ghc complains about P.UsageError not matching with (Exception e) while UsageError implements that type class https://dpaste.com/4JXBTBRMC
2024-10-25 20:12:11 +0200 <tomsmeding> lxsameer: your function pgInit promises to its caller that the _caller_ can choose some exception type 'e', and then pgInit will produce that type
2024-10-25 20:12:36 +0200 <tomsmeding> so the caller chooses 'e', and you give it a P.UsageError instead, so GHC complains that you're not doing what your type signature promised
2024-10-25 20:12:52 +0200 <lxsameer> tomsmeding: ahhhhhhhhh got it
2024-10-25 20:12:59 +0200 <lxsameer> it got it backward
2024-10-25 20:13:35 +0200 <tomsmeding> any specific reason why you're _returning_ exceptions instead of throwing them?
2024-10-25 20:14:02 +0200 <tomsmeding> though in general, with this pattern, I think the recommendation is to let pgInit just return a P.UsageError explicitly
2024-10-25 20:14:06 +0200 <EvanR> async does that
2024-10-25 20:14:07 +0200 <lxsameer> tomsmeding: the reason is I'm still confused about the correct way of exception handling in haskell
2024-10-25 20:14:20 +0200 <EvanR> :t throwIO
2024-10-25 20:14:21 +0200 <lambdabot> Exception e => e -> IO a
2024-10-25 20:14:23 +0200 <tomsmeding> then the caller can still treat it as an arbitrary type that implements Exception if it so desires
2024-10-25 20:14:36 +0200 <tomsmeding> (because it is)
2024-10-25 20:14:45 +0200 <tomsmeding> so you're not making your interface any less flexible
2024-10-25 20:14:53 +0200 <tomsmeding> (in a sense)
2024-10-25 20:15:11 +0200 <lxsameer> let me show you more, give me a sec
2024-10-25 20:15:14 +0200sord937(~sord937@gateway/tor-sasl/sord937) (Quit: sord937)
2024-10-25 20:15:21 +0200 <tomsmeding> because what you really intended to write here is ... -> IO (Maybe (exists e. Exception e => e)), except Haskell doesn't support existential types like that so you have to 'newtype' that
2024-10-25 20:15:26 +0200 <tomsmeding> er, not even newtype, 'data' that
2024-10-25 20:15:33 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 20:15:51 +0200 <tomsmeding> giving the particular instantiation of the existential is _more_ information than just returning an existential
2024-10-25 20:16:42 +0200 <lxsameer> tomsmeding: ok it's getting more confusing. check this out: https://git.sr.ht/~lxsameer/Feynman/tree/master/item/src/Feynman/DB/Core.hs#L41
2024-10-25 20:16:46 +0200alp(~alp@2001:861:e3d6:8f80:55e8:1aad:506c:464b)
2024-10-25 20:17:10 +0200 <lxsameer> this is the interface that I want to have so each backend can just populate that record with the common operations
2024-10-25 20:17:12 +0200 <tomsmeding> lxsameer: that 'init' field contains an existential e
2024-10-25 20:17:21 +0200 <tomsmeding> written using 'forall' because the syntax is confusing
2024-10-25 20:17:50 +0200 <tomsmeding> the idea is that 'init' is polymorphic in the usual sense, so its type has a forall; but then that means that if you _use_ the field, you don't know what type 'e' was used when calling 'init', so the field behaves like an existential
2024-10-25 20:17:53 +0200 <lxsameer> tomsmeding: I use to use SomeException like the rest, i just changed it
2024-10-25 20:18:41 +0200 <tomsmeding> lxsameer: so you want to be able to say "DB { init = pgInit _ _, insert = _, finalize = _ }"?
2024-10-25 20:18:43 +0200 <lxsameer> so my main question is, since UsageError is postgres related only, how can I generalize the error here?
2024-10-25 20:18:50 +0200 <lxsameer> tomsmeding: yeah
2024-10-25 20:18:57 +0200 <lxsameer> https://git.sr.ht/~lxsameer/Feynman/tree/master/item/src/Feynman/DB/Postgres.hs#L32
2024-10-25 20:19:02 +0200alp(~alp@2001:861:e3d6:8f80:55e8:1aad:506c:464b) (Remote host closed the connection)
2024-10-25 20:19:05 +0200 <tomsmeding> ah
2024-10-25 20:19:15 +0200 <tomsmeding> ok so then your type of this 'init' field is wrong
2024-10-25 20:19:17 +0200 <tomsmeding> it has the same problem
2024-10-25 20:19:27 +0200 <tomsmeding> er, wait
2024-10-25 20:20:10 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-25 20:20:33 +0200 <tomsmeding> % import Control.Exception
2024-10-25 20:20:33 +0200 <yahb2> <no output>
2024-10-25 20:20:35 +0200 <tomsmeding> % data DB = DB { init :: forall e. Exception e => IO (Maybe e) }
2024-10-25 20:20:36 +0200 <yahb2> <no output>
2024-10-25 20:20:37 +0200 <tomsmeding> % :t init
2024-10-25 20:20:38 +0200 <yahb2> init :: DB -> forall e. Exception e => IO (Maybe e)
2024-10-25 20:20:46 +0200 <tomsmeding> % :t init
2024-10-25 20:20:46 +0200 <yahb2> init :: DB -> forall e. Exception e => IO (Maybe e)
2024-10-25 20:20:47 +0200 <lxsameer> EvanR: that throwIO, still returns IO a, how can I tell by the type that this function may throw?
2024-10-25 20:20:52 +0200 <tomsmeding> % :t \x -> init x
2024-10-25 20:20:52 +0200 <yahb2> \x -> init x :: Exception e => DB -> IO (Maybe e)
2024-10-25 20:20:54 +0200 <tomsmeding> lxsameer: you can't
2024-10-25 20:20:59 +0200LukeHoersten(~LukeHoers@user/lukehoersten) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2024-10-25 20:21:42 +0200 <tomsmeding> what I said previously about the field type was wrong
2024-10-25 20:21:44 +0200 <tomsmeding> lol
2024-10-25 20:22:08 +0200 <tomsmeding> lxsameer: as you can see here, with this DB type, if you project the 'init' field from a DB value, you get back an IO (Maybe e) for an e that _you can choose_
2024-10-25 20:22:12 +0200 <EvanR> lxsameer, there's no indication. Any IO action when executed might throw an exception
2024-10-25 20:22:22 +0200 <EvanR> there's no "checked exceptions"
2024-10-25 20:22:52 +0200 <tomsmeding> lxsameer: I would recommend using SomeException
2024-10-25 20:23:11 +0200 <EvanR> actually evaluating any value may throw some exception, but not by using throwIO
2024-10-25 20:23:20 +0200 <tomsmeding> because SomeException literally means "this is a thing that implements Exception, but I forgot what precise type it was"
2024-10-25 20:23:27 +0200 <lxsameer> tomsmeding: ok, if I use SomeException. the I have to change the https://git.sr.ht/~lxsameer/Feynman/tree/master/item/src/Feynman/DB/Postgres.hs#L52
2024-10-25 20:23:43 +0200 <lxsameer> tomsmeding: to whenLeft Nothing migrationResult (return . Just . toException) right?
2024-10-25 20:23:50 +0200 <tomsmeding> % :i SomeException
2024-10-25 20:23:50 +0200 <yahb2> type SomeException :: * ; data SomeException ; = forall e. ; (Exception e, GHC.Internal.Exception.Type.HasExceptionContext) => ; SomeException e ; -- Defined in ‘GHC.Internal.Exception...
2024-10-25 20:24:05 +0200 <tomsmeding> % :t SomeException
2024-10-25 20:24:05 +0200 <yahb2> SomeException ; :: (Exception e, ; GHC.Internal.Exception.Type.HasExceptionContext) => ; e -> SomeException
2024-10-25 20:24:13 +0200 <EvanR> thanks, clear as mud lol
2024-10-25 20:24:14 +0200 <lxsameer> EvanR: ah, so it's kinda in the IOs contract that it might throw Exception
2024-10-25 20:24:18 +0200 <tomsmeding> lxsameer: just write `return . Just . SomeException`
2024-10-25 20:24:26 +0200 <tomsmeding> yes
2024-10-25 20:24:36 +0200 <tomsmeding> oh
2024-10-25 20:24:40 +0200 <EvanR> yeah IO is prone to failing
2024-10-25 20:24:40 +0200 <tomsmeding> yes that's called toException
2024-10-25 20:24:53 +0200 <EvanR> non-IO is ideally not failing
2024-10-25 20:25:00 +0200 <EvanR> but still might for weird reasons
2024-10-25 20:25:23 +0200 <lxsameer> cool, so the first suggestion is throwIO and then the approach above, right
2024-10-25 20:25:24 +0200 <EvanR> like they didn't put all the case analysis cases, or they did division by zero, or evaluated an infinite loop
2024-10-25 20:25:47 +0200 <EvanR> non-IO might also use throw
2024-10-25 20:25:49 +0200 <EvanR> :t throw
2024-10-25 20:25:50 +0200 <lambdabot> Exception e => e -> a
2024-10-25 20:26:07 +0200 <EvanR> awful, terrible
2024-10-25 20:26:12 +0200 <EvanR> no good
2024-10-25 20:26:13 +0200 <EvanR> very bad
2024-10-25 20:26:13 +0200 <tomsmeding> lxsameer: right, throwIO is the usual way to throw exceptions in IO code; but if you want to return them for some reason, the best way would be toException (well found)
2024-10-25 20:26:37 +0200 <tomsmeding> just be mindful that other functions that _you_ are calling might also throw IO exceptions, unbeknownst to you
2024-10-25 20:26:39 +0200Flerix(Flerix@user/Flerix) (Quit: Leaving)
2024-10-25 20:26:49 +0200 <tomsmeding> so even if you neatly _return_ an exception, you might still accidentally throw one
2024-10-25 20:26:56 +0200 <tomsmeding> unless you very carefully vet what you call
2024-10-25 20:27:08 +0200 <EvanR> functions don't throwIO, IO actions throwIO
2024-10-25 20:27:10 +0200tomsmedingthinks haskell should have had checked exceptions
2024-10-25 20:27:10 +0200 <lxsameer> i see, coool. And one last question
2024-10-25 20:27:17 +0200 <tomsmeding> EvanR: fair point
2024-10-25 20:27:20 +0200 <tomsmeding> s/functions/IO actions/
2024-10-25 20:27:42 +0200Igloo(~ian@81.2.99.210) (Remote host closed the connection)
2024-10-25 20:27:55 +0200 <lxsameer> would it make sense for that DB type to have a errorHandler method as well ?
2024-10-25 20:27:59 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 20:28:18 +0200 <lxsameer> so each backend provide a way to deal with it's specific error types?
2024-10-25 20:28:31 +0200 <tomsmeding> who would be throwing those errors?
2024-10-25 20:28:37 +0200 <tomsmeding> and who would be handling them
2024-10-25 20:28:40 +0200 <EvanR> by returning IO actions in I/O code, you're kind of stepping outside a convention of..... just throwing the exception
2024-10-25 20:28:49 +0200 <EvanR> by returning IO exception*
2024-10-25 20:28:59 +0200Igloo(~ian@81.2.99.210)
2024-10-25 20:29:23 +0200 <EvanR> letting someone catch it if they want
2024-10-25 20:29:30 +0200 <tomsmeding> agree
2024-10-25 20:30:05 +0200 <mauke> using the SomeException data constructor directly is probably a mistake in general. toException is the way to go
2024-10-25 20:30:10 +0200weary-traveler(~user@user/user363627) (Remote host closed the connection)
2024-10-25 20:30:15 +0200morsinichi(~morsinich@61.4.97.157) (Remote host closed the connection)
2024-10-25 20:30:16 +0200 <lxsameer> tomsmeding: the backend will throw them. and in my head the backend will handle any uncaught error using a error handler and re-throw those that it doesn't know about
2024-10-25 20:30:40 +0200 <mauke> because SomeException is also an instance of Exception, so if your e is already SomeException, you might accidentally double-wrap it
2024-10-25 20:31:02 +0200 <tomsmeding> lxsameer: what is a "backend"? Is that one of the functions in that DB record?
2024-10-25 20:31:14 +0200 <tomsmeding> because then, can't it "just" catch them?
2024-10-25 20:31:22 +0200 <tomsmeding> mauke: good point!
2024-10-25 20:31:37 +0200 <lxsameer> tomsmeding: it is any code that implement the methods of the DB type
2024-10-25 20:32:02 +0200 <tomsmeding> lxsameer: okay; then "will handle any uncaught error using an error handler" is just something that it can do, right?
2024-10-25 20:32:10 +0200 <tomsmeding> inside the implementation of the DB methods
2024-10-25 20:32:14 +0200scaniatrucker(~user@78.56.98.5) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4))
2024-10-25 20:32:19 +0200 <tomsmeding> no need to have another field for this in the record, as far as I can see
2024-10-25 20:32:34 +0200 <tomsmeding> Control.Exception.catch
2024-10-25 20:32:40 +0200 <lxsameer> tomsmeding: yes
2024-10-25 20:32:41 +0200 <tomsmeding> (read the haddocks)
2024-10-25 20:32:51 +0200 <lxsameer> tomsmeding: cheers
2024-10-25 20:33:06 +0200 <lxsameer> EvanR: tomsmeding mauke thanks for the help folks
2024-10-25 20:35:35 +0200 <EvanR> where did the haskell exception system come from. Is it "original research" or based on a previous language's exception system
2024-10-25 20:35:44 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-25 20:36:50 +0200 <mauke> the original one or the extensible exception hierarchy thing?
2024-10-25 20:39:15 +0200 <briandaed> "This may be surprising, but the Haskell exception system is modeled off of Java-style Object Oriented inheritance (shocking, I know)." source: https://tech.fpcomplete.com/haskell/tutorial/exceptions/
2024-10-25 20:41:03 +0200 <EvanR> ok, that's what I figured
2024-10-25 20:41:14 +0200 <EvanR> the dynamically typed hierarchy
2024-10-25 20:41:27 +0200 <EvanR> Java is the best dynamically typed language
2024-10-25 20:41:58 +0200maukethrows an ArrayStoreException
2024-10-25 20:45:16 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-25 20:46:15 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 20:49:00 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity)
2024-10-25 20:49:33 +0200mceresa(~mceresa@user/mceresa) (Ping timeout: 245 seconds)
2024-10-25 20:50:27 +0200 <dolio> Is it actually based on that?
2024-10-25 20:50:36 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 20:51:19 +0200EvanR(~EvanR@user/evanr) (Ping timeout: 260 seconds)
2024-10-25 20:55:32 +0200Digit(~user@user/digit) Digit
2024-10-25 21:00:05 +0200caconym(~caconym@user/caconym) (Quit: bye)
2024-10-25 21:00:44 +0200caconym(~caconym@user/caconym) caconym
2024-10-25 21:01:38 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 21:07:23 +0200down200(~down200@shell.lug.mtu.edu) (Quit: ZNC - https://znc.in)
2024-10-25 21:08:28 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 21:09:27 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) (Remote host closed the connection)
2024-10-25 21:10:56 +0200alexherbo2(~alexherbo@2a02-8440-3204-088a-fce6-8c1c-cc30-bfac.rev.sfr.net) (Remote host closed the connection)
2024-10-25 21:11:04 +0200briandaed(~root@185.234.210.211.r.toneticgroup.pl) (Remote host closed the connection)
2024-10-25 21:11:24 +0200down200(~down200@shell.lug.mtu.edu) down200
2024-10-25 21:12:25 +0200machinedgod(~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod
2024-10-25 21:19:41 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 21:24:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-25 21:28:30 +0200halloy7829(~halloy782@2a01:e0a:e0e:5dd0:c932:38f5:27f7:ff4b) (Remote host closed the connection)
2024-10-25 21:31:18 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2024-10-25 21:34:04 +0200supercode(~supercode@user/supercode) supercode
2024-10-25 21:34:23 +0200 <monochrom> s/Haskell/FPComplete/
2024-10-25 21:35:06 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 21:35:26 +0200ljdarj(~Thunderbi@user/ljdarj) (Quit: ljdarj)
2024-10-25 21:35:46 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2024-10-25 21:36:03 +0200 <monochrom> OK I misread.
2024-10-25 21:37:23 +0200 <monochrom> Did Ada have the same kind of exception system that predated Java? Didn't even C++ too and predate Java?
2024-10-25 21:38:28 +0200 <dolio> SML had exceptions in 1990.
2024-10-25 21:38:56 +0200 <tomsmeding> technically, the quoted sentence does not state the Haskell's system is based off of Java.
2024-10-25 21:39:30 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-25 21:39:41 +0200 <dolio> Yeah. I don't really understand what it is saying, though.
2024-10-25 21:39:57 +0200 <tomsmeding> It does claim that it is based on "Object Oriented Inheritance", and is similar to what Java does
2024-10-25 21:40:00 +0200 <monochrom> Yeah I forgot SML.
2024-10-25 21:41:11 +0200 <tomsmeding> but that isn't really saying very much; haskell not having anything really comparable to OO inheritance, I agree with dolio that it isn't clear what the actual claim is :p
2024-10-25 21:41:30 +0200 <tomsmeding> perhaps the use of existentials?
2024-10-25 21:41:58 +0200 <dolio> It sounds like the kind of vague thing you'd say to explain to someone just getting started, not a precise statement about the historical origins.
2024-10-25 21:42:15 +0200 <monochrom> I think it is referring to inheritance.
2024-10-25 21:44:25 +0200 <dolio> What is the inheritance in the exception system, though?
2024-10-25 21:44:51 +0200 <monochrom> "is modelled" is a historical claim. When one just means to reuse familiarity, honest wordings are "similar to", "can be thought of as".
2024-10-25 21:44:57 +0200halloy7829(~halloy782@2a01:e0a:e0e:5dd0:c932:38f5:27f7:ff4b)
2024-10-25 21:45:20 +0200 <monochrom> The same as having subclasses in the type class system.
2024-10-25 21:46:02 +0200 <monochrom> err sorry no, most actual exception types don't use that.
2024-10-25 21:46:51 +0200 <monochrom> OK tomsmeding is right, it is only SomeException being existential.
2024-10-25 21:47:50 +0200 <tomsmeding> that at least has an OO flavour
2024-10-25 21:50:01 +0200 <monochrom> Theoretically, what I said could happen, and IIRC someone actually did it (make some subclasses of Exception and making some instances), but it's a minority.
2024-10-25 21:50:27 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 21:51:02 +0200 <monochrom> But if you only use existentials, then it is merely abstract type, so it is only modelled off Modula-3. >:)
2024-10-25 21:51:40 +0200 <monochrom> even CLU >:)
2024-10-25 21:54:53 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-25 21:55:08 +0200 <monochrom> You may be surprised, but Haskell polymorphism is based off of Java Generics! Source: https://www.vex.net/~trebla/humour/lmcify.html?t=Haskell+polymorphism+is+modelled+off+of+Java+Gene…
2024-10-25 21:56:15 +0200 <tomsmeding> that javascript is more complicated than it could have been :p
2024-10-25 21:56:30 +0200 <tomsmeding> what is the 'c', "cite"?
2024-10-25 21:56:52 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2024-10-25 21:57:07 +0200 <dolio> I guess SML was actually doing exceptions in 1983. They're not quite the current state, though.
2024-10-25 22:00:27 +0200Enrico63(~Enrico63@cmbg-18-b2-v4wan-168328-cust3951.vm17.cable.virginm.net) Enrico63
2024-10-25 22:02:19 +0200 <Enrico63> Hello... I need some help here. I've just run `cabal update`, and that broke Xmobar. When I `cabal build` xmobar, I get this error
2024-10-25 22:02:19 +0200 <Enrico63> ```
2024-10-25 22:02:20 +0200 <Enrico63> [39 of 46] Compiling CParser ( dist/build/CParser.hs, dist/build/CParser.o, dist/build/CParser.dyn_o )
2024-10-25 22:02:20 +0200 <Enrico63> dist/build/CParser.hs:6474:46: error: [GHC-76037]
2024-10-25 22:02:21 +0200 <Enrico63>     Not in scope: ‘Prelude.reverse’
2024-10-25 22:02:21 +0200 <Enrico63>     Suggested fixes:
2024-10-25 22:02:22 +0200 <Enrico63>       • Perhaps use one of these:
2024-10-25 22:02:22 +0200 <Enrico63>           ‘Prelude.traverse’ (imported from Prelude),
2024-10-25 22:02:23 +0200 <Enrico63>           ‘Prelude.even’ (imported from Prelude),
2024-10-25 22:02:23 +0200 <Enrico63>           ‘Prelude.reads’ (imported from Prelude)
2024-10-25 22:02:24 +0200 <Enrico63>       • Remove ‘reverse’ from the explicit hiding list in the import of
2024-10-25 22:02:24 +0200 <Enrico63>         ‘Prelude’ (at dist/build/CParser.hs:18:1-34).
2024-10-25 22:02:25 +0200 <Enrico63>      |
2024-10-25 22:02:25 +0200 <Enrico63> 6474 | discard_input_until_exp i tk (Prelude.reverse catch_frames_new)
2024-10-25 22:02:26 +0200 <Enrico63>      | ^^^^^^^^^^^^^^^
2024-10-25 22:02:26 +0200 <Enrico63> ```
2024-10-25 22:02:45 +0200 <Enrico63> Any suggestion as to how to go about it?
2024-10-25 22:02:55 +0200alp(~alp@2001:861:e3d6:8f80:55e8:1aad:506c:464b)
2024-10-25 22:05:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 22:10:26 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 22:10:48 +0200 <halloy7829> Enrico63: seems they moved something from Prelude to Data.List again. If you can edit the sources, you should add `import Data.List (reverse)` to the top of the file with the problem. If you can't, you can try downgrading ghc+base
2024-10-25 22:11:14 +0200Square(~Square@user/square) (Ping timeout: 260 seconds)
2024-10-25 22:13:51 +0200Flerix(Flerix@user/Flerix) Flerix
2024-10-25 22:13:58 +0200Everything(~Everythin@178-133-77-41.mobile.vf-ua.net) Everything
2024-10-25 22:14:06 +0200Flerix(Flerix@user/Flerix) ()
2024-10-25 22:15:56 +0200 <Enrico63> I just tried putting that import in all files using reverse.
2024-10-25 22:15:56 +0200 <Enrico63> Now I get this weird errors:
2024-10-25 22:15:57 +0200 <Enrico63> ```
2024-10-25 22:15:57 +0200 <Enrico63> Error: cabal: Failed to build cairo-0.13.11.0 because it depends on
2024-10-25 22:15:58 +0200 <Enrico63> cairo-0.13.11.0 which itself failed to build.
2024-10-25 22:15:58 +0200 <Enrico63> Failed to build glib-0.13.11.0 because it depends on glib-0.13.11.0 which
2024-10-25 22:15:59 +0200 <Enrico63> itself failed to build.
2024-10-25 22:15:59 +0200 <Enrico63> Failed to build
2024-10-25 22:16:00 +0200 <Enrico63> gtk2hs-buildtools-0.13.11.0-d070feafb0e7fdf0b015cb0faa83c29b1284a540e1e4870b5393427367f41843.
2024-10-25 22:16:00 +0200 <Enrico63> Failed to build pango-0.13.11.0 because it depends on pango-0.13.11.0 which
2024-10-25 22:16:01 +0200 <Enrico63> itself failed to build.
2024-10-25 22:16:01 +0200 <Enrico63> Failed to build xmobar-0.49 because it depends on xmobar-0.49 which itself
2024-10-25 22:16:02 +0200 <Enrico63> failed to build.
2024-10-25 22:16:02 +0200 <Enrico63> Failed to build xmobar-0.49 because it depends on xmobar-0.49 which itself
2024-10-25 22:16:03 +0200 <Enrico63> failed to build.
2024-10-25 22:16:03 +0200 <Enrico63> ```
2024-10-25 22:16:39 +0200 <monochrom> tomsmeding: c = confirm. "let me confirm it for you". (remember once upon a time people said "let me google it for you"? :) )
2024-10-25 22:16:53 +0200euleritian(~euleritia@dynamic-176-006-143-043.176.6.pool.telefonica.de) (Ping timeout: 248 seconds)
2024-10-25 22:17:04 +0200 <monochrom> (remember someone actually made a lmgify.com too? :) )
2024-10-25 22:18:17 +0200 <tomsmeding> monochrom: yes I know about lmgtfy :p
2024-10-25 22:18:42 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2024-10-25 22:18:45 +0200JuanDaugherty(~juan@user/JuanDaugherty) JuanDaugherty
2024-10-25 22:20:37 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 248 seconds)
2024-10-25 22:20:37 +0200ljdarj1ljdarj
2024-10-25 22:21:03 +0200 <Enrico63> halloy7829, any idea about that?
2024-10-25 22:21:11 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-25 22:21:14 +0200 <monochrom> reverse was never moved out of Prelude. You have to write a very custom-made "import Prelude(something)" or variations to lose reverse.
2024-10-25 22:21:19 +0200Everything(~Everythin@178-133-77-41.mobile.vf-ua.net) ()
2024-10-25 22:22:24 +0200 <tomsmeding> the error says "the eplicit hiding list in the import of `Prelude'"
2024-10-25 22:22:57 +0200 <tomsmeding> is this a broken build of happy or something? I saw this just yesterday in a completely unrelated project but I haven't debugged it yet
2024-10-25 22:23:13 +0200 <tomsmeding> happy generates an 'import Prelude hiding (reverse)' and then proceeds to produce 'reverse'
2024-10-25 22:23:25 +0200 <tomsmeding> though in my case it was just 'reverse', not 'Prelude.reverse'!
2024-10-25 22:23:41 +0200 <monochrom> The name "CParser" may imply yes :)
2024-10-25 22:24:05 +0200 <tomsmeding> even better, dist/build/CParser.hs is the same file as I ran into
2024-10-25 22:24:09 +0200 <tomsmeding> it's a generated file in language-c
2024-10-25 22:25:18 +0200 <Enrico63> In the meanwhile, I did `cabal clean`, so a lot of stuff is gone... including that `dist` directory mentioned at the beginning of the error
2024-10-25 22:25:50 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-25 22:25:51 +0200 <tomsmeding> it will create it again when it start building language-c
2024-10-25 22:26:24 +0200 <Enrico63> Ok, then maybe it doesn't even get there
2024-10-25 22:26:59 +0200 <Enrico63> Because trying `cabal build` still fails (with the "depends on itself" errors above), but the `dist` directory is not created
2024-10-25 22:27:33 +0200takuan(~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection)
2024-10-25 22:27:40 +0200 <tomsmeding> Enrico63: if you `cabal freeze`, can you share `cabal.project.freeze` on a pastebin? And also your GHC version?
2024-10-25 22:27:42 +0200 <tomsmeding> @where paste
2024-10-25 22:27:42 +0200 <lambdabot> Help us help you: please paste full code, input and/or output at e.g. https://paste.tomsmeding.com