2024/10/18

2024-10-18 00:00:17 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 00:03:45 +0200machinedgod(~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 260 seconds)
2024-10-18 00:04:12 +0200dcoutts__(~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848)
2024-10-18 00:05:21 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-18 00:06:28 +0200troojg(~troojg@user/troojg) troojg
2024-10-18 00:14:42 +0200dcoutts_(~duncan@host86-143-111-204.range86-143.btcentralplus.com)
2024-10-18 00:16:04 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 00:16:50 +0200dcoutts__(~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848) (Read error: Connection reset by peer)
2024-10-18 00:23:31 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-10-18 00:34:08 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 00:38:13 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-18 00:38:18 +0200 <dmj`> tomsmeding: could catch type errors with a typechecker plugin, during unification
2024-10-18 00:39:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 00:42:52 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
2024-10-18 00:45:42 +0200acidjnk_new(~acidjnk@p200300d6e72cfb921c1d480c698edc2c.dip0.t-ipconnect.de) (Ping timeout: 252 seconds)
2024-10-18 00:48:15 +0200mantraofpie_mantraofpie
2024-10-18 00:49:54 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 00:50:18 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-10-18 00:54:46 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 00:55:03 +0200xff0x(~xff0x@2405:6580:b080:900:8b57:d075:1efa:336f) (Ping timeout: 252 seconds)
2024-10-18 00:56:09 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds)
2024-10-18 00:57:54 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2024-10-18 01:05:42 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 01:06:37 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds)
2024-10-18 01:07:32 +0200JuanDaugherty(~juan@user/JuanDaugherty) JuanDaugherty
2024-10-18 01:10:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 01:11:36 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 246 seconds)
2024-10-18 01:14:18 +0200jespada(~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) jespada
2024-10-18 01:15:43 +0200rmca(~rob@188.120.84.50) (Ping timeout: 264 seconds)
2024-10-18 01:15:48 +0200mreh(~matthew@host86-128-2-51.range86-128.btcentralplus.com) (Ping timeout: 245 seconds)
2024-10-18 01:16:44 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) raehik
2024-10-18 01:24:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 01:28:24 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-18 01:31:18 +0200xff0x(~xff0x@2405:6580:b080:900:ecb9:4019:640d:fffc)
2024-10-18 01:39:00 +0200TonyStone(~TonyStone@user/TonyStone) TonyStone
2024-10-18 01:39:21 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 01:40:23 +0200xff0x(~xff0x@2405:6580:b080:900:ecb9:4019:640d:fffc) (Ping timeout: 245 seconds)
2024-10-18 01:43:53 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 01:53:04 +0200raehik(~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds)
2024-10-18 01:54:29 +0200roconnor(~quassel@coq/roconnor) ()
2024-10-18 01:54:44 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 02:01:45 +0200xff0x(~xff0x@2405:6580:b080:900:ecb9:4019:640d:fffc)
2024-10-18 02:01:50 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-18 02:04:34 +0200JuanDaugherty(~juan@user/JuanDaugherty) (Quit: JuanDaugherty)
2024-10-18 02:12:47 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 02:15:39 +0200alp(~alp@2001:861:e3d6:8f80:c611:3442:c342:856d) (Ping timeout: 246 seconds)
2024-10-18 02:21:28 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-18 02:30:06 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-18 02:32:38 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 02:34:12 +0200joeyadams(~joeyadams@syn-184-054-105-097.res.spectrum.com)
2024-10-18 02:34:58 +0200xff0x(~xff0x@2405:6580:b080:900:ecb9:4019:640d:fffc) (Ping timeout: 245 seconds)
2024-10-18 02:36:01 +0200xff0x(~xff0x@2405:6580:b080:900:8b37:7df:94bb:aff9)
2024-10-18 02:37:34 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 02:42:16 +0200identity(~identity@user/ZharMeny) (Quit: ERC 5.6.0.30.1 (IRC client for GNU Emacs 30.0.91))
2024-10-18 02:48:51 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 02:53:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 02:56:27 +0200xff0x(~xff0x@2405:6580:b080:900:8b37:7df:94bb:aff9) (Ping timeout: 265 seconds)
2024-10-18 02:57:49 +0200user363627(~user@user/user363627) user363627
2024-10-18 03:01:38 +0200weary-traveler(~user@user/user363627) (Ping timeout: 252 seconds)
2024-10-18 03:04:14 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 03:05:24 +0200Guest21(~Guest21@2405:9800:b540:8751:51a9:50c7:2a73:9ce0)
2024-10-18 03:06:17 +0200 <Guest21> How can I combine a list of predicates to a single predicate, using logical or?
2024-10-18 03:09:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-18 03:13:58 +0200Square(~Square@user/square) Square
2024-10-18 03:14:06 +0200 <dibblego> Guest21: https://hackage.haskell.org/package/base-4.20.0.1/docs/Data-Monoid.html#t:Any with foldMap
2024-10-18 03:15:29 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds)
2024-10-18 03:17:29 +0200Guest21(~Guest21@2405:9800:b540:8751:51a9:50c7:2a73:9ce0) (Quit: Client closed)
2024-10-18 03:17:53 +0200Square2(~Square4@user/square) (Ping timeout: 245 seconds)
2024-10-18 03:18:22 +0200Guest21(~Guest21@2405:9800:b540:8751:51a9:50c7:2a73:9ce0)
2024-10-18 03:20:03 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 03:20:18 +0200 <Guest21> \ x -> getAny $ foldMap (Any . ($ x)) ps
2024-10-18 03:21:19 +0200 <Guest21> dibblego like this?
2024-10-18 03:21:30 +0200 <dibblego> lgtm!
2024-10-18 03:21:58 +0200 <Guest21> Still more complicated than what I would have hoped for
2024-10-18 03:22:09 +0200 <dibblego> there are functions that make it a little tidier
2024-10-18 03:22:39 +0200 <Guest21> How exactly would that work?
2024-10-18 03:22:42 +0200 <monochrom> \x -> any ($ x) ps
2024-10-18 03:23:20 +0200 <Guest21> This looks nice! Can we get rid of the lambda somehow?
2024-10-18 03:23:37 +0200 <monochrom> No.
2024-10-18 03:24:24 +0200 <Guest21> OK, thanks a lot
2024-10-18 03:24:49 +0200 <monochrom> Yes. Define "myHelper = \x -> any ($ x) ps". Now you just have to say "myHelper".
2024-10-18 03:25:05 +0200 <Lears> :t flip (any . (&))
2024-10-18 03:25:06 +0200 <lambdabot> Foldable t => t (a -> Bool) -> a -> Bool
2024-10-18 03:25:26 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-18 03:26:17 +0200 <Lears> :t (getAny .) . foldMap (Any .)
2024-10-18 03:26:18 +0200 <lambdabot> Foldable t => t (a -> Bool) -> a -> Bool
2024-10-18 03:26:50 +0200 <Lears> (if you really like point-free)
2024-10-18 03:30:41 +0200Guest21(~Guest21@2405:9800:b540:8751:51a9:50c7:2a73:9ce0) (Quit: Client closed)
2024-10-18 03:35:52 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 03:42:41 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-18 03:42:53 +0200hgolden__(~hgolden@23.162.40.110) hgolden
2024-10-18 03:45:49 +0200hgolden_(~hgolden@146.70.173.101) (Ping timeout: 260 seconds)
2024-10-18 03:51:02 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp)
2024-10-18 03:53:53 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 03:56:23 +0200vanishingideal(~vanishing@user/vanishingideal) (Ping timeout: 265 seconds)
2024-10-18 03:58:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 04:02:29 +0200rekahsoft(~rekahsoft@76.69.85.220) (Ping timeout: 252 seconds)
2024-10-18 04:03:31 +0200spew(~spew@155.133.15.235) (Quit: spew)
2024-10-18 04:06:50 +0200 <probie> % import Data.Functor.Contravariant
2024-10-18 04:06:50 +0200 <yahb2> <no output>
2024-10-18 04:07:23 +0200 <probie> % :t not . getPredicate . foldMap (Predicate . (not .))
2024-10-18 04:07:23 +0200 <yahb2> <interactive>:1:7: error: [GHC-83865] ; • Couldn't match type ‘a -> Bool’ with ‘Bool’ ; Expected: Predicate a -> Bool ; Actual: Predicate a -> a -> Bool ; • Probable cause: ‘g...
2024-10-18 04:07:44 +0200 <probie> % :t (not .) . getPredicate . foldMap (Predicate . (not .))
2024-10-18 04:07:44 +0200 <yahb2> (not .) . getPredicate . foldMap (Predicate . (not .)) ; :: Foldable t => t (a -> Bool) -> a -> Bool
2024-10-18 04:09:16 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 04:09:58 +0200 <monochrom> onoes, double negation
2024-10-18 04:13:57 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds)
2024-10-18 04:25:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 04:30:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 04:31:18 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-18 04:38:47 +0200 <Axman6> oh no, you can't not undo that!
2024-10-18 04:40:50 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 04:45:46 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 04:46:13 +0200td_(~td@i53870903.versanet.de) (Ping timeout: 248 seconds)
2024-10-18 04:47:49 +0200td_(~td@i53870913.versanet.de) td_
2024-10-18 04:55:49 +0200troojg(~troojg@user/troojg) (Ping timeout: 260 seconds)
2024-10-18 04:56:16 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net)
2024-10-18 04:56:38 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 05:00:23 +0200morb(~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 245 seconds)
2024-10-18 05:01:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 05:02:23 +0200Square2(~Square4@user/square) Square
2024-10-18 05:04:53 +0200Square(~Square@user/square) (Ping timeout: 248 seconds)
2024-10-18 05:12:25 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 05:18:18 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 245 seconds)
2024-10-18 05:18:58 +0200pavonia(~user@user/siracusa) siracusa
2024-10-18 05:19:02 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-18 05:20:33 +0200monochrom(trebla@216.138.220.146) (Read error: Connection reset by peer)
2024-10-18 05:23:54 +0200monochrom(trebla@216.138.220.146)
2024-10-18 05:30:27 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 05:35:28 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-18 05:43:16 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 05:48:34 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-18 05:59:05 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 06:04:04 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 06:04:39 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-18 06:08:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 06:12:57 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 06:23:46 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 06:29:58 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds)
2024-10-18 06:40:56 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 06:46:14 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 06:47:08 +0200neuroevolutus(~neuroevol@37.19.200.167) neuroevolutus
2024-10-18 06:48:51 +0200neuroevolutus(~neuroevol@37.19.200.167) (Client Quit)
2024-10-18 06:56:44 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 07:03:33 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds)
2024-10-18 07:03:56 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-18 07:13:38 +0200rosco(~rosco@175.136.23.238) rosco
2024-10-18 07:14:46 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 07:18:59 +0200michalz(~michalz@185.246.207.222)
2024-10-18 07:19:08 +0200jinsun(~jinsun@user/jinsun) (Ping timeout: 245 seconds)
2024-10-18 07:19:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-18 07:22:08 +0200takuan(~takuan@178-116-218-225.access.telenet.be)
2024-10-18 07:27:03 +0200euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2024-10-18 07:28:17 +0200Square(~Square@user/square) Square
2024-10-18 07:30:59 +0200rvalue-(~rvalue@user/rvalue) rvalue
2024-10-18 07:31:09 +0200jero98772(~jero98772@2800:484:1d7c:cc00::11)
2024-10-18 07:31:30 +0200rvalue(~rvalue@user/rvalue) (Ping timeout: 252 seconds)
2024-10-18 07:31:38 +0200Square2(~Square4@user/square) (Ping timeout: 245 seconds)
2024-10-18 07:31:46 +0200euphores(~SASL_euph@user/euphores) euphores
2024-10-18 07:31:50 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 07:34:53 +0200rvalue-rvalue
2024-10-18 07:35:00 +0200 <dmj`> is the monomorphism restriction practical anymore
2024-10-18 07:36:39 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-18 07:36:49 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 07:39:24 +0200vanishingideal(~vanishing@user/vanishingideal) (Client Quit)
2024-10-18 07:41:16 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-18 07:44:17 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 07:49:06 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-18 07:57:23 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2024-10-18 08:00:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 08:03:35 +0200jero98772(~jero98772@2800:484:1d7c:cc00::11) (Quit: leaving)
2024-10-18 08:04:52 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 08:12:07 +0200Inst(~Inst@user/Inst) (Remote host closed the connection)
2024-10-18 08:12:26 +0200Inst(~Inst@user/Inst) Inst
2024-10-18 08:14:25 +0200 <probie> Define "practical"
2024-10-18 08:15:48 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 08:19:10 +0200monochrom(trebla@216.138.220.146) (Ping timeout: 252 seconds)
2024-10-18 08:20:11 +0200monochrom(trebla@216.138.220.146)
2024-10-18 08:21:12 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-18 08:22:33 +0200briandaed(~root@185.234.210.211.r.toneticgroup.pl)
2024-10-18 08:27:07 +0200euleritian(~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) (Ping timeout: 264 seconds)
2024-10-18 08:28:04 +0200ft(~ft@p4fc2a216.dip0.t-ipconnect.de) (Quit: leaving)
2024-10-18 08:28:07 +0200euleritian(~euleritia@dynamic-176-000-162-113.176.0.pool.telefonica.de)
2024-10-18 08:28:46 +0200joeyadams(~joeyadams@syn-184-054-105-097.res.spectrum.com) (Quit: Leaving)
2024-10-18 08:30:33 +0200acidjnk_new(~acidjnk@p200300d6e72cfb56a84c1bc5942a5900.dip0.t-ipconnect.de)
2024-10-18 08:31:35 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 08:36:29 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 08:41:29 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2024-10-18 08:42:23 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-18 08:45:17 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 08:48:58 +0200rosco(~rosco@175.136.23.238) (Quit: Lost terminal)
2024-10-18 08:52:39 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 08:56:59 +0200m1dnight(~christoph@d8D861908.access.telenet.be) (Quit: WeeChat 4.4.2)
2024-10-18 08:57:48 +0200m1dnight(~christoph@d8D861908.access.telenet.be) m1dnight
2024-10-18 09:00:02 +0200caconym(~caconym@user/caconym) (Quit: bye)
2024-10-18 09:00:38 +0200caconym(~caconym@user/caconym) caconym
2024-10-18 09:03:21 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 09:04:38 +0200Square(~Square@user/square) (Ping timeout: 252 seconds)
2024-10-18 09:08:01 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds)
2024-10-18 09:08:06 +0200danza(~danza@user/danza) danza
2024-10-18 09:19:07 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 09:23:20 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) (Ping timeout: 252 seconds)
2024-10-18 09:24:05 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-18 09:24:18 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich
2024-10-18 09:24:19 +0200synchromesh(~john@2406:5a00:2497:300:e0d5:e11:3d9d:e9de) (Read error: Connection reset by peer)
2024-10-18 09:25:48 +0200synchromesh(~john@2406:5a00:2497:300:e0d5:e11:3d9d:e9de) synchromesh
2024-10-18 09:26:31 +0200dcoutts_(~duncan@host86-143-111-204.range86-143.btcentralplus.com) (Ping timeout: 264 seconds)
2024-10-18 09:30:26 +0200danza(~danza@user/danza) (Remote host closed the connection)
2024-10-18 09:31:03 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-18 09:32:37 +0200michalz(~michalz@185.246.207.222) (Ping timeout: 248 seconds)
2024-10-18 09:33:13 +0200michalz(~michalz@185.246.207.215)
2024-10-18 09:33:17 +0200michalz(~michalz@185.246.207.215) (Remote host closed the connection)
2024-10-18 09:34:57 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 09:36:09 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 252 seconds)
2024-10-18 09:36:23 +0200 <tomsmeding> dmj`: it is fair that I left ghc plugins out of my response, but given that they were hesitant to write a wrapper around (:>), I'm sure they wouldn't want to write a plugin :p
2024-10-18 09:36:37 +0200 <tomsmeding> and also I don't like plugins if the task can be done in any other way at all
2024-10-18 09:37:08 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) Lord_of_Life
2024-10-18 09:37:49 +0200michalz(~michalz@185.246.207.215)
2024-10-18 09:38:06 +0200peterbecich(~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 265 seconds)
2024-10-18 09:38:38 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz)
2024-10-18 09:39:54 +0200sord937(~sord937@gateway/tor-sasl/sord937) sord937
2024-10-18 09:40:06 +0200ghoulguy(glguy@libera/staff/glguy) (Quit: Quit)
2024-10-18 09:42:14 +0200youthlic(~Thunderbi@user/youthlic) (Ping timeout: 260 seconds)
2024-10-18 09:42:57 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-18 09:43:19 +0200emmanuelux(~emmanuelu@user/emmanuelux) (Quit: au revoir)
2024-10-18 09:43:31 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) kuribas
2024-10-18 09:49:52 +0200rosco(~rosco@175.136.23.238) rosco
2024-10-18 09:58:04 +0200chele(~chele@user/chele) chele
2024-10-18 09:58:22 +0200madjesti1(~madjestic@213.208.215.120)
2024-10-18 10:03:18 +0200madjesti1(~madjestic@213.208.215.120) (Quit: leaving)
2024-10-18 10:14:24 +0200madjestic(~madjestic@213.208.215.120) madjestic
2024-10-18 10:16:21 +0200alp(~alp@2001:861:e3d6:8f80:14e5:83ae:50e4:b9f4)
2024-10-18 10:19:36 +0200youthlic(~Thunderbi@user/youthlic) youthlic
2024-10-18 10:21:33 +0200dcoutts_(~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848)
2024-10-18 10:27:09 +0200Feuermagier(~Feuermagi@user/feuermagier) Feuermagier
2024-10-18 10:28:03 +0200dcoutts__(~duncan@host86-143-111-204.range86-143.btcentralplus.com)
2024-10-18 10:30:49 +0200dcoutts_(~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848) (Ping timeout: 260 seconds)
2024-10-18 10:38:07 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-18 10:38:09 +0200mreh(~matthew@host86-128-2-51.range86-128.btcentralplus.com) mreh
2024-10-18 10:43:33 +0200__monty__(~toonn@user/toonn) toonn
2024-10-18 10:47:31 +0200comonad(~comonad@p200300d0272bda000e01a379c24cc428.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2024-10-18 10:49:31 +0200user363627(~user@user/user363627) (Remote host closed the connection)
2024-10-18 10:49:35 +0200vanishingideal(~vanishing@user/vanishingideal) (Read error: Connection reset by peer)
2024-10-18 10:53:08 +0200vanishingideal(~vanishing@user/vanishingideal) vanishingideal
2024-10-18 10:53:56 +0200lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2024-10-18 11:02:57 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2)
2024-10-18 11:03:05 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) ubert
2024-10-18 11:24:54 +0200Flow(~none@gentoo/developer/flow) (Ping timeout: 260 seconds)
2024-10-18 11:27:01 +0200madjestic(~madjestic@213.208.215.120) (Quit: Lost terminal)
2024-10-18 11:30:23 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-18 11:31:41 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-18 11:38:38 +0200Flow(~none@gentoo/developer/flow) flow
2024-10-18 11:46:11 +0200mari-estel(~mari-este@user/mari-estel) (Ping timeout: 265 seconds)
2024-10-18 11:46:55 +0200rosco(~rosco@175.136.23.238) (Quit: Lost terminal)
2024-10-18 11:47:04 +0200xff0x(~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 252 seconds)
2024-10-18 11:49:01 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-18 11:53:42 +0200synchromesh(~john@2406:5a00:2497:300:e0d5:e11:3d9d:e9de) (Quit: WeeChat 4.0.5)
2024-10-18 11:59:48 +0200driib318(~driib@vmi931078.contaboserver.net) (Quit: The Lounge - https://thelounge.chat)
2024-10-18 12:00:04 +0200mari-estelstill has not solved how to compile hoogle on this low-memory machine
2024-10-18 12:00:23 +0200driib318(~driib@vmi931078.contaboserver.net) driib
2024-10-18 12:01:51 +0200 <briandaed> mari-estel? is it linux? maybe zram can help
2024-10-18 12:02:10 +0200 <mari-estel> cheers, gonna learn about zram
2024-10-18 12:02:25 +0200 <mari-estel> huh "No manual entry"
2024-10-18 12:02:27 +0200ljdarj(~Thunderbi@user/ljdarj) ljdarj
2024-10-18 12:02:42 +0200 <mari-estel> oh, zramctrl. Apropos helped
2024-10-18 12:03:35 +0200 <mari-estel> "set up and control zram devices". Sorry for the slight offtopic but... what is a zram device?
2024-10-18 12:06:01 +0200 <mari-estel> alright there is a link to https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/Documentation/admin-guide/…
2024-10-18 12:12:04 +0200mreh(~matthew@host86-128-2-51.range86-128.btcentralplus.com) (Read error: Connection reset by peer)
2024-10-18 12:12:21 +0200leah2(~leah@vuxu.org) (Ping timeout: 252 seconds)
2024-10-18 12:18:25 +0200mari-estel(~mari-este@user/mari-estel) (Remote host closed the connection)
2024-10-18 12:18:40 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-18 12:21:07 +0200 <tomsmeding> mari-estel: how much RAM; can you add swap?
2024-10-18 12:21:30 +0200 <tomsmeding> also what architecture and linux distro, perhaps someone else can compile for you
2024-10-18 12:22:10 +0200 <mari-estel> 3k MiB, i guess zramctrl is for adding swap, will read about that eventually. I guess this is ARM
2024-10-18 12:22:27 +0200 <tomsmeding> "3k MiB", is that 3 GiB?
2024-10-18 12:22:33 +0200 <tomsmeding> zram is for transparently compressing RAM
2024-10-18 12:22:43 +0200 <mari-estel> yeah 3 GiB i think
2024-10-18 12:22:44 +0200 <tomsmeding> which helps to the extent that processes store compressible stuff in RAM
2024-10-18 12:22:54 +0200 <tomsmeding> I believe zram functions by adding a swap device _in RAM_ that is compressed
2024-10-18 12:23:12 +0200 <tomsmeding> 3 GiB should be enough to compile most haskell things
2024-10-18 12:23:15 +0200 <mari-estel> hum i see. I would rather go for uncompressed swapped then. Any pointers to linux manuals i should read?
2024-10-18 12:23:29 +0200 <mari-estel> well hoogle fails and i think it could only be because of memory
2024-10-18 12:23:30 +0200 <tomsmeding> mari-estel: what happens if you just `cabal install -j1 hoogle`?
2024-10-18 12:23:47 +0200 <mari-estel> i will try that but... how would a single core help?
2024-10-18 12:24:04 +0200 <tomsmeding> well, compiling multiple things simultaneously means you now need to fit _two_ GHCs in RAM :p
2024-10-18 12:24:25 +0200 <tomsmeding> -j1 is an easy way to divide memory usage by like 4
2024-10-18 12:24:32 +0200 <mari-estel> hmm
2024-10-18 12:24:34 +0200 <tomsmeding> (depending on how many cores it ran on before)
2024-10-18 12:24:44 +0200 <mari-estel> cool stuff, trying that now...
2024-10-18 12:25:13 +0200 <tomsmeding> if that doesn't work: keep passing -j1 to cabal, but also: sudo fallocate -l 1G /swapfile; sudo chmod 0600 /swapfile; sudo mkswap /swpafile; sudo swapon /swapfile
2024-10-18 12:25:24 +0200 <tomsmeding> s/swpafile/swapfile/
2024-10-18 12:25:42 +0200 <mari-estel> plenty of hints, cheers tomsmeding!
2024-10-18 12:25:43 +0200 <tomsmeding> fairly sure this does not persist after a reboot
2024-10-18 12:25:51 +0200 <tomsmeding> (which is probably exactly as you want it)
2024-10-18 12:26:13 +0200 <tomsmeding> mari-estel: I have some experience building e.g. the haskell playground on a cheap VPS :p
2024-10-18 12:26:20 +0200euleritian(~euleritia@dynamic-176-000-162-113.176.0.pool.telefonica.de) (Ping timeout: 260 seconds)
2024-10-18 12:26:20 +0200 <mari-estel> (:
2024-10-18 12:26:30 +0200 <briandaed> also there maybe processes that could be stopped, services or something that is not crucial
2024-10-18 12:27:02 +0200 <mari-estel> already tried with no other services running, but i am confident in -j1 and the rest
2024-10-18 12:27:04 +0200 <geekosaur> it will only persist if you add it as a swap entry in /etc/fstab
2024-10-18 12:27:11 +0200 <tomsmeding> right
2024-10-18 12:27:33 +0200 <tomsmeding> mari-estel: let me know what package it fails on if you compile with -j1 and it still fails
2024-10-18 12:27:54 +0200 <tomsmeding> if a haskell package needs more than 3 GiB of RAM to compile on a normal linux distro without excessive stuff happening, the fault is with that package, not with you
2024-10-18 12:28:31 +0200 <tomsmeding> (if it does, my bets are on vector or aeson)
2024-10-18 12:28:39 +0200 <mari-estel> good point about the package... wondering whether pre-installing that with --lib could help. Let us see whether any fails with -j1
2024-10-18 12:29:00 +0200 <tomsmeding> pre-installing won't help, GHC is the big memory-eater here and GHC is restarted from scratch for every new package
2024-10-18 12:29:42 +0200 <mari-estel> hm but in theory if it find the right version ready it will not rebuild?
2024-10-18 12:29:48 +0200 <mari-estel> *finds
2024-10-18 12:30:08 +0200 <tomsmeding> if the problem is indeed memory, then the problem is the peak memory use during the whole process
2024-10-18 12:30:18 +0200 <tomsmeding> you aren't going to lower the peak by doing things in a different order
2024-10-18 12:30:48 +0200 <mari-estel> well avoiding a package's compilation would not allocate that extra amount
2024-10-18 12:31:01 +0200 <tomsmeding> sure, but to pre-install you still have to build it :p
2024-10-18 12:31:39 +0200 <tomsmeding> and having someone else build a _haskell library_ for you is folly, those things depend on the precise compilation configuration of all the transitive dependencies
2024-10-18 12:32:44 +0200 <mari-estel> i see what you mean, the compiler being restarted from scratch means peak is going to be the same, makes sense
2024-10-18 12:32:53 +0200 <tomsmeding> yep
2024-10-18 12:33:38 +0200 <tomsmeding> GHC does compile all the _modules_ in a single package in one process, and that theoretically could result in a higher peak than compiling all modules individually
2024-10-18 12:34:02 +0200 <tomsmeding> but 1. arranging that the latter happens in a cabal project is tricky, and 2. that won't give huge gains, I think
2024-10-18 12:34:29 +0200 <mari-estel> yeah and that is some delving i am not going to tackle at the moment anyways
2024-10-18 12:35:47 +0200 <Inst> people say that the only possible function with a type signature of a -> a, when you're not abusing unsafe, is id
2024-10-18 12:36:13 +0200 <Inst> but why isn't id' or seq foo included?
2024-10-18 12:36:25 +0200 <tomsmeding> what is id'?
2024-10-18 12:36:41 +0200 <Inst> \a -> seq a a
2024-10-18 12:36:46 +0200 <tomsmeding> that's the same as id ;)
2024-10-18 12:37:10 +0200 <geekosaur> do you understand what `seq a a` does? (or more precisely, doesn't do)
2024-10-18 12:37:15 +0200 <tomsmeding> in general, seq a a is the same as a
2024-10-18 12:37:27 +0200 <tomsmeding> it adds a dependency on the evaluation of a to the evaluation of its result, which is a
2024-10-18 12:37:34 +0200 <geekosaur> "ensure that `a` has been evaluated when `a` is evaluated"
2024-10-18 12:37:47 +0200 <tomsmeding> 'seq foo' is indeed different, I guess?
2024-10-18 12:38:28 +0200 <Inst> gah, waiting on browser is stop hanging :(
2024-10-18 12:38:34 +0200 <geekosaur> it's outside the type system model that we are using when discussing that, though
2024-10-18 12:39:08 +0200 <geekosaur> and in particular introduces a possible bottom, but we excluded `undefined`/bottom already from the discussion
2024-10-18 12:39:30 +0200 <merijn> Inst: because people generally handwave non-total inputs
2024-10-18 12:40:17 +0200kronicmage(~kronicmag@neotame.csclub.uwaterloo.ca) (Ping timeout: 248 seconds)
2024-10-18 12:40:41 +0200 <Inst> iirc bang patterns desugars to seq
2024-10-18 12:41:01 +0200 <Inst> but bang patterns will trigger evaluation in where or let clauses
2024-10-18 12:41:57 +0200acidjnk_new(~acidjnk@p200300d6e72cfb56a84c1bc5942a5900.dip0.t-ipconnect.de) (Ping timeout: 248 seconds)
2024-10-18 12:42:02 +0200 <geekosaur> oh, you only excluded unsafe. so I give you `undefined :: a -> a`
2024-10-18 12:42:12 +0200 <Inst> ack :(
2024-10-18 12:42:12 +0200 <geekosaur> (now you see why I excluded it)
2024-10-18 12:42:20 +0200 <Inst> i assume the bottom was excluded as well
2024-10-18 12:42:44 +0200 <geekosaur> but if you exclude bottom then you cannot discuss `seq`
2024-10-18 12:42:48 +0200 <tomsmeding> if you include bottoms, there are so many different bottoms
2024-10-18 12:42:56 +0200 <Inst> here's a weird mystery, like, let foo = id where !_ = undefined
2024-10-18 12:42:58 +0200 <geekosaur> because the only thing it can do is introduce a bottom
2024-10-18 12:43:15 +0200 <tomsmeding> and there is this "fast and loose reasoning is morally correct" paper that people vaguely cite when handwaving bottoms away
2024-10-18 12:45:40 +0200leah2(~leah@vuxu.org) leah2
2024-10-18 12:46:19 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-10-18 12:49:19 +0200 <Inst> hmmm, seems more like an issue with my understanding of bang patterns, ugh
2024-10-18 12:49:38 +0200 <Inst> > foo = id where !_ = undefined
2024-10-18 12:49:39 +0200 <lambdabot> <hint>:1:5: error: parse error on input ‘=’
2024-10-18 12:49:46 +0200 <Inst> > let foo = id where !_ = undefined
2024-10-18 12:49:47 +0200 <lambdabot> <no location info>: error:
2024-10-18 12:49:48 +0200 <lambdabot> not an expression: ‘let foo = id where !_ = undefined’
2024-10-18 12:49:48 +0200 <Inst> > foo 3
2024-10-18 12:49:49 +0200 <lambdabot> error:
2024-10-18 12:49:49 +0200 <lambdabot> • No instance for (Typeable a0)
2024-10-18 12:49:50 +0200 <lambdabot> arising from a use of ‘show_M71330527728707901318’
2024-10-18 12:49:55 +0200 <tomsmeding> try with %
2024-10-18 12:49:58 +0200 <Inst> % let foo = id where !_ = undefined
2024-10-18 12:49:58 +0200 <yahb2> <no output>
2024-10-18 12:50:00 +0200 <tomsmeding> lambdabot is not full ghci
2024-10-18 12:50:05 +0200 <Inst> % foo 3
2024-10-18 12:50:05 +0200 <yahb2> *** Exception: Prelude.undefined ; CallStack (from HasCallStack): ; undefined, called at <interactive>:11:25 in interactive:Ghci3
2024-10-18 12:50:24 +0200 <Inst> % let foo = id where _ = undefined `seq` ()
2024-10-18 12:50:24 +0200 <yahb2> <no output>
2024-10-18 12:50:27 +0200 <Inst> foo 3
2024-10-18 12:50:29 +0200euleritian(~euleritia@dynamic-176-004-236-188.176.4.pool.telefonica.de)
2024-10-18 12:50:34 +0200 <Inst> % foo 3
2024-10-18 12:50:34 +0200 <yahb2> 3
2024-10-18 12:50:39 +0200leah2(~leah@vuxu.org) (Ping timeout: 260 seconds)
2024-10-18 12:51:06 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) lortabac
2024-10-18 12:52:43 +0200kronicmage(~kronicmag@neotame.csclub.uwaterloo.ca)
2024-10-18 12:54:47 +0200 <Inst> https://github.com/ghc-proposals/ghc-proposals/blob/master/proposals/0229-whitespace-bang-patterns…
2024-10-18 12:54:56 +0200 <Inst> hmmm, maybe i misunderstood when i thought bang = seq
2024-10-18 12:55:27 +0200 <tomsmeding> Inst: you forgot the bang in your last example
2024-10-18 12:55:57 +0200 <tomsmeding> % let foo = x `seq` id where x = undefined
2024-10-18 12:55:57 +0200 <yahb2> <no output>
2024-10-18 12:55:59 +0200 <tomsmeding> foo 3
2024-10-18 12:56:01 +0200 <tomsmeding> % foo 3
2024-10-18 12:56:01 +0200 <yahb2> *** Exception: Prelude.undefined ; CallStack (from HasCallStack): ; undefined, called at <interactive>:19:32 in interactive:Ghci6
2024-10-18 12:56:07 +0200 <tomsmeding> bang does become seq
2024-10-18 12:56:12 +0200euleritian(~euleritia@dynamic-176-004-236-188.176.4.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-18 12:56:27 +0200 <tomsmeding> ah, except of course when it doesn't because pattern matching is more complicated
2024-10-18 12:56:39 +0200 <Inst> :(
2024-10-18 12:57:51 +0200 <Inst> the mystery is still, if you have in a let or where cluase, an unknown value, you can bang it and still get evaluation
2024-10-18 12:57:58 +0200 <Inst> an unused value
2024-10-18 12:58:37 +0200acidjnk_new(~acidjnk@p200300d6e72cfb56e90e8e53bb556001.dip0.t-ipconnect.de) acidjnk
2024-10-18 12:58:47 +0200mari-estel(~mari-este@user/mari-estel) (Remote host closed the connection)
2024-10-18 12:59:04 +0200 <Inst> but in general, we pretend that id' = id, or for that matter, let id'' = force, then again, force has an NFData constraint
2024-10-18 12:59:20 +0200 <tomsmeding> id' = id is actually true
2024-10-18 12:59:26 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 12:59:38 +0200 <tomsmeding> id = force is not true, but is true in the world of "total haskell"
2024-10-18 13:00:06 +0200euleritian(~euleritia@tmo-125-85.customers.d1-online.com)
2024-10-18 13:00:14 +0200 <tomsmeding> "id' = id" is true because sure, id' is strict in its argument, but that strictness only comes into play if you actually use the result of the id' call
2024-10-18 13:00:25 +0200 <tomsmeding> and at that point you also evaluate the argument to id
2024-10-18 13:03:08 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-78cd-36ef-c506-b3d4.rev.sfr.net) alexherbo2
2024-10-18 13:04:12 +0200euleritian(~euleritia@tmo-125-85.customers.d1-online.com) (Ping timeout: 246 seconds)
2024-10-18 13:05:55 +0200leah2(~leah@vuxu.org) leah2
2024-10-18 13:09:54 +0200Digitteknohippie(~user@user/digit) Digit
2024-10-18 13:09:56 +0200Digit(~user@user/digit) (Ping timeout: 252 seconds)
2024-10-18 13:13:36 +0200euleritian(~euleritia@dynamic-176-004-236-188.176.4.pool.telefonica.de)
2024-10-18 13:13:49 +0200ft(~ft@p4fc2a216.dip0.t-ipconnect.de) ft
2024-10-18 13:16:40 +0200robobub(uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2024-10-18 13:17:34 +0200 <Inst> i should read up on parametricity and how bang patterns actually work, i guess
2024-10-18 13:17:44 +0200rvalue(~rvalue@user/rvalue) (Read error: Connection reset by peer)
2024-10-18 13:17:50 +0200 <Inst> i still blame Eric Normand for not understanding what a -> a means when he should know better for having worked at Scrive on a Haskell project
2024-10-18 13:18:10 +0200rvalue(~rvalue@user/rvalue) rvalue
2024-10-18 13:18:43 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds)
2024-10-18 13:18:52 +0200Flow(~none@gentoo/developer/flow) (Ping timeout: 272 seconds)
2024-10-18 13:20:19 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 13:20:24 +0200lxsameer(~lxsameer@Serene/lxsameer) (Ping timeout: 260 seconds)
2024-10-18 13:22:45 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) (Ping timeout: 246 seconds)
2024-10-18 13:29:41 +0200DigitteknohippieDigit
2024-10-18 13:30:58 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2024-10-18 13:32:07 +0200euleritian(~euleritia@dynamic-176-004-236-188.176.4.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-18 13:32:27 +0200euleritian(~euleritia@ip-185-104-138-55.ptr.icomera.net)
2024-10-18 13:33:08 +0200Unicorn_Princess(~Unicorn_P@user/Unicorn-Princess/x-3540542) Unicorn_Princess
2024-10-18 13:33:27 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 276 seconds)
2024-10-18 13:33:27 +0200ljdarj1ljdarj
2024-10-18 13:33:59 +0200rosco(~rosco@175.136.23.238) rosco
2024-10-18 13:35:40 +0200Flow(~none@gentoo/developer/flow) flow
2024-10-18 13:38:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-18 13:45:09 +0200euleritian(~euleritia@ip-185-104-138-55.ptr.icomera.net) (Ping timeout: 276 seconds)
2024-10-18 13:48:14 +0200euleritian(~euleritia@dynamic-176-004-236-188.176.4.pool.telefonica.de)
2024-10-18 13:57:42 +0200ljdarj1(~Thunderbi@user/ljdarj) ljdarj
2024-10-18 14:00:12 +0200haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) (Remote host closed the connection)
2024-10-18 14:00:31 +0200ljdarj(~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds)
2024-10-18 14:00:31 +0200ljdarj1ljdarj
2024-10-18 14:00:53 +0200haskellbridge(~hackager@syn-024-093-192-219.res.spectrum.com) hackager
2024-10-18 14:00:53 +0200ChanServ+v haskellbridge
2024-10-18 14:07:28 +0200euleritian(~euleritia@dynamic-176-004-236-188.176.4.pool.telefonica.de) (Ping timeout: 245 seconds)
2024-10-18 14:10:15 +0200euleritian(~euleritia@dynamic-176-000-004-113.176.0.pool.telefonica.de)
2024-10-18 14:18:18 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-78cd-36ef-c506-b3d4.rev.sfr.net) (Remote host closed the connection)
2024-10-18 14:18:38 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-78cd-36ef-c506-b3d4.rev.sfr.net) alexherbo2
2024-10-18 14:19:06 +0200xff0x(~xff0x@2405:6580:b080:900:b1c9:c57e:b0f1:f862)
2024-10-18 14:27:09 +0200alp(~alp@2001:861:e3d6:8f80:14e5:83ae:50e4:b9f4) (Ping timeout: 246 seconds)
2024-10-18 14:33:54 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-78cd-36ef-c506-b3d4.rev.sfr.net) (Remote host closed the connection)
2024-10-18 14:34:57 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-95d5-aaea-ef3c-698e.rev.sfr.net) alexherbo2
2024-10-18 14:38:20 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-95d5-aaea-ef3c-698e.rev.sfr.net) (Remote host closed the connection)
2024-10-18 14:44:34 +0200identity(~identity@user/ZharMeny) identity
2024-10-18 14:48:38 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-39e2-af68-9f9c-c108.rev.sfr.net) alexherbo2
2024-10-18 14:53:19 +0200Flow(~none@gentoo/developer/flow) (Ping timeout: 260 seconds)
2024-10-18 14:59:29 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-18 15:05:15 +0200Flow(~none@gentoo/developer/flow) flow
2024-10-18 15:21:33 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-39e2-af68-9f9c-c108.rev.sfr.net) (Remote host closed the connection)
2024-10-18 15:21:50 +0200hiecaq(~hiecaq@user/hiecaq) hiecaq
2024-10-18 15:26:48 +0200robertm(robertm@lattice.rojoma.com) (Ping timeout: 252 seconds)
2024-10-18 15:30:44 +0200Flow(~none@gentoo/developer/flow) (Quit: WeeChat 4.2.1)
2024-10-18 15:32:33 +0200Flow(~none@gentoo/developer/flow) flow
2024-10-18 15:34:20 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) ubert
2024-10-18 15:36:26 +0200Smiles(uid551636@id-551636.lymington.irccloud.com) Smiles
2024-10-18 15:43:18 +0200dispater(~dispater@mail.brprice.uk) (Quit: ZNC 1.8.2 - https://znc.in)
2024-10-18 15:43:19 +0200orcus(~orcus@mail.brprice.uk) (Quit: ZNC 1.8.2 - https://znc.in)
2024-10-18 15:45:07 +0200dispater(~dispater@mail.brprice.uk)
2024-10-18 15:45:36 +0200orcus(~orcus@mail.brprice.uk)
2024-10-18 15:51:00 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-18 15:52:16 +0200 <Inst> hmmm, so seq and bang patterns are equivalent, except that bang patterns are substantially more ergonomic
2024-10-18 15:52:34 +0200 <Inst> well, depends on context
2024-10-18 15:53:33 +0200 <Inst> just that bangs allow you to do stuff that would require breaking down the standard function syntax to replicate with seq
2024-10-18 15:54:40 +0200euleritian(~euleritia@dynamic-176-000-004-113.176.0.pool.telefonica.de) (Ping timeout: 272 seconds)
2024-10-18 15:55:12 +0200euleritian(~euleritia@dynamic-176-000-151-221.176.0.pool.telefonica.de)
2024-10-18 15:56:09 +0200lxsameer(~lxsameer@Serene/lxsameer) lxsameer
2024-10-18 16:02:14 +0200 <mari-estel> hey tomsmeding, compiling with -j1 worked! Thanks a lot for that!
2024-10-18 16:02:22 +0200 <tomsmeding> mari-estel: yay!
2024-10-18 16:02:25 +0200 <mari-estel> i will try to recall the trick as it seems very useful. Unfortunately now i have "hoogle generate" failing, i will try your other hints about managing swap
2024-10-18 16:02:26 +0200 <tomsmeding> sometimes it's easier than you think
2024-10-18 16:02:46 +0200 <tomsmeding> oh is 'hoogle generate' so ram-hungry too?
2024-10-18 16:02:49 +0200 <tomsmeding> then yes, swap
2024-10-18 16:02:52 +0200 <mari-estel> it is less of a problem though because i managed to install linux on another machine
2024-10-18 16:07:53 +0200Sgeo(~Sgeo@user/sgeo) Sgeo
2024-10-18 16:08:44 +0200Axman6(~Axman6@user/axman6) (Ping timeout: 248 seconds)
2024-10-18 16:18:02 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 16:19:29 +0200comonad(~comonad@p200300d0272bda000e01a379c24cc428.dip0.t-ipconnect.de)
2024-10-18 16:24:38 +0200todi(~todi@p57803331.dip0.t-ipconnect.de) (Quit: ZNC - https://znc.in)
2024-10-18 16:24:54 +0200todi(~todi@p57803331.dip0.t-ipconnect.de) todi
2024-10-18 16:28:53 +0200mari-estel(~mari-este@user/mari-estel) (Remote host closed the connection)
2024-10-18 16:29:14 +0200mari-estel(~mari-este@user/mari-estel) mari-estel
2024-10-18 16:31:11 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 16:37:23 +0200euleritian(~euleritia@dynamic-176-000-151-221.176.0.pool.telefonica.de) (Read error: Connection reset by peer)
2024-10-18 16:37:35 +0200euleritian(~euleritia@ip92340bd4.dynamic.kabel-deutschland.de)
2024-10-18 16:38:19 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds)
2024-10-18 16:38:32 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) (Ping timeout: 255 seconds)
2024-10-18 16:42:46 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-39e2-af68-9f9c-c108.rev.sfr.net) alexherbo2
2024-10-18 16:44:48 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) ubert
2024-10-18 16:47:27 +0200spew(~spew@155.133.15.104) spew
2024-10-18 16:49:15 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 16:52:42 +0200L29Ah(~L29Ah@wikipedia/L29Ah) ()
2024-10-18 16:53:50 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-18 16:56:27 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-18 16:56:27 +0200tabemann_(~tabemann@2600:1700:7990:24e0:9b92:fe17:1b69:2f6b)
2024-10-18 16:56:31 +0200weary-traveler(~user@user/user363627) user363627
2024-10-18 16:56:49 +0200tabemann(~tabemann@2600:1700:7990:24e0:14d2:2457:bd7:5741) (Ping timeout: 260 seconds)
2024-10-18 16:57:53 +0200euleritian(~euleritia@ip92340bd4.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
2024-10-18 16:58:34 +0200glguy(glguy@libera/staff/glguy) glguy
2024-10-18 16:58:52 +0200euleritian(~euleritia@dynamic-176-000-151-221.176.0.pool.telefonica.de)
2024-10-18 17:04:36 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 17:09:24 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds)
2024-10-18 17:13:27 +0200tzh(~tzh@c-76-115-131-146.hsd1.or.comcast.net) tzh
2024-10-18 17:20:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 17:23:05 +0200ubert(~Thunderbi@178.165.179.94.wireless.dyn.drei.com) (Ping timeout: 255 seconds)
2024-10-18 17:23:39 +0200lortabac(~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 260 seconds)
2024-10-18 17:23:51 +0200mari-estel(~mari-este@user/mari-estel) (Remote host closed the connection)
2024-10-18 17:24:24 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds)
2024-10-18 17:25:14 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-39e2-af68-9f9c-c108.rev.sfr.net) (Remote host closed the connection)
2024-10-18 17:34:46 +0200rosco(~rosco@175.136.23.238) (Quit: Lost terminal)
2024-10-18 17:35:21 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 17:40:00 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds)
2024-10-18 17:45:58 +0200kuribas(~user@ip-188-118-57-242.reverse.destiny.be) (Remote host closed the connection)
2024-10-18 17:46:45 +0200euphores(~SASL_euph@user/euphores) (Quit: Leaving.)
2024-10-18 17:48:46 +0200Tuplanolla(~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) Tuplanolla
2024-10-18 17:50:45 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 17:53:25 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2024-10-18 17:55:20 +0200euphores(~SASL_euph@user/euphores) euphores
2024-10-18 17:55:29 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 255 seconds)
2024-10-18 17:55:32 +0200 <glguy> dmj`: yes, it is practical
2024-10-18 18:03:27 +0200billchenchina-(~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe) billchenchina
2024-10-18 18:04:44 +0200alexherbo2(~alexherbo@2a02-8440-3207-4943-39e2-af68-9f9c-c108.rev.sfr.net) alexherbo2
2024-10-18 18:05:36 +0200 <haskellbridge> <maralorn> Lens wizards, please help, I am confused. I have a multiple X in Y, and I want to do three things on all the X, 1. get, 2. map, 3. filter. I can’t write a lawful traversal because filtering reduces the number of Xs. But a Fold is not enough because it can’t be used for mutation. Is there a reasonable optic to do this?
2024-10-18 18:06:07 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) merijn
2024-10-18 18:07:59 +0200 <ncf> use an optic for step 1 and then regular haskell for steps 2 and 3?
2024-10-18 18:09:40 +0200LukeHoersten(~LukeHoers@user/lukehoersten) LukeHoersten
2024-10-18 18:10:11 +0200 <haskellbridge> <maralorn> Well, the problem is that Y is a really big datatype and the Xs are everywhere and I don’t want to repeat locating them 3 times.
2024-10-18 18:11:51 +0200Square(~Square@user/square) Square
2024-10-18 18:13:36 +0200merijn(~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds)
2024-10-18 18:14:23 +0200LukeHoersten(~LukeHoers@user/lukehoersten) (Client Quit)
2024-10-18 18:15:09 +0200 <Lears> I don't know about lenses, but you can write a `traverseMaybe :: Applicative f => (X -> f (Maybe X)) -> Y -> f Y` to fuse these operations.
2024-10-18 18:16:09 +0200LukeHoersten(~LukeHoers@user/lukehoersten) LukeHoersten
2024-10-18 18:16:14 +0200 <c_wraith> You won't get prosecuted for using unlawful optics
2024-10-18 18:16:33 +0200 <c_wraith> The still *work*, they just can't be blindly refactored.
2024-10-18 18:16:45 +0200chele(~chele@user/chele) (Remote host closed the connection)
2024-10-18 18:17:23 +0200 <c_wraith> There's a reason filtered is not a Fold
2024-10-18 18:18:25 +0200 <haskellbridge> <maralorn> c_wraith: Yeah, I know. But in the large team we have I’d rather be careful with that.
2024-10-18 18:18:35 +0200EvanR(~EvanR@user/evanr) EvanR
2024-10-18 18:18:54 +0200 <haskellbridge> <maralorn> Lears: I like the traverseMaybe idea, thank you.
2024-10-18 18:19:02 +0200 <EvanR> is there a version of unfoldr which keeps unfolding forever and doesn't need to deal with Maybe
2024-10-18 18:19:44 +0200 <ncf> wait, so you need to put the filtered list back in?
2024-10-18 18:20:14 +0200ncfis confused about the problem
2024-10-18 18:20:22 +0200 <c_wraith> I'd honestly just use lenses's filtered combinator unless it doesn't work for some reason
2024-10-18 18:20:30 +0200 <c_wraith> err, lens's
2024-10-18 18:20:59 +0200 <c_wraith> EvanR: is that not just... iterate?
2024-10-18 18:21:11 +0200 <EvanR> :t iterate
2024-10-18 18:21:12 +0200 <lambdabot> (a -> a) -> a -> [a]
2024-10-18 18:21:24 +0200 <c_wraith> or do you want a separate state value that's passed along?
2024-10-18 18:21:27 +0200 <EvanR> quite possible
2024-10-18 18:21:29 +0200billchenchina-(~billchenc@2a0d:2580:ff0c:1:e3c9:c52b:a429:5bfe) (Remote host closed the connection)
2024-10-18 18:21:41 +0200 <EvanR> you could just map the sequence of states?
2024-10-18 18:22:15 +0200 <EvanR> if so, haskell at its finest
2024-10-18 18:22:38 +0200 <c_wraith> a common pattern with iterate is to use it on (state, value) tuples then map snd to get rid of the states
2024-10-18 18:23:53 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2024-10-18 18:26:06 +0200 <haskellbridge> <maralorn> ncf: Yes.
2024-10-18 18:27:10 +0200 <ncf> then you should have a lens or a traversal with target type [Whatever]
2024-10-18 18:27:27 +0200 <ncf> so you can map/filter/whatever over that
2024-10-18 18:28:55 +0200acidjnk_new(~acidjnk@p200300d6e72cfb56e90e8e53bb556001.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)