2022/07/26

2022-07-26 00:00:45 +0200drlkf(~drlkf@ns327185.ip-37-187-109.eu) (Client Quit)
2022-07-26 00:01:09 +0200drlkf(~drlkf@ns327185.ip-37-187-109.eu)
2022-07-26 00:01:26 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 00:01:47 +0200gmg(~user@user/gehmehgeh) (Quit: Leaving)
2022-07-26 00:02:48 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-26 00:03:15 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 00:04:30 +0200ubert(~Thunderbi@178.165.164.216.wireless.dyn.drei.com) (Ping timeout: 268 seconds)
2022-07-26 00:05:28 +0200azimut_(~azimut@gateway/tor-sasl/azimut)
2022-07-26 00:05:49 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
2022-07-26 00:06:41 +0200michalz(~michalz@185.246.204.72) (Remote host closed the connection)
2022-07-26 00:07:03 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
2022-07-26 00:07:06 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 00:12:42 +0200__monty__(~toonn@user/toonn) (Quit: leaving)
2022-07-26 00:13:05 +0200 <pavonia> Bah, I'm stupid. The isqrt function received a negative value and ran into an infinite loop. I didn't even notice that :S
2022-07-26 00:13:59 +0200 <hpc> that's the power of positive thinking!
2022-07-26 00:14:36 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 00:14:47 +0200 <hpc> also in the future, Debug.Trace
2022-07-26 00:15:36 +0200 <hpc> it's the best module i always forget about
2022-07-26 00:17:16 +0200 <hpc> that and System.IO when i forget what's in Prelude, but we don't talk about that :P
2022-07-26 00:17:27 +0200sandy_doo(~sandydoo@185.209.196.166) (Ping timeout: 268 seconds)
2022-07-26 00:18:00 +0200drlkf(~drlkf@ns327185.ip-37-187-109.eu) (Quit: q+)
2022-07-26 00:18:25 +0200drlkf(~drlkf@drlkf.net)
2022-07-26 00:18:25 +0200 <monochrom> I use the power of tautological thinking.
2022-07-26 00:18:47 +0200 <monochrom> Every inexplicable problem is caused by something you don't think is the cause.
2022-07-26 00:18:51 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 00:19:18 +0200califax(~califax@user/califx)
2022-07-26 00:19:54 +0200 <hpc> i use that tautology all the time
2022-07-26 00:20:12 +0200 <hpc> although i rephrases it as "every impossible problem has an impossible cause", because that's often what it feels like having to use it
2022-07-26 00:20:44 +0200 <monochrom> Hey that reminds me.
2022-07-26 00:20:45 +0200 <hpc> and sort of makes you think of more causes than just "something you don't think is the cause"
2022-07-26 00:21:02 +0200 <monochrom> Every idealized problem has an idealized solution, too :)
2022-07-26 00:21:42 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 00:21:53 +0200 <hpc> heh
2022-07-26 00:22:01 +0200 <hpc> i also like deming's quote, "don't just do something, stand there!"
2022-07-26 00:22:58 +0200 <monochrom> My example comes from electronics engineering. There are op amps; the idealized one says infinite amplification. It has a simple idealized model that works: The two input pins, therefore, have 0 current between them and 0 voltage between them too.
2022-07-26 00:24:15 +0200 <monochrom> That simple model has the name "virtual open (because 0 current) and virtual ground/closed (because 0 voltage)". You can see how that name confuses everyone because it's sounds like a paradox.
2022-07-26 00:24:59 +0200 <hpc> they're just both ground
2022-07-26 00:25:09 +0200 <hpc> ground has 0 voltage relative to itself, and 0 current from itself to itself
2022-07-26 00:25:22 +0200 <monochrom> This is where one may find that I had always been a formalist and "shut up and calculate" guy. Because I was not confused. It's just formulas that work.
2022-07-26 00:25:23 +0200jese(~nikola@93-86-165-247.dynamic.isp.telekom.rs)
2022-07-26 00:25:50 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 240 seconds)
2022-07-26 00:26:10 +0200 <hpc> open/closed aren't "real" observations, they're abstractions within the bounds of what usually happens in circuit design
2022-07-26 00:26:23 +0200 <hpc> i like explaining this to people who take the OSI model to heart too
2022-07-26 00:26:36 +0200 <hpc> nothing stops you from wrapping a tls stream inside another tls stream
2022-07-26 00:27:05 +0200 <hpc> and other such layering violations
2022-07-26 00:28:24 +0200 <hpc> (i also like to tell people packet switching is NAT, that one usually takes them a minute)
2022-07-26 00:28:39 +0200 <monochrom> heh
2022-07-26 00:30:24 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 00:30:36 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 00:30:45 +0200califax(~califax@user/califx)
2022-07-26 00:30:50 +0200 <hpc> this is all part of my long con to make functional programming look horrifyingly normal
2022-07-26 00:33:27 +0200mixphix(~cigsender@bras-base-otwaon237cw-grc-11-174-91-129-69.dsl.bell.ca)
2022-07-26 00:35:33 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Remote host closed the connection)
2022-07-26 00:40:02 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 00:41:31 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Remote host closed the connection)
2022-07-26 00:41:59 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 00:44:25 +0200renzhi(~xp@2607:fa49:6500:b100::6a66)
2022-07-26 00:45:18 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 00:46:59 +0200Tuplanolla(~Tuplanoll@91-159-68-5.elisa-laajakaista.fi) (Quit: Leaving.)
2022-07-26 00:48:51 +0200jespada(~jespada@190.7.36.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-26 00:49:05 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-07-26 00:54:33 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 00:56:21 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
2022-07-26 00:56:55 +0200cods(~fred@82-65-232-44.subs.proxad.net) (Ping timeout: 268 seconds)
2022-07-26 00:57:07 +0200cods(~fred@82-65-232-44.subs.proxad.net)
2022-07-26 00:57:24 +0200gentauro(~gentauro@user/gentauro) (Read error: Connection reset by peer)
2022-07-26 00:59:32 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 01:01:17 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 01:01:45 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 01:02:14 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-07-26 01:02:14 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-07-26 01:02:14 +0200wroathe(~wroathe@user/wroathe)
2022-07-26 01:02:37 +0200jese(~nikola@93-86-165-247.dynamic.isp.telekom.rs) (Quit: leaving)
2022-07-26 01:03:26 +0200gentauro(~gentauro@user/gentauro)
2022-07-26 01:04:27 +0200coco(~coco@212-51-146-199.fiber7.init7.net) (Quit: WeeChat 3.5)
2022-07-26 01:08:17 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 01:08:23 +0200srk-(~sorki@user/srk)
2022-07-26 01:08:37 +0200jespada(~jespada@190.7.36.46)
2022-07-26 01:09:41 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 01:09:45 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
2022-07-26 01:10:30 +0200srk(~sorki@user/srk) (Ping timeout: 244 seconds)
2022-07-26 01:11:06 +0200srk-srk
2022-07-26 01:12:57 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 268 seconds)
2022-07-26 01:14:29 +0200renzhi(~xp@2607:fa49:6500:b100::6a66) (Ping timeout: 272 seconds)
2022-07-26 01:14:46 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 01:15:05 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 01:15:10 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 01:19:07 +0200jespada(~jespada@190.7.36.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-26 01:21:14 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 01:22:16 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 01:22:31 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 01:29:21 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 01:31:17 +0200winny(~weechat@user/winny)
2022-07-26 01:34:19 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-26 01:34:19 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-26 01:35:03 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 01:35:09 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 268 seconds)
2022-07-26 01:35:25 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 01:35:30 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2022-07-26 01:35:46 +0200juri_(~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 268 seconds)
2022-07-26 01:35:59 +0200juri_(~juri@84-19-175-179.pool.ovpn.com)
2022-07-26 01:36:11 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 01:36:28 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 01:36:44 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Remote host closed the connection)
2022-07-26 01:37:13 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 01:37:46 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 01:38:16 +0200 <Pickchea> Hello! What would be a good way to define a 3D-vector in Haskell? «newtype Vector a = Vector (a, a, a)» or «data Vector a = Vector a a a»? I'm currently using the first version but I'm not sure if it's efficient.
2022-07-26 01:39:42 +0200 <Pickchea> Would raw three-tuples be most efficient for many vector-arithmetical operations?
2022-07-26 01:40:38 +0200 <hpc> the first just adds extra data constructor wrapping
2022-07-26 01:41:10 +0200 <hpc> or well, i guess with the newtype it doesn't
2022-07-26 01:41:28 +0200 <hpc> but i would still probably go with the second
2022-07-26 01:43:15 +0200 <dibblego> I'd define the operations over it, write everything in terms of those operations, then stop caring about the representation
2022-07-26 01:43:25 +0200 <geekosaur> perhaps you will be interested in V3 from vector
2022-07-26 01:43:49 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 01:44:28 +0200 <hpc> actually, here's another perspective - if you really want maximum speed you should think about operations on a collection of vectors
2022-07-26 01:45:27 +0200 <hpc> then you're dealing with nice big buffers where the cpu has everything it needs to go fast right in one place
2022-07-26 01:47:11 +0200mvk(~mvk@2607:fea8:5ce3:8500::909a)
2022-07-26 01:47:52 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 01:48:32 +0200 <Pickchea> OK, thanks! I'm just writing a toy implementation of the Barnes-Hut algorithm using gloss and it sometimes goes really choppy and the profiles tells me it's mostly fmap and vector arithmetic.
2022-07-26 01:48:57 +0200 <Pickchea> But I guess that's because it happens so much compared to everything else.
2022-07-26 01:49:17 +0200 <Pickchea> *the profiler
2022-07-26 01:49:37 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
2022-07-26 01:51:10 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 01:51:54 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-26 01:53:02 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 01:55:09 +0200nosewings(~ngpc@cpe-76-186-194-45.tx.res.rr.com)
2022-07-26 01:57:13 +0200nosewings(~ngpc@cpe-76-186-194-45.tx.res.rr.com) (Remote host closed the connection)
2022-07-26 01:57:23 +0200 <jackdk> Pickchea: https://hackage.haskell.org/package/linear-1.21.10/docs/Linear-V3.html
2022-07-26 01:58:31 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
2022-07-26 01:59:53 +0200 <Pickchea> jackdk, will have a look, thanks!
2022-07-26 02:07:15 +0200 <jackdk> You're welcome. I've only used the lib a little bit but it seems reasonable.
2022-07-26 02:07:50 +0200Pickchea(~private@user/pickchea) (Ping timeout: 268 seconds)
2022-07-26 02:08:10 +0200alp__(~alp@user/alp) (Ping timeout: 240 seconds)
2022-07-26 02:08:52 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 02:09:16 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 02:09:37 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
2022-07-26 02:12:05 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 252 seconds)
2022-07-26 02:14:23 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 02:16:30 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
2022-07-26 02:17:22 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 02:18:56 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 02:19:15 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 02:19:37 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
2022-07-26 02:19:56 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 02:19:57 +0200winny(~weechat@user/winny)
2022-07-26 02:20:51 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 02:21:19 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 02:21:42 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 02:21:43 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 02:22:50 +0200mmhat(~mmh@p200300f1c70559aeee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-07-26 02:23:13 +0200mmhat(~mmh@p200300f1c70559aeee086bfffe095315.dip0.t-ipconnect.de)
2022-07-26 02:24:03 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 02:26:12 +0200jargon(~jargon@184.101.188.251)
2022-07-26 02:27:30 +0200zachel_(~zachel@user/zachel) (Ping timeout: 240 seconds)
2022-07-26 02:28:10 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 240 seconds)
2022-07-26 02:29:25 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 268 seconds)
2022-07-26 02:33:22 +0200mrmr(~mrmr@user/mrmr) (Ping timeout: 245 seconds)
2022-07-26 02:33:25 +0200mrmr7(~mrmr@user/mrmr)
2022-07-26 02:34:08 +0200mikoto-chan(~mikoto-ch@164.5.249.78)
2022-07-26 02:36:19 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 02:36:42 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 02:38:31 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 02:39:49 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-07-26 02:39:49 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-07-26 02:39:49 +0200wroathe(~wroathe@user/wroathe)
2022-07-26 02:40:37 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 272 seconds)
2022-07-26 02:41:15 +0200jinsun(~jinsun@user/jinsun) (Read error: Connection reset by peer)
2022-07-26 02:41:39 +0200jinsun(~jinsun@user/jinsun)
2022-07-26 02:41:44 +0200 <Axman6> pavonia: I wrote a fermatFactor function about a week or so ago. if you look in arithmoi and some of its dependencies, you can find functions which can quickly tell you if a^2-n is a square number without having to call isqrt again (it also has an efficient function for finding the integer square root)
2022-07-26 02:41:45 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
2022-07-26 02:41:50 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 02:43:59 +0200 <Axman6> pavonia: https://hackage.haskell.org/package/integer-roots-1.0.2.0/docs/Math-NumberTheory-Roots.html you can use exactSquareRoot
2022-07-26 02:45:50 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net) (Quit: ZNC - https://znc.in)
2022-07-26 02:46:28 +0200 <Axman6> pavonia: it has a very cool fast function which can eliminate most non-square numbers by just looking at small remainders of the candidate: https://hackage.haskell.org/package/integer-roots-1.0.2.0/docs/src/Math.NumberTheory.Roots.Squares…
2022-07-26 02:47:14 +0200mmhat(~mmh@p200300f1c70559aeee086bfffe095315.dip0.t-ipconnect.de) (Quit: WeeChat 3.6)
2022-07-26 02:50:31 +0200 <pavonia> Axman6: Thanks. My current test is much simpler: (n `mod` 16) `elem` [0,1,4,9]
2022-07-26 02:51:28 +0200 <Axman6> that last function I linked to essentially does that and some others similar tests
2022-07-26 02:51:59 +0200 <pavonia> What do you mean by "you can find functions which can quickly tell you if a^2-n is a square number without having to call isqrt again"? I'm only calling it once per candidate
2022-07-26 02:53:09 +0200gurkenglas(~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de) (Ping timeout: 252 seconds)
2022-07-26 02:53:22 +0200 <pavonia> Ah, without the need to recalculate a*a apparently
2022-07-26 02:54:05 +0200 <Axman6> well that's one thing, but I mean that calling isqrt and then checking if (isqrt b)^2 == b is a waste.
2022-07-26 02:54:53 +0200 <Axman6> I had a version that avoided doing a*a every time by instead adding the difference between successive squares, but it ended up slower because it used mor memory I think
2022-07-26 02:54:58 +0200 <pavonia> Yeah, that's what I meant
2022-07-26 02:54:59 +0200 <Axman6> only slightly slower though
2022-07-26 02:57:07 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
2022-07-26 02:57:34 +0200 <Axman6> if you use case exactSquareRoot (a*a - n) of then it should do the least amount of work, since it first does the efficient check for the posibility of being a square. and then runs integerSquareRootRem' :: Integral a => a -> (a, a)
2022-07-26 03:00:28 +0200barrucadu(~barrucadu@carcosa.barrucadu.co.uk) (Quit: leaving)
2022-07-26 03:00:49 +0200barrucadu(~barrucadu@carcosa.barrucadu.co.uk)
2022-07-26 03:02:05 +0200 <pavonia> "After that, the remainders modulo 9, 25, 7, 11 and 13 are tested to eliminate altogether about 99.436% of all numbers." That's fascinating
2022-07-26 03:02:43 +0200 <Axman6> the version I had started the recursion with calculating a2 = a^2; a2' = (a+1)^2; diff = a2' - a2; candidate = a2 - n. then passing around diff and candidate, incrementing diff by two, and adding it to candidate. you end up with no multiplications then
2022-07-26 03:03:00 +0200 <Axman6> but it turned out not to really be worth the extra memory needed I think
2022-07-26 03:03:25 +0200noteness_(~noteness@user/noteness) (Ping timeout: 268 seconds)
2022-07-26 03:04:12 +0200noteness(~noteness@user/noteness)
2022-07-26 03:07:07 +0200Batzy(~quassel@user/batzy) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.)
2022-07-26 03:07:18 +0200 <pavonia> Axman6: Do you by chance know where to find the theory behind those remainder tests? I found the four values mod 16 simply by testing various moduli
2022-07-26 03:11:02 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection)
2022-07-26 03:11:10 +0200califax_(~califax@user/califx)
2022-07-26 03:12:03 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds)
2022-07-26 03:12:03 +0200califax(~califax@user/califx) (Ping timeout: 268 seconds)
2022-07-26 03:12:09 +0200 <Axman6> By chance? no. By Duck Duck Go? Possibly: https://www.researchgate.net/publication/337108188_Detecting_square_numbers :P
2022-07-26 03:12:12 +0200chexum_(~quassel@gateway/tor-sasl/chexum)
2022-07-26 03:12:21 +0200califax_califax
2022-07-26 03:12:28 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 03:12:45 +0200califax(~califax@user/califx)
2022-07-26 03:13:52 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 03:13:54 +0200winny(~weechat@user/winny) (Ping timeout: 268 seconds)
2022-07-26 03:13:54 +0200bitdex_(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
2022-07-26 03:14:02 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 03:16:46 +0200winny(~weechat@user/winny)
2022-07-26 03:16:54 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 268 seconds)
2022-07-26 03:17:09 +0200albet70(~xxx@2400:8902::f03c:92ff:fe60:98d8)
2022-07-26 03:17:32 +0200xff0x(~xff0x@ae133174.dynamic.ppp.asahi-net.or.jp) (Ping timeout: 245 seconds)
2022-07-26 03:19:15 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 272 seconds)
2022-07-26 03:19:42 +0200 <Axman6> looks like that article doesn't talk about those specific constants though
2022-07-26 03:21:14 +0200jao(~jao@45.134.213.219)
2022-07-26 03:22:03 +0200jespada(~jespada@190.7.36.46)
2022-07-26 03:29:05 +0200jao(~jao@45.134.213.219) (Ping timeout: 252 seconds)
2022-07-26 03:30:00 +0200srk-(~sorki@user/srk)
2022-07-26 03:31:14 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-07-26 03:31:49 +0200chexum_(~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
2022-07-26 03:33:11 +0200mvk(~mvk@2607:fea8:5ce3:8500::909a) (Ping timeout: 272 seconds)
2022-07-26 03:33:19 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 03:33:29 +0200srk(~sorki@user/srk) (Ping timeout: 252 seconds)
2022-07-26 03:33:30 +0200srk-srk
2022-07-26 03:33:53 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-26 03:33:53 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 03:34:27 +0200winny(~weechat@user/winny)
2022-07-26 03:35:05 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 03:37:02 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-26 03:37:57 +0200noteness(~noteness@user/noteness) (Ping timeout: 268 seconds)
2022-07-26 03:37:57 +0200noteness_(~noteness@user/noteness)
2022-07-26 03:38:28 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 03:39:08 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 03:39:34 +0200Batzy(~quassel@user/batzy)
2022-07-26 03:41:35 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 03:41:57 +0200naso(~naso@193-116-244-197.tpgi.com.au)
2022-07-26 03:43:38 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 240 seconds)
2022-07-26 03:45:35 +0200mrmr(~mrmr@user/mrmr)
2022-07-26 03:45:53 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
2022-07-26 03:47:20 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 03:47:32 +0200mrmr7(~mrmr@user/mrmr) (Ping timeout: 245 seconds)
2022-07-26 03:47:36 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 03:47:47 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 252 seconds)
2022-07-26 03:52:51 +0200mikoto-chan(~mikoto-ch@164.5.249.78) (Read error: Connection reset by peer)
2022-07-26 03:52:52 +0200Hash(~Hash@tunnel686959-pt.tunnel.tserv15.lax1.ipv6.he.net)
2022-07-26 03:55:55 +0200zaquest(~notzaques@5.130.79.72) (Remote host closed the connection)
2022-07-26 03:57:05 +0200zxx7529(~Thunderbi@user/zxx7529)
2022-07-26 03:59:31 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
2022-07-26 03:59:40 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp)
2022-07-26 04:01:06 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 04:02:15 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 04:02:36 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 04:02:54 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 04:03:45 +0200zaquest(~notzaques@5.130.79.72)
2022-07-26 04:13:33 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Remote host closed the connection)
2022-07-26 04:17:25 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
2022-07-26 04:17:49 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 04:17:51 +0200jespada(~jespada@190.7.36.46) (Read error: Connection reset by peer)
2022-07-26 04:18:28 +0200jespada(~jespada@190.7.36.46)
2022-07-26 04:20:13 +0200[itchyjunk](~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer)
2022-07-26 04:20:30 +0200 <naso> is there a way i can write a function with signature e.g. Foldable f => f a -> Set a , that takes a foldable and converts it to a set, but if the input was already a set it does nothing
2022-07-26 04:21:36 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 04:25:31 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija)))
2022-07-26 04:25:31 +0200finn_elija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 04:25:31 +0200finn_elijaFinnElija
2022-07-26 04:28:48 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 04:29:31 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 04:31:08 +0200benin0(~benin@183.82.177.99)
2022-07-26 04:31:34 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 04:32:33 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Remote host closed the connection)
2022-07-26 04:33:33 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 04:35:48 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655) (Quit: WeeChat 3.5)
2022-07-26 04:38:03 +0200 <dibblego> Set.fromList . toList
2022-07-26 04:38:35 +0200 <dibblego> (though Set is not foldable)
2022-07-26 04:39:29 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 252 seconds)
2022-07-26 04:40:02 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
2022-07-26 04:41:34 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 04:42:10 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 04:44:27 +0200jespada(~jespada@190.7.36.46) (Quit: My MacBook has gone to sleep. ZZZzzz…)
2022-07-26 04:45:38 +0200 <naso> dibblego: thanks
2022-07-26 04:48:30 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 276 seconds)
2022-07-26 04:49:38 +0200td_(~td@94.134.91.242) (Ping timeout: 272 seconds)
2022-07-26 04:50:56 +0200td_(~td@muedsl-82-207-238-218.citykom.de)
2022-07-26 04:51:49 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 04:51:58 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 04:52:22 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
2022-07-26 04:53:20 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net)
2022-07-26 04:53:46 +0200 <naso> dibblego: if Set is not foldable, why can i apply unions to a set of sets, unions has type unions :: (Foldable f, Ord a) => f (Set a) -> Set a
2022-07-26 04:54:21 +0200 <dibblego> because in that type, f is foldable
2022-07-26 04:54:54 +0200 <naso> e.g. i can do : Set.unions (Set.singleton (Set.empty))
2022-07-26 04:55:10 +0200 <naso> (Set.singleton (Set.empty)) :: Set (Set a)
2022-07-26 04:55:19 +0200 <naso> ?
2022-07-26 04:56:19 +0200 <naso> doing :info Set, it says there is a Foldable instance for Set
2022-07-26 04:56:26 +0200 <naso> instance Foldable Set
2022-07-26 04:56:27 +0200 <naso> -- Defined in ‘containers-0.6.5.1:Data.Set.Internal’
2022-07-26 04:59:37 +0200 <jackdk> Wasn't part of the point of splitting classes Foldable and Traversable so that non-functor containers like Set could have Foldable instances?
2022-07-26 05:00:01 +0200Kaiepi(~Kaiepi@156.34.47.253) (Read error: Connection reset by peer)
2022-07-26 05:02:26 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 05:02:57 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2022-07-26 05:02:57 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2022-07-26 05:03:13 +0200russruss(~russruss@my.russellmcc.com) (Quit: Ping timeout (120 seconds))
2022-07-26 05:03:32 +0200russruss(~russruss@my.russellmcc.com)
2022-07-26 05:03:57 +0200notzmv(~zmv@user/notzmv)
2022-07-26 05:06:06 +0200eggplantade(~Eggplanta@108-201-191-115.lightspeed.sntcca.sbcglobal.net) (Remote host closed the connection)
2022-07-26 05:10:47 +0200zxx7529(~Thunderbi@user/zxx7529) (Remote host closed the connection)
2022-07-26 05:16:24 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 05:18:04 +0200 <dibblego> ah yeah sorry, I take it back
2022-07-26 05:19:28 +0200 <naso> all good :)
2022-07-26 05:20:27 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 05:21:30 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 05:22:05 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
2022-07-26 05:26:09 +0200Batzy(~quassel@user/batzy) (Read error: Connection reset by peer)
2022-07-26 05:29:34 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
2022-07-26 05:30:14 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 05:32:02 +0200califax(~califax@user/califx) (Ping timeout: 268 seconds)
2022-07-26 05:33:01 +0200califax(~califax@user/califx)
2022-07-26 05:34:02 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-07-26 05:39:06 +0200cyphase(~cyphase@user/cyphase) (Ping timeout: 264 seconds)
2022-07-26 05:39:10 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
2022-07-26 05:40:50 +0200cyphase(~cyphase@user/cyphase)
2022-07-26 05:41:17 +0200noteness_(~noteness@user/noteness) (Ping timeout: 268 seconds)
2022-07-26 05:41:54 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2022-07-26 05:42:30 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Quit: No Ping reply in 180 seconds.)
2022-07-26 05:42:30 +0200chexum_(~quassel@gateway/tor-sasl/chexum)
2022-07-26 05:43:25 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 05:43:30 +0200winny_(~weechat@user/winny)
2022-07-26 05:43:31 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 05:43:55 +0200noteness(~noteness@user/noteness)
2022-07-26 05:44:17 +0200winny(~weechat@user/winny) (Killed (NickServ (GHOST command used by winny_)))
2022-07-26 05:44:22 +0200winny_winny
2022-07-26 05:45:05 +0200hays(rootvegeta@fsf/member/hays) ()
2022-07-26 05:45:16 +0200hays(rootvegeta@fsf/member/hays)
2022-07-26 05:46:10 +0200jargon(~jargon@184.101.188.251) (Remote host closed the connection)
2022-07-26 05:48:30 +0200chexum_(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 05:48:30 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 05:49:12 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
2022-07-26 05:49:34 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 05:49:36 +0200winny(~weechat@user/winny)
2022-07-26 05:49:53 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net) (Ping timeout: 252 seconds)
2022-07-26 05:50:59 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 05:51:31 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 05:51:55 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 05:55:01 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 05:55:23 +0200noteness(~noteness@user/noteness) (Remote host closed the connection)
2022-07-26 05:56:08 +0200noteness(~noteness@user/noteness)
2022-07-26 06:00:05 +0200lys(~lys@user/lys)
2022-07-26 06:00:14 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 06:00:34 +0200hays(rootvegeta@fsf/member/hays) ()
2022-07-26 06:00:45 +0200hays(rootvegeta@fsf/member/hays)
2022-07-26 06:01:06 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 06:09:02 +0200winny(~weechat@user/winny) (Ping timeout: 268 seconds)
2022-07-26 06:09:39 +0200winny(~weechat@user/winny)
2022-07-26 06:11:41 +0200Guest75(~Guest75@103.103.238.3)
2022-07-26 06:12:06 +0200Batzy(~quassel@user/batzy)
2022-07-26 06:16:26 +0200Guest75(~Guest75@103.103.238.3) (Client Quit)
2022-07-26 06:16:45 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
2022-07-26 06:17:39 +0200lys(~lys@user/lys) (Quit: Leaving)
2022-07-26 06:18:14 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 06:18:58 +0200naso(~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection)
2022-07-26 06:19:45 +0200naso(~naso@193-116-244-197.tpgi.com.au)
2022-07-26 06:23:48 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 06:24:59 +0200naso(~naso@193-116-244-197.tpgi.com.au) (Ping timeout: 268 seconds)
2022-07-26 06:26:55 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 252 seconds)
2022-07-26 06:27:55 +0200raym(~raym@user/raym) (Remote host closed the connection)
2022-07-26 06:28:06 +0200hgolden(~hgolden2@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection)
2022-07-26 06:28:08 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:484d:b4da:8443:3fc3) (Remote host closed the connection)
2022-07-26 06:28:25 +0200mixfix41(~sdenynine@user/mixfix41)
2022-07-26 06:28:26 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:484d:b4da:8443:3fc3)
2022-07-26 06:28:28 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-07-26 06:30:32 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 06:31:14 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2022-07-26 06:31:21 +0200naso(~naso@193-116-244-197.tpgi.com.au)
2022-07-26 06:31:53 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 06:31:54 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 06:32:07 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 06:32:44 +0200raym(~raym@user/raym)
2022-07-26 06:42:33 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 06:43:15 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 06:49:38 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 06:50:18 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 06:51:23 +0200Guest80(~Guest80@182.2.8.44)
2022-07-26 06:55:31 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2022-07-26 07:01:41 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 07:05:03 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 07:05:40 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 07:06:21 +0200mbuf(~Shakthi@122.165.55.71)
2022-07-26 07:08:59 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
2022-07-26 07:09:29 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-26 07:12:34 +0200Guest80(~Guest80@182.2.8.44) (Quit: Client closed)
2022-07-26 07:12:35 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 07:12:48 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 07:15:09 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 07:16:52 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 268 seconds)
2022-07-26 07:17:56 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 07:18:46 +0200 <qrpnxz> so it turns out that the Codensity of a MonadReader is also a MonadState. Tried it with ReaderT and indeed works. Unforturnately it uses 2x CPU time, but hey, just 2x not bad for a reader :) I was trying to see why this might be, and i found that a non-transformed reader matches the speed of State exactly. I even tried make a hardcoded ReaderT Codensity and it made no difference. The weird part is
2022-07-26 07:18:48 +0200 <qrpnxz> that the code is the exact same between the transformed and non-transformed version, so it seems there's some invisible different way that Haskell handles passing around a parameterized type that differs from just a normal value passing. Something about laziness and boxed types breaking tailcalls? Hard to tell. Another interesting result is that ContT StateT was also exactly twice the time, but
2022-07-26 07:18:50 +0200 <qrpnxz> ContT State was exactly as fast. (With Codensity woth are as fast as just State).
2022-07-26 07:19:36 +0200 <qrpnxz> s/woth/both
2022-07-26 07:22:10 +0200mmhat(~mmh@p200300f1c70559aeee086bfffe095315.dip0.t-ipconnect.de)
2022-07-26 07:24:12 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
2022-07-26 07:27:27 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 07:31:58 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 07:33:31 +0200Haskelytic(~Haskelyti@118.179.211.17)
2022-07-26 07:39:09 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 07:39:54 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 07:45:12 +0200 <Haskelytic> are haskell modules open?
2022-07-26 07:45:40 +0200 <Haskelytic> as in, can you have 2 source files contributing to the same module namespace?
2022-07-26 07:48:12 +0200mstksg(~jle`@cpe-23-240-75-236.socal.res.rr.com) (Ping timeout: 244 seconds)
2022-07-26 07:50:02 +0200mstksg(~jle`@cpe-23-240-75-236.socal.res.rr.com)
2022-07-26 07:50:10 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 07:51:15 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2022-07-26 07:52:30 +0200 <dsal> No.
2022-07-26 07:52:39 +0200 <dsal> A module can reexport another module, though.
2022-07-26 08:00:13 +0200zachel(~zachel@user/zachel)
2022-07-26 08:02:21 +0200vglfr(~vglfr@91.192.47.10) (Ping timeout: 272 seconds)
2022-07-26 08:05:19 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 08:09:35 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 08:09:48 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 08:12:08 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 08:12:20 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 08:14:21 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 08:15:23 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 08:18:10 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
2022-07-26 08:20:06 +0200chomwitt(~chomwitt@2a02:587:dc00:5a00:f84c:3a59:56f4:d458)
2022-07-26 08:21:22 +0200 <Axman6> Haskelytic: if two packages define the same module that you import, you'll fail to compile it. there is an extension, PackageImports, to disambiguate them though (https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/package_qualified_imports.html#extension-P…)
2022-07-26 08:23:36 +0200alternateved(~user@staticline-31-183-144-54.toya.net.pl)
2022-07-26 08:23:38 +0200 <Haskelytic> thanks!
2022-07-26 08:23:56 +0200 <Haskelytic> btw, how do I progress further after finishing the haskell book
2022-07-26 08:24:30 +0200 <dsal> Write lots of code. Read more Haskell books. :)
2022-07-26 08:24:31 +0200 <Haskelytic> any good intermediate/advanced book recs?
2022-07-26 08:25:13 +0200 <Haskelytic> dsal: (1) is ongoing :). Need some help with books L(
2022-07-26 08:25:37 +0200 <dsal> I mostly do the "write lots of code" thing, but there are verticals like "Optics by Example" which I liked and "Thinking With Types"
2022-07-26 08:25:52 +0200 <dsal> Though I read beginner books now and then just for new perspectives.
2022-07-26 08:26:48 +0200 <Haskelytic> i'm too fresh out of the HFP book to be revisiting it :)
2022-07-26 08:27:01 +0200 <Haskelytic> thanks for those ptrs btw, I'll check them out
2022-07-26 08:28:09 +0200 <jackdk> Haskelytic: http://jackkelly.name/wiki/haskell.html what are you looking for?
2022-07-26 08:28:13 +0200 <dsal> I've not read haskellbook more than once, but picking up new intro books has occasionally helped.
2022-07-26 08:29:56 +0200 <Haskelytic> on an unrelated note, I find it absolutely hilarious that c++23 is adding this https://en.cppreference.com/w/cpp/utility/optional/and_then
2022-07-26 08:31:00 +0200 <Haskelytic> dsal:  skimming the late Richard Bird's haskell books for some mental lubrication :)
2022-07-26 08:31:24 +0200 <Haskelytic> jackdk: whoooaa...thanks for that!
2022-07-26 08:31:36 +0200 <dsal> I've not read *all* the books. Just a few.
2022-07-26 08:31:53 +0200 <dsal> That reading list above looks good. "Parse, Don't Validate" is pretty good life changing stuff.
2022-07-26 08:31:54 +0200vglfr(~vglfr@91.192.47.10) (Read error: Connection reset by peer)
2022-07-26 08:32:01 +0200turlando(~turlando@user/turlando) (Ping timeout: 268 seconds)
2022-07-26 08:32:47 +0200vglfr(~vglfr@91.192.47.10)
2022-07-26 08:34:13 +0200 <sm> Haskelytic: review source repos of a bunch of interesting packages from hackage, clone and try to build them, try to get a small bugfix accepted
2022-07-26 08:34:53 +0200 <jackdk> I love reading random packages that appear in the build logs of cabal, like "what on earth is that? I'll look it up while things are building"
2022-07-26 08:35:12 +0200turlando(~turlando@user/turlando)
2022-07-26 08:35:25 +0200 <jackdk> Haskelytic: "What are you looking for?" was not rhetorical -- where do you intend to go with Haskell?
2022-07-26 08:35:25 +0200gmg(~user@user/gehmehgeh)
2022-07-26 08:36:33 +0200 <jackdk> dsal: I try to curate it fairly carefully, so if you have any suggested additions/removals/replacements I'd be keen to hear them
2022-07-26 08:36:44 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 08:36:59 +0200 <dsal> jackdk: Thanks. I have to look at it a lot more first. There are a few things in there I've not read.
2022-07-26 08:37:22 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-07-26 08:37:44 +0200michalz(~michalz@185.246.204.75)
2022-07-26 08:37:52 +0200coot(~coot@213.134.190.95)
2022-07-26 08:37:56 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 08:38:16 +0200 <Haskelytic> jackdk: I'm learning it on the side so tbh I don't really know. I'm just having a blast finding new ways to write old programs.
2022-07-26 08:38:53 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
2022-07-26 08:39:08 +0200 <sm> porting your own programs is another good way
2022-07-26 08:39:32 +0200 <jackdk> Agreed. I think text-mode games are also a great way to learn a new language, if you're hurting for project ideas
2022-07-26 08:40:01 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-26 08:40:52 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 08:41:56 +0200 <Axman6> Haskelytic: the best way to direct your learning is to make things you want to make and find out what you need to know to achieve that
2022-07-26 08:44:33 +0200lortabac(~lortabac@62.98.20.17)
2022-07-26 08:44:49 +0200 <Hecate> heya Axman6
2022-07-26 08:44:53 +0200 <Hecate> how are you doing?
2022-07-26 08:45:16 +0200 <Axman6> Hey, not too bad my friend, how about you?
2022-07-26 08:46:09 +0200 <Hecate> hands started to fall apart recently, so I need to stop being so glued to my keyboard
2022-07-26 08:48:04 +0200Sgeo(~Sgeo@user/sgeo) (Read error: Connection reset by peer)
2022-07-26 08:48:38 +0200turlando(~turlando@user/turlando) (Ping timeout: 240 seconds)
2022-07-26 08:50:29 +0200 <Axman6> D:
2022-07-26 08:50:42 +0200 <Axman6> yeah definitely take care of those, they're pretty... handy
2022-07-26 08:51:09 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 08:52:32 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
2022-07-26 08:54:00 +0200lisq(~quassel@lis.moe) (Remote host closed the connection)
2022-07-26 08:55:45 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 08:57:18 +0200Haskelytic(~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
2022-07-26 08:59:02 +0200turlando(~turlando@user/turlando)
2022-07-26 09:02:12 +0200acidjnk(~acidjnk@p200300d6e7058624c4d11b9fd3f07ae1.dip0.t-ipconnect.de)
2022-07-26 09:10:03 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-07-26 09:13:10 +0200mikoto-chan(~mikoto-ch@164.5.249.78)
2022-07-26 09:23:49 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 09:25:13 +0200lisq(~quassel@lis.moe)
2022-07-26 09:25:33 +0200tstat(~user@user/tstat)
2022-07-26 09:27:06 +0200gurkenglas(~gurkengla@dslb-002-203-144-112.002.203.pools.vodafone-ip.de)
2022-07-26 09:27:24 +0200tstat(~user@user/tstat) (Client Quit)
2022-07-26 09:29:25 +0200Tuplanolla(~Tuplanoll@91-159-68-5.elisa-laajakaista.fi)
2022-07-26 09:30:46 +0200tstat(~user@user/tstat)
2022-07-26 09:35:01 +0200ubert(~Thunderbi@178.115.45.114.wireless.dyn.drei.com)
2022-07-26 09:36:17 +0200tstat(~user@user/tstat) (Quit: ERC 5.4 (IRC client for GNU Emacs 28.1))
2022-07-26 09:36:37 +0200tstat(~user@user/tstat)
2022-07-26 09:44:39 +0200causal(~user@2001:470:ea0f:3:329c:23ff:fe3f:1e0e) (Quit: WeeChat 3.5)
2022-07-26 09:45:14 +0200zachel_(~zachel@user/zachel)
2022-07-26 09:45:26 +0200phma_(~phma@host-67-44-209-25.hnremote.net)
2022-07-26 09:46:38 +0200zachel(~zachel@user/zachel) (Ping timeout: 268 seconds)
2022-07-26 09:47:51 +0200ccntrq(~Thunderbi@exit-3.office.han.de.mhd.medondo.com)
2022-07-26 09:48:18 +0200phma(~phma@2001:5b0:2172:c678:88c9:3af4:5d5b:cbb2) (Ping timeout: 240 seconds)
2022-07-26 09:49:13 +0200wrengr(~wrengr@249.189.233.35.bc.googleusercontent.com) (Remote host closed the connection)
2022-07-26 09:51:13 +0200phma_phma
2022-07-26 09:51:50 +0200gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2022-07-26 09:52:22 +0200naso(~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection)
2022-07-26 09:52:49 +0200naso(~naso@193-116-244-197.tpgi.com.au)
2022-07-26 09:52:57 +0200raym(~raym@user/raym) (Ping timeout: 245 seconds)
2022-07-26 09:53:12 +0200gmg(~user@user/gehmehgeh)
2022-07-26 09:54:17 +0200MajorBiscuit(~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl)
2022-07-26 09:54:49 +0200raym(~raym@user/raym)
2022-07-26 09:54:49 +0200machinedgod(~machinedg@d172-219-86-154.abhsia.telus.net)
2022-07-26 09:57:07 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 09:57:43 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 10:00:05 +0200mrmr(~mrmr@user/mrmr) (Quit: Ping timeout (120 seconds))
2022-07-26 10:00:25 +0200mrmr(~mrmr@user/mrmr)
2022-07-26 10:02:40 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 260 seconds)
2022-07-26 10:07:43 +0200alp__(~alp@user/alp)
2022-07-26 10:13:10 +0200shriekingnoise(~shrieking@186.137.167.202) (Quit: Quit)
2022-07-26 10:15:04 +0200Pickchea(~private@user/pickchea)
2022-07-26 10:17:08 +0200zebrag(~chris@user/zebrag) (Quit: Konversation terminated!)
2022-07-26 10:21:03 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 10:21:50 +0200chele(~chele@user/chele)
2022-07-26 10:23:04 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 10:23:33 +0200Haskelytic(~Haskelyti@118.179.211.17)
2022-07-26 10:30:57 +0200kuribas(~user@silversquare.silversquare.eu)
2022-07-26 10:30:58 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
2022-07-26 10:31:03 +0200asm(~alexander@user/asm) (Ping timeout: 276 seconds)
2022-07-26 10:32:52 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 10:33:33 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
2022-07-26 10:33:33 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 10:33:34 +0200asm_(~alexander@burner.asm89.io)
2022-07-26 10:34:28 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Quit: _)
2022-07-26 10:34:37 +0200__monty__(~toonn@user/toonn)
2022-07-26 10:34:53 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-07-26 10:36:21 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 10:37:58 +0200eod|fserucas(~eod|fseru@89.214.149.92)
2022-07-26 10:38:00 +0200eod|fserucas_(~eod|fseru@89.214.149.92)
2022-07-26 10:42:15 +0200gmg(~user@user/gehmehgeh) (Remote host closed the connection)
2022-07-26 10:43:26 +0200gmg(~user@user/gehmehgeh)
2022-07-26 10:46:09 +0200tzh(~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz)
2022-07-26 10:47:30 +0200chomwitt(~chomwitt@2a02:587:dc00:5a00:f84c:3a59:56f4:d458) (Ping timeout: 240 seconds)
2022-07-26 10:55:22 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 10:56:18 +0200naso(~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection)
2022-07-26 10:57:14 +0200naso(~naso@193-116-244-197.tpgi.com.au)
2022-07-26 11:00:15 +0200alexfmpe[m](~alexfmpem@2001:470:69fc:105::38ba) (Quit: You have been kicked for being idle)
2022-07-26 11:00:28 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-26 11:01:40 +0200naso(~naso@193-116-244-197.tpgi.com.au) (Remote host closed the connection)
2022-07-26 11:01:55 +0200naso(~naso@193-116-244-197.tpgi.com.au)
2022-07-26 11:05:06 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 11:05:35 +0200mikoto-chan(~mikoto-ch@164.5.249.78) (Ping timeout: 252 seconds)
2022-07-26 11:05:50 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 11:09:42 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
2022-07-26 11:15:43 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
2022-07-26 11:18:10 +0200mmhat(~mmh@p200300f1c70559aeee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-07-26 11:19:12 +0200Haskelytic(~Haskelyti@118.179.211.17) (Quit: Ping timeout (120 seconds))
2022-07-26 11:21:32 +0200coot(~coot@213.134.190.95)
2022-07-26 11:24:32 +0200mc47(~mc47@xmonad/TheMC47)
2022-07-26 11:26:02 +0200tafa(~tafa@user/tafa) (Leaving)
2022-07-26 11:29:09 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 11:31:53 +0200econo(uid147250@user/econo) (Quit: Connection closed for inactivity)
2022-07-26 11:31:55 +0200mmhat(~mmh@p200300f1c705592dee086bfffe095315.dip0.t-ipconnect.de)
2022-07-26 11:32:42 +0200mikoto-chan(~mikoto-ch@164.5.249.78)
2022-07-26 11:33:05 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 11:41:50 +0200cheater(~Username@user/cheater) (Ping timeout: 260 seconds)
2022-07-26 11:42:34 +0200MironZ(~MironZ@nat-infra.ehlab.uk) (Ping timeout: 268 seconds)
2022-07-26 11:44:48 +0200zer0bitz(~zer0bitz@2001:2003:f748:2000:ccfe:106b:4731:3eea)
2022-07-26 11:47:02 +0200SamBellamy(~SamBellam@cpc142034-slou6-2-0-cust488.17-4.cable.virginm.net) ()
2022-07-26 11:48:48 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 11:51:40 +0200cheater(~Username@user/cheater)
2022-07-26 11:57:18 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 240 seconds)
2022-07-26 11:58:59 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 12:04:59 +0200alp__(~alp@user/alp) (Ping timeout: 255 seconds)
2022-07-26 12:08:33 +0200adanwan_(~adanwan@gateway/tor-sasl/adanwan)
2022-07-26 12:08:48 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-07-26 12:09:10 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
2022-07-26 12:09:10 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds)
2022-07-26 12:09:10 +0200winny(~weechat@user/winny) (Ping timeout: 268 seconds)
2022-07-26 12:09:47 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Ping timeout: 268 seconds)
2022-07-26 12:09:47 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
2022-07-26 12:10:21 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 12:10:51 +0200xff0x(~xff0x@125x103x176x34.ap125.ftth.ucom.ne.jp) (Ping timeout: 252 seconds)
2022-07-26 12:11:19 +0200winny(~weechat@user/winny)
2022-07-26 12:12:10 +0200mbuf(~Shakthi@122.165.55.71) (Ping timeout: 268 seconds)
2022-07-26 12:13:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 12:14:03 +0200alp__(~alp@user/alp)
2022-07-26 12:14:03 +0200mbuf(~Shakthi@122.165.55.71)
2022-07-26 12:14:24 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 12:15:07 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-26 12:15:54 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 12:16:00 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-26 12:16:06 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 12:16:29 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-07-26 12:16:57 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 12:18:08 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-07-26 12:20:29 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 244 seconds)
2022-07-26 12:21:01 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 12:22:29 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-26 12:22:45 +0200kjak(~kjak@pool-108-31-68-111.washdc.fios.verizon.net)
2022-07-26 12:23:06 +0200maroloccio(~marolocci@151.70.135.76)
2022-07-26 12:24:19 +0200mbuf(~Shakthi@122.165.55.71) (Remote host closed the connection)
2022-07-26 12:25:01 +0200mbuf(~Shakthi@122.165.55.71)
2022-07-26 12:25:05 +0200sandy_doo(~sandydoo@185.209.196.166)
2022-07-26 12:26:26 +0200califax(~califax@user/califx) (Ping timeout: 268 seconds)
2022-07-26 12:26:31 +0200chomwitt(~chomwitt@2a02:587:dc00:5a00:9176:a2d9:2beb:ace2)
2022-07-26 12:27:03 +0200adanwan_(~adanwan@gateway/tor-sasl/adanwan) (Ping timeout: 268 seconds)
2022-07-26 12:27:03 +0200gmg(~user@user/gehmehgeh) (Ping timeout: 268 seconds)
2022-07-26 12:27:03 +0200noteness(~noteness@user/noteness) (Ping timeout: 268 seconds)
2022-07-26 12:27:03 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
2022-07-26 12:27:03 +0200azimut_(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
2022-07-26 12:27:03 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
2022-07-26 12:27:16 +0200califax(~califax@user/califx)
2022-07-26 12:27:35 +0200Pickchea(~private@user/pickchea) (Ping timeout: 268 seconds)
2022-07-26 12:27:40 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
2022-07-26 12:27:40 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2022-07-26 12:27:40 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds)
2022-07-26 12:27:40 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
2022-07-26 12:29:22 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 12:31:05 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 12:31:58 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-26 12:32:50 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 12:34:47 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 12:39:55 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
2022-07-26 12:40:15 +0200noteness(~noteness@user/noteness)
2022-07-26 12:40:27 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 12:46:26 +0200mach7_(~mach7@2001:871:204:351e:256e:3e20:d180:1856)
2022-07-26 12:46:37 +0200mach7_(~mach7@2001:871:204:351e:256e:3e20:d180:1856) ()
2022-07-26 12:49:10 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
2022-07-26 12:50:29 +0200califax(~califax@user/califx) (Ping timeout: 268 seconds)
2022-07-26 12:53:23 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-26 12:53:23 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 12:53:23 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
2022-07-26 12:53:23 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-07-26 12:53:23 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 12:53:23 +0200noteness(~noteness@user/noteness) (Remote host closed the connection)
2022-07-26 12:53:23 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 13:01:08 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-26 13:01:51 +0200gdd1(~gdd@129.199.146.230) (Ping timeout: 276 seconds)
2022-07-26 13:02:45 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 13:06:45 +0200xff0x(~xff0x@ae133174.dynamic.ppp.asahi-net.or.jp)
2022-07-26 13:08:17 +0200mikoto-chan(~mikoto-ch@164.5.249.78) (Ping timeout: 268 seconds)
2022-07-26 13:12:35 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 13:12:35 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-26 13:12:53 +0200alp__(~alp@user/alp) (Remote host closed the connection)
2022-07-26 13:12:56 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-07-26 13:13:17 +0200alp__(~alp@user/alp)
2022-07-26 13:13:50 +0200noteness(~noteness@user/noteness)
2022-07-26 13:14:39 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-26 13:18:17 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 13:18:24 +0200bahamas(~lucian@86.120.77.115)
2022-07-26 13:18:50 +0200 <bahamas> shouldn't wai-static-middleware set the content type of a js file to text/javascript?
2022-07-26 13:18:52 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 13:18:55 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 13:18:55 +0200mc47(~mc47@xmonad/TheMC47) (Remote host closed the connection)
2022-07-26 13:19:11 +0200tstat(~user@user/tstat) (Remote host closed the connection)
2022-07-26 13:19:18 +0200 <bahamas> I see in response headers Content-Type: text/plain
2022-07-26 13:19:39 +0200tstat(~user@user/tstat)
2022-07-26 13:19:46 +0200 <bahamas> the file name is "head.3dc67258.js"
2022-07-26 13:20:26 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 13:20:41 +0200winny(~weechat@user/winny)
2022-07-26 13:21:13 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 13:21:27 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex)
2022-07-26 13:21:29 +0200gmg(~user@user/gehmehgeh)
2022-07-26 13:21:53 +0200califax(~califax@user/califx)
2022-07-26 13:22:14 +0200acidjnk(~acidjnk@p200300d6e7058624c4d11b9fd3f07ae1.dip0.t-ipconnect.de) (Remote host closed the connection)
2022-07-26 13:22:32 +0200acidjnk(~acidjnk@p200300d6e7058624c4d11b9fd3f07ae1.dip0.t-ipconnect.de)
2022-07-26 13:24:03 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 13:25:00 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 13:25:28 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 13:33:09 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-07-26 13:40:13 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 13:42:13 +0200Guest58(~Guest58@185.176.244.72)
2022-07-26 13:42:43 +0200 <bahamas> folks who are doing web development in Haskell. how do you serve your static assets in development?
2022-07-26 13:44:19 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-07-26 13:44:25 +0200gdd1(~gdd@2001:470:1f13:187:de72:d5cb:b676:c00)
2022-07-26 13:45:10 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 13:45:32 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 13:51:46 +0200MironZ(~MironZ@nat-infra.ehlab.uk)
2022-07-26 13:53:05 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 13:54:39 +0200 <sm> I embed them in the executable with file-embed, and serve them with yesod-static
2022-07-26 13:56:10 +0200 <Franciman> nice solucion
2022-07-26 13:57:18 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 13:57:42 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 264 seconds)
2022-07-26 13:57:42 +0200stiell(~stiell@gateway/tor-sasl/stiell) (Ping timeout: 268 seconds)
2022-07-26 13:57:57 +0200 <bahamas> sm: in development? I don't understand the part about embedding them in the executable
2022-07-26 13:58:39 +0200stiell(~stiell@gateway/tor-sasl/stiell)
2022-07-26 14:00:33 +0200 <sm> as in https://hackage.haskell.org/package/hledger-web-1.26.1/docs/src/Hledger.Web.Settings.StaticFiles.h… if that helps. The package docs have more explanation
2022-07-26 14:01:16 +0200 <sm> https://hackage.haskell.org/package/file-embed-0.0.15.0/docs/Data-FileEmbed.html eg
2022-07-26 14:01:19 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds)
2022-07-26 14:01:51 +0200 <sm> (afk)
2022-07-26 14:02:59 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 14:03:22 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo)
2022-07-26 14:06:02 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 14:07:23 +0200noteness(~noteness@user/noteness) (Remote host closed the connection)
2022-07-26 14:07:24 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection)
2022-07-26 14:07:36 +0200califax_(~califax@user/califx)
2022-07-26 14:07:39 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 14:07:39 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 14:07:39 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-26 14:07:58 +0200noteness(~noteness@user/noteness)
2022-07-26 14:08:01 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 14:08:03 +0200liz(~liz@host86-159-158-175.range86-159.btcentralplus.com)
2022-07-26 14:08:10 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 14:08:11 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 14:08:44 +0200califax_califax
2022-07-26 14:14:27 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-07-26 14:22:04 +0200coot(~coot@213.134.190.95)
2022-07-26 14:27:25 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 272 seconds)
2022-07-26 14:29:07 +0200jespada(~jespada@190.7.36.46)
2022-07-26 14:34:38 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 14:36:42 +0200lortabac(~lortabac@62.98.20.17) (Ping timeout: 245 seconds)
2022-07-26 14:37:34 +0200 <bahamas> why do I get Unknown field: "extra-source-files" in the cabal file?
2022-07-26 14:38:47 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 14:38:59 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds)
2022-07-26 14:41:52 +0200wolfshappen(~waff@irc.furworks.de) (Quit: later)
2022-07-26 14:42:14 +0200wolfshappen(~waff@irc.furworks.de)
2022-07-26 14:42:56 +0200mikoto-chan(~mikoto-ch@164.5.249.78)
2022-07-26 14:47:39 +0200bitdex(~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 268 seconds)
2022-07-26 14:50:01 +0200 <Axman6> bahamas: we'd need to see how you're using it to know. the docs ar pretty simple https://cabal.readthedocs.io/en/3.6/cabal-package.html#pkg-field-extra-source-files but if you're using it in the wrong placeit'lll be confused
2022-07-26 14:50:21 +0200bahamas(~lucian@86.120.77.115) (Ping timeout: 252 seconds)
2022-07-26 14:54:17 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
2022-07-26 14:54:44 +0200adanwan(~adanwan@gateway/tor-sasl/adanwan)
2022-07-26 14:57:27 +0200bahamas(~lucian@86.120.77.115)
2022-07-26 14:59:52 +0200tomekgrzesiak(~tomekgrze@109-206-198-75.host.skynet.net.pl)
2022-07-26 15:04:58 +0200dschrempf(~dominik@2a01-036d-0118-b0ba-1f3c-586d-f847-518d.pool6.digikabel.hu)
2022-07-26 15:06:41 +0200bahamas(~lucian@86.120.77.115) (Quit: leaving)
2022-07-26 15:06:44 +0200lortabac(~lortabac@62.98.20.17)
2022-07-26 15:06:44 +0200lortabac(~lortabac@62.98.20.17) (Client Quit)
2022-07-26 15:06:50 +0200lortabac(~lortabac@62.98.20.17)
2022-07-26 15:07:09 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 15:07:43 +0200Kaiepi(~Kaiepi@156.34.47.253) (Remote host closed the connection)
2022-07-26 15:08:07 +0200Kaiepi(~Kaiepi@156.34.47.253)
2022-07-26 15:10:00 +0200lortabac(~lortabac@62.98.20.17) (Client Quit)
2022-07-26 15:10:53 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 252 seconds)
2022-07-26 15:11:37 +0200lortabac(~lortabac@62.98.20.17)
2022-07-26 15:12:53 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 15:15:31 +0200Pickchea(~private@user/pickchea)
2022-07-26 15:17:58 +0200mikoto-chan(~mikoto-ch@164.5.249.78) (Read error: Connection reset by peer)
2022-07-26 15:21:04 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 15:22:51 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 15:25:41 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 255 seconds)
2022-07-26 15:27:32 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
2022-07-26 15:28:09 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer)
2022-07-26 15:28:29 +0200jakalx(~jakalx@base.jakalx.net) ()
2022-07-26 15:31:38 +0200pretty_dumm_guy(trottel@gateway/vpn/protonvpn/prettydummguy/x-88029655)
2022-07-26 15:32:07 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 245 seconds)
2022-07-26 15:32:09 +0200jakalx(~jakalx@base.jakalx.net)
2022-07-26 15:33:55 +0200alp__(~alp@user/alp) (Ping timeout: 272 seconds)
2022-07-26 15:37:54 +0200littlebobeep(~alMalsamo@gateway/tor-sasl/almalsamo) (Remote host closed the connection)
2022-07-26 15:38:50 +0200chexum(~quassel@gateway/tor-sasl/chexum) (Ping timeout: 268 seconds)
2022-07-26 15:39:42 +0200chexum(~quassel@gateway/tor-sasl/chexum)
2022-07-26 15:44:40 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-07-26 15:46:18 +0200zxx7529(~Thunderbi@user/zxx7529)
2022-07-26 15:46:52 +0200alp__(~alp@user/alp)
2022-07-26 15:51:49 +0200Pickchea(~private@user/pickchea) (Quit: Leaving)
2022-07-26 15:56:46 +0200Guest5403(~andre@145.251.60.94.rev.vodafone.pt)
2022-07-26 15:58:03 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 15:58:36 +0200califax(~califax@user/califx)
2022-07-26 16:02:30 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 240 seconds)
2022-07-26 16:09:14 +0200matthewmosior(~matthewmo@173.170.253.91) (Remote host closed the connection)
2022-07-26 16:09:20 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 16:10:53 +0200Guest5403(~andre@145.251.60.94.rev.vodafone.pt) (Quit: Leaving)
2022-07-26 16:11:07 +0200matthewmosior(~matthewmo@173.170.253.91) (Remote host closed the connection)
2022-07-26 16:20:28 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 16:21:23 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 16:25:55 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 244 seconds)
2022-07-26 16:25:58 +0200lortabac(~lortabac@62.98.20.17) (Read error: Connection reset by peer)
2022-07-26 16:27:06 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 16:28:48 +0200lortabac(~lortabac@151.53.221.121)
2022-07-26 16:30:52 +0200vglfr(~vglfr@91.192.47.10) (Ping timeout: 245 seconds)
2022-07-26 16:31:22 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-6989-05e0-1f23-2cd3.res6.spectrum.com) (Ping timeout: 272 seconds)
2022-07-26 16:31:23 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 16:31:47 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 16:33:09 +0200asm_asm
2022-07-26 16:33:18 +0200asm(~alexander@burner.asm89.io) (Changing host)
2022-07-26 16:33:18 +0200asm(~alexander@user/asm)
2022-07-26 16:34:20 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
2022-07-26 16:34:21 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net)
2022-07-26 16:37:20 +0200Guest58(~Guest58@185.176.244.72) (Quit: Client closed)
2022-07-26 16:37:23 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex)
2022-07-26 16:39:46 +0200jao(~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net)
2022-07-26 16:43:59 +0200TonyStone(~TonyStone@2603-7080-8607-c36a-504e-f5c6-7318-fada.res6.spectrum.com)
2022-07-26 16:44:12 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Ping timeout: 268 seconds)
2022-07-26 16:45:10 +0200tomekgrzesiak(~tomekgrze@109-206-198-75.host.skynet.net.pl) (Quit: WeeChat 3.5)
2022-07-26 16:49:57 +0200shriekingnoise(~shrieking@186.137.167.202)
2022-07-26 16:50:17 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
2022-07-26 16:58:32 +0200ccntrq(~Thunderbi@exit-3.office.han.de.mhd.medondo.com) (Quit: ccntrq)
2022-07-26 17:03:52 +0200dschrempf(~dominik@2a01-036d-0118-b0ba-1f3c-586d-f847-518d.pool6.digikabel.hu) (Quit: WeeChat 3.6)
2022-07-26 17:07:26 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10)
2022-07-26 17:12:22 +0200 <matthewmosior> Hello!
2022-07-26 17:12:23 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 255 seconds)
2022-07-26 17:13:48 +0200califax(~califax@user/califx) (Ping timeout: 268 seconds)
2022-07-26 17:13:48 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2022-07-26 17:13:48 +0200gmg(~user@user/gehmehgeh) (Ping timeout: 268 seconds)
2022-07-26 17:14:25 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Ping timeout: 268 seconds)
2022-07-26 17:15:10 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-26 17:15:32 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 17:15:43 +0200gmg(~user@user/gehmehgeh)
2022-07-26 17:16:13 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 17:16:53 +0200Chai-T-Rex(~ChaiTRex@user/chaitrex) (Ping timeout: 268 seconds)
2022-07-26 17:17:02 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com)
2022-07-26 17:17:03 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com) (Changing host)
2022-07-26 17:17:03 +0200dibblego(~dibblego@haskell/developer/dibblego)
2022-07-26 17:17:20 +0200ubert(~Thunderbi@178.115.45.114.wireless.dyn.drei.com) (Remote host closed the connection)
2022-07-26 17:17:59 +0200califax(~califax@user/califx)
2022-07-26 17:19:46 +0200 <geekosaur> hello
2022-07-26 17:21:18 +0200hasbae(~hippoid@c-98-220-13-8.hsd1.il.comcast.net)
2022-07-26 17:23:03 +0200matthewmosior(~matthewmo@173.170.253.91) (Remote host closed the connection)
2022-07-26 17:25:41 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-26 17:26:17 +0200dibblego(~dibblego@haskell/developer/dibblego) (Ping timeout: 245 seconds)
2022-07-26 17:27:04 +0200 <hasbae> import Control.Monad
2022-07-26 17:27:09 +0200 <hasbae> :t liftM
2022-07-26 17:27:10 +0200 <lambdabot> Monad m => (a1 -> r) -> m a1 -> m r
2022-07-26 17:28:07 +0200 <geekosaur> liftM is historical; you probably want fmap
2022-07-26 17:28:08 +0200 <hasbae> is there some logic for what letters are used for typevars? For example, liftM could be Monad m => (a -> b) -> m a -> m b. But instead it chose a1 and r
2022-07-26 17:28:38 +0200 <geekosaur> there is logic somewhere but it's not particularly understandable unless you understand the guts of the typechecker
2022-07-26 17:29:09 +0200 <dolio> That one is written in the source that way, for some reason.
2022-07-26 17:29:14 +0200 <hasbae> how does one get started in exploring the guts of the typechecker?
2022-07-26 17:29:20 +0200 <dolio> https://hackage.haskell.org/package/base-4.16.2.0/docs/src/GHC.Base.html#liftM
2022-07-26 17:30:00 +0200lortabac(~lortabac@151.53.221.121) (Quit: WeeChat 2.8)
2022-07-26 17:30:26 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com)
2022-07-26 17:30:26 +0200dibblego(~dibblego@122-199-1-30.ip4.superloop.com) (Changing host)
2022-07-26 17:30:26 +0200dibblego(~dibblego@haskell/developer/dibblego)
2022-07-26 17:30:46 +0200 <geekosaur> first you go through https://gitlab.haskell.org/ghc/ghc/-/wikis/commentary/compiler/type-checker (and more generally the commentary of which that is a part)
2022-07-26 17:30:49 +0200 <qrpnxz> hasbae: ik it's informed by whatever name is on the explicit type sigs you write, from there idk, something arbitrary
2022-07-26 17:31:54 +0200 <hasbae> geekosaur: very cool
2022-07-26 17:32:08 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:484d:b4da:8443:3fc3) (Read error: Connection reset by peer)
2022-07-26 17:32:10 +0200mmhat(~mmh@p200300f1c705592dee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-07-26 17:32:12 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 17:32:57 +0200use-value(~Thunderbi@2a00:23c6:8a03:2f01:484d:b4da:8443:3fc3)
2022-07-26 17:32:57 +0200Haskelytic(~Haskelyti@118.179.211.17)
2022-07-26 17:33:15 +0200 <geekosaur> the commentary is very useful in understanding ghc. but it's not the full story; after going through the commentary you start reading the Notes in the typechecker source (ghc is well supplied with internal source documentation in this form)
2022-07-26 17:34:12 +0200MajorBiscuit(~MajorBisc@wlan-145-94-167-213.wlan.tudelft.nl) (Ping timeout: 245 seconds)
2022-07-26 17:36:30 +0200sammelweis(~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Ping timeout: 240 seconds)
2022-07-26 17:36:38 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 255 seconds)
2022-07-26 17:39:21 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 17:43:53 +0200ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (Ping timeout: 255 seconds)
2022-07-26 17:43:55 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
2022-07-26 17:46:19 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 17:46:43 +0200wolfshappen(~waff@irc.furworks.de) (Ping timeout: 252 seconds)
2022-07-26 17:47:48 +0200naso(~naso@193-116-244-197.tpgi.com.au) ()
2022-07-26 17:49:50 +0200pavonia(~user@user/siracusa) (Quit: Bye!)
2022-07-26 17:54:12 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 17:54:23 +0200bitmapper(uid464869@id-464869.lymington.irccloud.com)
2022-07-26 17:56:58 +0200hasbae(~hippoid@c-98-220-13-8.hsd1.il.comcast.net) (Quit: WeeChat 3.5)
2022-07-26 17:57:47 +0200phma(~phma@host-67-44-209-25.hnremote.net) (Read error: Connection reset by peer)
2022-07-26 17:58:35 +0200phma(phma@2001:5b0:215a:9638:43b9:44a9:71b1:584d)
2022-07-26 17:59:12 +0200king_gs(~Thunderbi@2806:103e:29:a1b3:bd47:9a15:c45b:3fe3)
2022-07-26 17:59:25 +0200king_gs(~Thunderbi@2806:103e:29:a1b3:bd47:9a15:c45b:3fe3) (Client Quit)
2022-07-26 18:00:10 +0200cdsmith(~cdsmithma@2001:470:69fc:105::284) (Quit: You have been kicked for being idle)
2022-07-26 18:00:12 +0200vbeatrice[m](~vbeatrice@2001:470:69fc:105::3ebf) (Quit: You have been kicked for being idle)
2022-07-26 18:03:42 +0200acidjnk(~acidjnk@p200300d6e7058624c4d11b9fd3f07ae1.dip0.t-ipconnect.de) (Ping timeout: 264 seconds)
2022-07-26 18:05:31 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 18:06:54 +0200ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net)
2022-07-26 18:08:05 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 18:08:42 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 18:14:09 +0200mbuf(~Shakthi@122.165.55.71) (Quit: Leaving)
2022-07-26 18:14:19 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 18:14:20 +0200acidjnk(~acidjnk@p200300d6e70586241530f244f647e19b.dip0.t-ipconnect.de)
2022-07-26 18:15:24 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 18:16:03 +0200mmhat(~mmh@p200300f1c705592dee086bfffe095315.dip0.t-ipconnect.de)
2022-07-26 18:16:17 +0200winny(~weechat@user/winny)
2022-07-26 18:18:42 +0200alternateved(~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection)
2022-07-26 18:19:04 +0200alternateved(~user@staticline-31-183-144-54.toya.net.pl)
2022-07-26 18:20:40 +0200winny(~weechat@user/winny) (Remote host closed the connection)
2022-07-26 18:20:56 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 268 seconds)
2022-07-26 18:21:24 +0200winny(~weechat@user/winny)
2022-07-26 18:22:03 +0200econo(uid147250@user/econo)
2022-07-26 18:24:59 +0200sandydoo(~sandydoo@185.209.196.166)
2022-07-26 18:25:21 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 18:26:19 +0200sandy_doo(~sandydoo@185.209.196.166) (Ping timeout: 252 seconds)
2022-07-26 18:27:23 +0200wolfshappen(~waff@irc.furworks.de)
2022-07-26 18:31:14 +0200kuribas(~user@silversquare.silversquare.eu) (Remote host closed the connection)
2022-07-26 18:32:02 +0200wolfshappen(~waff@irc.furworks.de) (Ping timeout: 268 seconds)
2022-07-26 18:32:25 +0200dschrempf(~dominik@2a01-036d-0118-b0ba-4c38-2827-7707-d02a.pool6.digikabel.hu)
2022-07-26 18:33:07 +0200wolfshappen(~waff@irc.furworks.de)
2022-07-26 18:37:10 +0200chele(~chele@user/chele) (Remote host closed the connection)
2022-07-26 18:37:55 +0200zebrag(~chris@user/zebrag)
2022-07-26 18:38:04 +0200 <albet70> how to get current date? like "2022-07-27-12:00:00"
2022-07-26 18:38:48 +0200 <qrpnxz> albet70: try the time package
2022-07-26 18:38:53 +0200alternateved(~user@staticline-31-183-144-54.toya.net.pl) (Remote host closed the connection)
2022-07-26 18:38:56 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 18:39:06 +0200dschrempf(~dominik@2a01-036d-0118-b0ba-4c38-2827-7707-d02a.pool6.digikabel.hu) (Ping timeout: 264 seconds)
2022-07-26 18:40:22 +0200 <albet70> yeah, getCurrentTime
2022-07-26 18:40:59 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 252 seconds)
2022-07-26 18:42:42 +0200szkl(uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
2022-07-26 18:43:19 +0200wolfshappen(~waff@irc.furworks.de) (Quit: later)
2022-07-26 18:43:19 +0200raym(~raym@user/raym) (Remote host closed the connection)
2022-07-26 18:43:44 +0200wolfshappen(~waff@irc.furworks.de)
2022-07-26 18:44:38 +0200eod|fserucas_(~eod|fseru@89.214.149.92) (Quit: Leaving)
2022-07-26 18:44:38 +0200eod|fserucas(~eod|fseru@89.214.149.92) (Quit: Leaving)
2022-07-26 18:44:53 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 18:47:32 +0200raym(~raym@user/raym)
2022-07-26 18:48:22 +0200Haskelytic(~Haskelyti@118.179.211.17) (Ping timeout: 252 seconds)
2022-07-26 18:48:43 +0200phma(phma@2001:5b0:215a:9638:43b9:44a9:71b1:584d) (Read error: Connection reset by peer)
2022-07-26 18:49:13 +0200phma(~phma@host-67-44-208-209.hnremote.net)
2022-07-26 18:49:37 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 272 seconds)
2022-07-26 18:50:23 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 18:51:42 +0200zebrag(~chris@user/zebrag) (Ping timeout: 245 seconds)
2022-07-26 18:52:07 +0200 <albet70> import Data.Time.Format.ISO8601 ; do { t <- getCurrentTime; print $ Format t }
2022-07-26 18:52:43 +0200 <albet70> it tell me Data constructor not in scope: Format :: UTCTime -> a0
2022-07-26 18:52:46 +0200 <albet70> why?
2022-07-26 18:53:17 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 18:54:22 +0200califax(~califax@user/califx)
2022-07-26 18:56:04 +0200zebrag(~chris@user/zebrag)
2022-07-26 18:56:17 +0200HaxCPUWaxCPU
2022-07-26 18:57:04 +0200 <albet70> iso8601Format :: FormatUTCTime
2022-07-26 18:57:19 +0200 <geekosaur> because Format is a type constructor, not a data constructor
2022-07-26 18:57:50 +0200 <[exa]> albet70: you might want this instead https://hackage.haskell.org/package/time-1.13/docs/Data-Time-Format.html#v:formatTime
2022-07-26 18:58:06 +0200 <[exa]> good defaults for the first 2 arguments are below on the same page
2022-07-26 19:00:56 +0200phma(~phma@host-67-44-208-209.hnremote.net) (Read error: Connection reset by peer)
2022-07-26 19:01:40 +0200alternateved(~user@staticline-31-183-144-54.toya.net.pl)
2022-07-26 19:04:43 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 19:05:20 +0200 <albet70> I see
2022-07-26 19:11:03 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-07-26 19:11:03 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-07-26 19:11:03 +0200wroathe(~wroathe@user/wroathe)
2022-07-26 19:13:14 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-07-26 19:16:53 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 19:17:10 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 19:17:32 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 245 seconds)
2022-07-26 19:17:45 +0200phma(~phma@2001:5b0:211f:2bf8:e7be:6b39:8198:778d)
2022-07-26 19:18:16 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 19:22:05 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 244 seconds)
2022-07-26 19:23:31 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 19:24:12 +0200zxx7529(~Thunderbi@user/zxx7529) (Remote host closed the connection)
2022-07-26 19:29:45 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 252 seconds)
2022-07-26 19:30:43 +0200causal(~user@50.35.83.177)
2022-07-26 19:32:33 +0200bonz060_(~quassel@2001:bc8:47a4:a23::1) (Ping timeout: 244 seconds)
2022-07-26 19:34:17 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 19:35:47 +0200king_gs(~Thunderbi@2806:103e:29:a1b3:f4cb:9bc4:b429:1659)
2022-07-26 19:35:48 +0200bonz060(~quassel@2001:bc8:47a4:a23::1)
2022-07-26 19:36:04 +0200king_gs(~Thunderbi@2806:103e:29:a1b3:f4cb:9bc4:b429:1659) (Client Quit)
2022-07-26 19:40:28 +0200 <albet70> https://nliu.net/drafts/2021-09-09-2021-09-09-interview-free.html
2022-07-26 19:40:54 +0200 <albet70> this code is insane to me, how I can understand it
2022-07-26 19:41:54 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 19:42:18 +0200califax(~califax@user/califx)
2022-07-26 19:42:22 +0200 <geekosaur> didn't someone (wadler?) also do an embedded basic interpreter in haskell?
2022-07-26 19:44:41 +0200 <albet70> where's the Free type constructor from
2022-07-26 19:45:51 +0200 <geekosaur> lennart augustsson, apparently (embedded BASIC)
2022-07-26 19:46:16 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 19:46:17 +0200 <geekosaur> Control.Monad.Free
2022-07-26 19:46:28 +0200 <geekosaur> it's a free monad, which is commonly used in interpreters
2022-07-26 19:47:33 +0200 <geekosaur> https://hackage.haskell.org/package/BASIC-0.1.5.0/src/examples/HiLo.hs
2022-07-26 19:48:00 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 19:48:18 +0200 <albet70> thanks
2022-07-26 19:51:32 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 244 seconds)
2022-07-26 19:52:17 +0200megablocks(~megablock@94.147.68.197)
2022-07-26 19:52:39 +0200mmhat(~mmh@p200300f1c705592dee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 276 seconds)
2022-07-26 19:53:32 +0200yin(~yin@user/zero)
2022-07-26 19:54:20 +0200 <megablocks> Hello! I am looking at the GHC code to try to figure out how pinned memory works better. My main question boils down to, is there any benefit to using 16kb vs 32kb chunks when I have large items? Or should it just be a multiple of 4kb?
2022-07-26 19:54:52 +0200benin0(~benin@183.82.177.99) (Quit: The Lounge - https://thelounge.chat)
2022-07-26 19:55:02 +0200 <megablocks> My basic understanding is that blocks are 4kb (see https://gitlab.haskell.org/ghc/ghc/-/blob/master/rts/include/rts/Constants.h#L169) but I am not clear on what happens when someone wants a larger chunk.
2022-07-26 19:55:18 +0200 <geekosaur> that is probably a question for #ghc, but I would assume it's trading off performance against fragmentation
2022-07-26 19:55:52 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
2022-07-26 19:56:50 +0200 <geekosaur> (larger blocks mean faster allocation list management but more fragmentation)
2022-07-26 19:57:11 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Remote host closed the connection)
2022-07-26 19:57:18 +0200liz(~liz@host86-159-158-175.range86-159.btcentralplus.com) (Quit: leaving)
2022-07-26 19:57:33 +0200 <megablocks> Ah, I just found there's a concept of "block groups" for adjacent blocks! https://gitlab.haskell.org/ghc/ghc/-/blob/master/rts/sm/BlockAlloc.c
2022-07-26 19:57:50 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 19:58:38 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
2022-07-26 19:58:46 +0200 <megablocks> I'll try in #ghc. I didn't know about that channel. Thank you!
2022-07-26 19:58:47 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915) (Ping timeout: 245 seconds)
2022-07-26 19:59:52 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 19:59:56 +0200Lord_of_Life(~Lord@user/lord-of-life/x-2819915)
2022-07-26 20:02:37 +0200phma(~phma@2001:5b0:211f:2bf8:e7be:6b39:8198:778d) (Read error: Connection reset by peer)
2022-07-26 20:05:09 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
2022-07-26 20:05:37 +0200 <qrpnxz> i tend to pick memory chunks of 4k or a multiple because that's usually the page size on a linux system, idk if some other metric is relevant to ghc GC or something else
2022-07-26 20:06:45 +0200 <megablocks> qrpnxz, GHC uses 4kb as well https://gitlab.haskell.org/ghc/ghc/-/blob/master/rts/include/rts/Constants.h#L169
2022-07-26 20:06:54 +0200 <megablocks> probably for the page size reasons you mention
2022-07-26 20:07:47 +0200mmhat(~mmh@p200300f1c71a2b13ee086bfffe095315.dip0.t-ipconnect.de)
2022-07-26 20:08:38 +0200acidjnk(~acidjnk@p200300d6e70586241530f244f647e19b.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-07-26 20:09:58 +0200waleee(~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340)
2022-07-26 20:14:06 +0200alp__(~alp@user/alp) (Ping timeout: 276 seconds)
2022-07-26 20:17:57 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-07-26 20:22:05 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 20:24:32 +0200phma(~phma@host-67-44-208-28.hnremote.net)
2022-07-26 20:25:07 +0200justsomeguy(~justsomeg@user/justsomeguy) (Ping timeout: 252 seconds)
2022-07-26 20:25:07 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 252 seconds)
2022-07-26 20:25:16 +0200alp__(~alp@user/alp)
2022-07-26 20:25:29 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 20:26:05 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-26 20:26:12 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Remote host closed the connection)
2022-07-26 20:26:50 +0200justsomeguy(~justsomeg@user/justsomeguy)
2022-07-26 20:27:01 +0200Kaipei(~Kaiepi@156.34.47.253)
2022-07-26 20:27:06 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
2022-07-26 20:29:22 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-26 20:30:15 +0200Kaiepi(~Kaiepi@156.34.47.253) (Ping timeout: 252 seconds)
2022-07-26 20:31:03 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds)
2022-07-26 20:32:55 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 20:33:28 +0200megablocks(~megablock@94.147.68.197) ()
2022-07-26 20:42:52 +0200maroloccio(~marolocci@151.70.135.76) (Quit: WeeChat 3.0)
2022-07-26 20:44:05 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 20:45:29 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 20:47:37 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 20:47:50 +0200notzmv(~zmv@user/notzmv) (Ping timeout: 240 seconds)
2022-07-26 20:50:02 +0200coco(~coco@212-51-146-199.fiber7.init7.net)
2022-07-26 20:51:17 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 245 seconds)
2022-07-26 20:52:23 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 20:54:47 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection)
2022-07-26 20:54:59 +0200acidjnk(~acidjnk@p200300d6e705862418f503b3542a7200.dip0.t-ipconnect.de)
2022-07-26 20:55:39 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 20:56:57 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 268 seconds)
2022-07-26 20:58:39 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 21:00:05 +0200sandydoo(~sandydoo@185.209.196.166) (Ping timeout: 272 seconds)
2022-07-26 21:03:22 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475) (Ping timeout: 245 seconds)
2022-07-26 21:03:41 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net)
2022-07-26 21:04:26 +0200sandydoo(~sandydoo@185.209.196.166)
2022-07-26 21:05:00 +0200mon_aaraj(~MonAaraj@user/mon-aaraj/x-4416475)
2022-07-26 21:05:04 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 21:08:47 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
2022-07-26 21:09:52 +0200Pickchea(~private@user/pickchea)
2022-07-26 21:12:59 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 268 seconds)
2022-07-26 21:18:21 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 21:21:13 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2022-07-26 21:21:47 +0200tstat(~user@user/tstat) (Remote host closed the connection)
2022-07-26 21:22:29 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 244 seconds)
2022-07-26 21:25:12 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 21:26:29 +0200justsomeguy(~justsomeg@user/justsomeguy) (Quit: WeeChat 3.5)
2022-07-26 21:26:35 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 21:27:52 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 21:30:44 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 244 seconds)
2022-07-26 21:36:08 +0200dcoutts__(~duncan@host86-151-9-109.range86-151.btcentralplus.com)
2022-07-26 21:38:24 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 21:38:30 +0200dcoutts_(~duncan@host86-171-69-210.range86-171.btcentralplus.com) (Ping timeout: 244 seconds)
2022-07-26 21:39:07 +0200 <phma> Is it possible to make a type whose parameter is a number, rather than another type?
2022-07-26 21:41:47 +0200 <geekosaur> there are type level numbers. they are not values
2022-07-26 21:42:26 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 21:43:10 +0200 <phma> What's a type level number?
2022-07-26 21:43:16 +0200 <geekosaur> > toEnum 1024 :: Data.Fixed.Fixed 2
2022-07-26 21:43:18 +0200 <lambdabot> 512.0
2022-07-26 21:43:48 +0200 <geekosaur> 2 there has kind Natural
2022-07-26 21:44:00 +0200 <geekosaur> and is a type
2022-07-26 21:44:49 +0200 <geekosaur> the general case of wanting a number a type level requires dependent types, which are not supported in Haskell. Try Idris instead.
2022-07-26 21:45:00 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 260 seconds)
2022-07-26 21:45:33 +0200 <phma> I've been defining a complex floating point type; I'd like it to have a specifiable number of digits, normally 22 or 44 but could be any positive integer.
2022-07-26 21:45:50 +0200 <geekosaur> (in particular,m recovering a value-level number from a type level number in Haskell requires a KnownNat constraint)
2022-07-26 21:45:58 +0200 <phma> So "GosperFloat 22" would be a type.
2022-07-26 21:46:12 +0200 <geekosaur> that is doable, go look at Data.Fixed
2022-07-26 21:46:19 +0200raehik(~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 272 seconds)
2022-07-26 21:46:37 +0200 <geekosaur> > .305 :: Data.Fixed.Fixed 3
2022-07-26 21:46:39 +0200 <lambdabot> <hint>:1:1: error: parse error on input ‘.’
2022-07-26 21:46:46 +0200 <geekosaur> > 0.305 :: Data.Fixed.Fixed 3
2022-07-26 21:46:47 +0200 <lambdabot> 0.0
2022-07-26 21:47:03 +0200 <geekosaur> hm, I guess I forget how you use them 😕
2022-07-26 21:47:56 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 21:47:57 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 245 seconds)
2022-07-26 21:48:06 +0200 <phma> found the hackage page of Fixed
2022-07-26 21:48:42 +0200 <geekosaur> recent versions claim to support Natural as well as the predefined E<n> type synonyms
2022-07-26 21:49:42 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 21:49:53 +0200 <exarkun> /buffer 12
2022-07-26 21:50:32 +0200 <geekosaur> oh, I see
2022-07-26 21:50:37 +0200 <geekosaur> > 0.305 :: Data.Fixed.Fixed 1000
2022-07-26 21:50:39 +0200 <lambdabot> 0.305
2022-07-26 21:51:02 +0200 <geekosaur> thought it took number of digits. I think you could define yours that way though
2022-07-26 21:53:55 +0200 <phma> Another thing: is it permissible for a type that's a member of Ord to have a (<) that has some loops?
2022-07-26 21:54:18 +0200 <phma> that is, there exist a,b,c such that a<b, b<c, and c<a
2022-07-26 21:54:29 +0200k8yun(~k8yun@user/k8yun)
2022-07-26 21:57:23 +0200 <darkling> I would be very surprised if it were (although I don't know the exact definition of Ord).
2022-07-26 21:58:00 +0200 <geekosaur> iirc the Report says Ord is a total order, so no
2022-07-26 21:59:34 +0200 <phma> The GosperInteger type encodes Eisenstein integers (complex numbers in a triangular lattice) in the Gosper base.
2022-07-26 21:59:47 +0200jpds(~jpds@gateway/tor-sasl/jpds) (Remote host closed the connection)
2022-07-26 22:00:21 +0200 <phma> To decide which of two GosperIntegers has the larger norm, I found it easier to define (<) on them than convert the norm to Integer.
2022-07-26 22:01:22 +0200 <phma> When comparing norms, the norms are always real numbers, and (<) on GosperIntegers that are real works as expected.
2022-07-26 22:01:45 +0200 <phma> But near the imaginary axis, you can find numbers which compare circularly.
2022-07-26 22:01:52 +0200jpds(~jpds@gateway/tor-sasl/jpds)
2022-07-26 22:01:54 +0200 <geekosaur> fwiw you will find that Complex Double is not Ord
2022-07-26 22:02:16 +0200 <phma> but Eisenstein is Ord, which astonished me
2022-07-26 22:05:40 +0200 <phma> also Double is Ord, but (0/0)==(0/0) is False
2022-07-26 22:06:49 +0200 <phma> > compare (0/0) (0/0)
2022-07-26 22:06:51 +0200 <lambdabot> GT
2022-07-26 22:07:13 +0200 <phma> > (0/0)>(0/0)
2022-07-26 22:07:15 +0200 <lambdabot> False
2022-07-26 22:07:26 +0200chomwitt(~chomwitt@2a02:587:dc00:5a00:9176:a2d9:2beb:ace2) (Ping timeout: 244 seconds)
2022-07-26 22:07:42 +0200 <geekosaur> this gets complained about somewwhat regularly. Double gets to be an exception to the rules because of IEEE arithmetic
2022-07-26 22:08:55 +0200 <phma> does it cause any problems? do people sort lists with NaN in them?
2022-07-26 22:09:23 +0200lagash(lagash@lagash.shelltalk.net) (Ping timeout: 255 seconds)
2022-07-26 22:10:17 +0200coot(~coot@213.134.190.95)
2022-07-26 22:11:38 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-26 22:11:38 +0200 <darkling> I'm sure they do somewhere.
2022-07-26 22:12:39 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 22:13:00 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 22:13:17 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-26 22:13:44 +0200 <geekosaur> https://calculist.blogspot.com/2006/02/nancy-typing.html
2022-07-26 22:14:38 +0200califax(~califax@user/califx)
2022-07-26 22:17:27 +0200 <darkling> Nice.
2022-07-26 22:17:31 +0200coco(~coco@212-51-146-199.fiber7.init7.net) (Quit: WeeChat 3.5)
2022-07-26 22:18:26 +0200 <geekosaur> anyway Num is a hash of bad abstractions and leaky laws, designed not for coherence but to make it easier for beginners to work with
2022-07-26 22:26:44 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 22:31:42 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 245 seconds)
2022-07-26 22:33:53 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 22:36:01 +0200michalz(~michalz@185.246.204.75) (Remote host closed the connection)
2022-07-26 22:36:15 +0200lagash(lagash@lagash.shelltalk.net)
2022-07-26 22:44:29 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 22:49:16 +0200jmdaemon(~jmdaemon@user/jmdaemon)
2022-07-26 22:50:09 +0200kjak(~kjak@pool-108-31-68-111.washdc.fios.verizon.net) (Quit: leaving)
2022-07-26 22:53:24 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
2022-07-26 22:53:29 +0200Ram-Z_(~Ram-Z@li1814-254.members.linode.com) (Ping timeout: 255 seconds)
2022-07-26 22:53:32 +0200SamBellamy(~SamBellam@cpc142034-slou6-2-0-cust488.17-4.cable.virginm.net)
2022-07-26 22:53:52 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com)
2022-07-26 22:53:52 +0200wroathe(~wroathe@206-55-188-8.fttp.usinternet.com) (Changing host)
2022-07-26 22:53:52 +0200wroathe(~wroathe@user/wroathe)
2022-07-26 22:56:01 +0200k8yun(~k8yun@user/k8yun) (Quit: Leaving)
2022-07-26 22:57:43 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-26 22:57:56 +0200matthewmosior(~matthewmo@173.170.253.91) (Ping timeout: 255 seconds)
2022-07-26 22:58:38 +0200haskl(~haskl@user/haskl) (Remote host closed the connection)
2022-07-26 22:58:55 +0200califax(~califax@user/califx) (Remote host closed the connection)
2022-07-26 22:59:21 +0200califax(~califax@user/califx)
2022-07-26 22:59:34 +0200MajorBiscuit(~MajorBisc@86-88-79-148.fixed.kpn.net) (Quit: WeeChat 3.5)
2022-07-26 23:01:25 +0200mmhat(~mmh@p200300f1c71a2b13ee086bfffe095315.dip0.t-ipconnect.de) (Ping timeout: 260 seconds)
2022-07-26 23:02:10 +0200wroathe(~wroathe@user/wroathe) (Ping timeout: 240 seconds)
2022-07-26 23:05:02 +0200bontaq(~user@ool-45779fe5.dyn.optonline.net) (Ping timeout: 245 seconds)
2022-07-26 23:05:10 +0200Ram-Z(Ram-Z@2a01:7e01::f03c:91ff:fe57:d2df)
2022-07-26 23:07:46 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643) (Ping timeout: 268 seconds)
2022-07-26 23:09:47 +0200FinnElija(~finn_elij@user/finn-elija/x-0085643)
2022-07-26 23:09:55 +0200maroloccio(~marolocci@151.70.135.76)
2022-07-26 23:11:25 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net)
2022-07-26 23:11:30 +0200 <qrpnxz> looks like `text` lost all its hackage docs oops
2022-07-26 23:12:16 +0200ix(~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Ping timeout: 272 seconds)
2022-07-26 23:12:30 +0200notzmv(~zmv@user/notzmv)
2022-07-26 23:13:28 +0200mmhat(~mmh@p200300f1c71c8abdee086bfffe095315.dip0.t-ipconnect.de)
2022-07-26 23:13:34 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 23:14:48 +0200ix(~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe)
2022-07-26 23:15:53 +0200kenran(~kenran@200116b82b61e400e91b6066df55ff3e.dip.versatel-1u1.de)
2022-07-26 23:15:58 +0200 <hpc> at least hackage docs didn't lose all their text :P
2022-07-26 23:15:59 +0200yauhsien(~yauhsien@61-231-60-109.dynamic-ip.hinet.net) (Ping timeout: 252 seconds)
2022-07-26 23:17:49 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds)
2022-07-26 23:23:41 +0200ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net) (Ping timeout: 252 seconds)
2022-07-26 23:24:47 +0200kritzefitz(~kritzefit@debian/kritzefitz) (Ping timeout: 252 seconds)
2022-07-26 23:25:01 +0200kritzefitz(~kritzefit@debian/kritzefitz)
2022-07-26 23:25:05 +0200 <qrpnxz> :P
2022-07-26 23:26:06 +0200azimut(~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection)
2022-07-26 23:26:26 +0200azimut(~azimut@gateway/tor-sasl/azimut)
2022-07-26 23:27:32 +0200 <hpc> ah, it was just updated
2022-07-26 23:27:32 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Ping timeout: 245 seconds)
2022-07-26 23:27:42 +0200 <hpc> give it some time for haddock to do its thing on the new code, i guess
2022-07-26 23:27:57 +0200 <hpc> yeah, status is docs pending at the bottom
2022-07-26 23:28:28 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2)
2022-07-26 23:29:41 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 23:29:56 +0200 <Cale> (you can also click a previous version to view its docs while you wait)
2022-07-26 23:30:15 +0200matthewmosior(~matthewmo@173.170.253.91)
2022-07-26 23:30:24 +0200 <qrpnxz> yes, i also have a system docs in case no internet :)
2022-07-26 23:31:38 +0200acidjnk(~acidjnk@p200300d6e705862418f503b3542a7200.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
2022-07-26 23:31:52 +0200 <qrpnxz> can't derive semigroup on a newtype over ByteString 😩
2022-07-26 23:32:54 +0200kenran(~kenran@200116b82b61e400e91b6066df55ff3e.dip.versatel-1u1.de) (Quit: WeeChat info:version)
2022-07-26 23:33:02 +0200eggplantade(~Eggplanta@2600:1700:bef1:5e10:c930:c4b3:cb8a:fa2) (Ping timeout: 255 seconds)
2022-07-26 23:33:06 +0200alp__(~alp@user/alp) (Ping timeout: 264 seconds)
2022-07-26 23:36:08 +0200 <qrpnxz> guys, what is even the point of text actually. Why not just a newtype wrapper over ByteString? Is it actually doing anything fancy?
2022-07-26 23:36:18 +0200Guest91(~Guest91@86-95-62-67.fixed.kpn.net)
2022-07-26 23:36:35 +0200Guest91(~Guest91@86-95-62-67.fixed.kpn.net) (Client Quit)
2022-07-26 23:37:10 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com) (Remote host closed the connection)
2022-07-26 23:37:53 +0200 <qrpnxz> the point of whole new underlying implementation that is.
2022-07-26 23:37:54 +0200sandydoo(~sandydoo@185.209.196.166) (Ping timeout: 268 seconds)
2022-07-26 23:38:21 +0200 <geekosaur> text's native representation is utf16 or utf8 depending on version, and includes Unicode support
2022-07-26 23:38:34 +0200 <geekosaur> ByteString is raw bytes meaning who-knows-what
2022-07-26 23:38:38 +0200 <hpc> put simply, the difference between text and a simple wrapper is that text works :P
2022-07-26 23:39:09 +0200 <hpc> it handles encoding and some other assorted stuff for you
2022-07-26 23:39:12 +0200 <geekosaur> also ByteString is pinned memory for easier interop with FFI
2022-07-26 23:39:52 +0200 <geekosaur> most people don't understand that there are real differences between byte arrays and proper Unicode
2022-07-26 23:40:14 +0200 <geekosaur> because most languages make no distinction and let you make huge messes as a result
2022-07-26 23:40:48 +0200 <qrpnxz> underneath Text is also just "raw bytes" is my point, so really the text api could act on a wrapped bytestring. Or "short"bytestring for unpinned that you point out
2022-07-26 23:41:13 +0200 <hpc> underneath raw bytes is a pointer and a length
2022-07-26 23:41:21 +0200 <hpc> so really the text api could act on unsigned integers
2022-07-26 23:43:17 +0200coot(~coot@213.134.190.95) (Quit: coot)
2022-07-26 23:43:27 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net) (Remote host closed the connection)
2022-07-26 23:43:29 +0200alp__(~alp@user/alp)
2022-07-26 23:43:32 +0200 <hpc> blocks of text are a nice logical unit to treat as abstract, since it doesn't really matter what they are implemented as under the hood
2022-07-26 23:43:36 +0200 <qrpnxz> yes, but that doesn't help, whereas text being just on top ByteString means there's only one implementation of raw bytes to worry about
2022-07-26 23:43:49 +0200 <hpc> as a bit of a pathological example, imagine having to deal with rust's lifetimes
2022-07-26 23:44:09 +0200segfaultfizzbuzz(~segfaultf@157-131-253-58.fiber.dynamic.sonic.net)
2022-07-26 23:44:22 +0200 <hpc> is your text a string of bytes in the data segment, is it on the heap, what's its encoding, etc
2022-07-26 23:44:44 +0200 <hpc> or you can just say "it's text, if i say make it utf-8, i don't care what encoding it comes from"
2022-07-26 23:44:47 +0200 <hpc> and so forth
2022-07-26 23:44:58 +0200 <hpc> it might be a ByteString now, but it might be some other representation later
2022-07-26 23:45:24 +0200 <hpc> and in fact, pop quiz: what encoding is the ByteString text uses as its internal representation?
2022-07-26 23:45:30 +0200 <qrpnxz> yes, i'm proposing why not just have it a bytestring instead of another specialized primitive array implementation in text
2022-07-26 23:45:46 +0200 <qrpnxz> i'm not proposing a change in the public api
2022-07-26 23:46:01 +0200 <qrpnxz> ByteString is a Ptr with length
2022-07-26 23:46:04 +0200 <Profpatsch> NonEmpty defines most of its functions with a lazy pattern match, like uncons ~(a :| as) = (a, nonEmpty as)
2022-07-26 23:46:35 +0200 <hpc> oh, you're talking about Data.Text.Array?
2022-07-26 23:46:48 +0200 <Profpatsch> I can understand for a fundamental lib like this, but I feel like doing it for every time you match on (:|) is a bit of a premature optimization?
2022-07-26 23:47:07 +0200 <hpc> because of what geekosaur mentioned, how it interacts with ffi
2022-07-26 23:47:31 +0200 <qrpnxz> Profpatsch: you pretty much always want to stream lists as much as possible
2022-07-26 23:47:41 +0200 <Profpatsch> qrpnxz: yeah that makes sense
2022-07-26 23:48:10 +0200 <hpc> ByteString uses ForeignPtr, Text uses ByteArray#
2022-07-26 23:48:23 +0200 <Profpatsch> qrpnxz: do you know if there’s a ZipList1 or something?
2022-07-26 23:48:34 +0200 <qrpnxz> hpc: ShortByteString also use ByteArray
2022-07-26 23:48:37 +0200ChaiTRex(~ChaiTRex@user/chaitrex) (Remote host closed the connection)
2022-07-26 23:48:37 +0200 <Profpatsch> I want to have zip3 zip4 etc for NonEmpty
2022-07-26 23:48:55 +0200 <qrpnxz> in base? idk let me check
2022-07-26 23:48:58 +0200 <Profpatsch> I mean I can just write down the boilerplate but I was surprised by the ~ gotcha
2022-07-26 23:49:03 +0200 <Profpatsch> qrpnxz: I did check no worries
2022-07-26 23:49:12 +0200 <qrpnxz> ah, well i guess not
2022-07-26 23:49:20 +0200 <qrpnxz> but you can make your own
2022-07-26 23:49:24 +0200ChaiTRex(~ChaiTRex@user/chaitrex)
2022-07-26 23:49:32 +0200 <Profpatsch> yeah, that’s why I was looking up the definition and was a bit surprised by the ~
2022-07-26 23:49:43 +0200 <Profpatsch> But it makes sense
2022-07-26 23:50:01 +0200 <Profpatsch> qrpnxz: on a related note, I’ve been using Validation (NonEmpty _) a lot
2022-07-26 23:50:20 +0200 <qrpnxz> 👍
2022-07-26 23:50:23 +0200 <Profpatsch> I’m wondering about the performance of that.
2022-07-26 23:50:29 +0200ByronJohnson(~bairyn@50-250-232-19-static.hfc.comcastbusiness.net)
2022-07-26 23:51:20 +0200 <qrpnxz> If you are not streaming the lists and using them multiple time you should probably be using an array of some kind
2022-07-26 23:51:22 +0200cosimone(~user@93-44-186-171.ip98.fastwebnet.it) (Read error: Connection reset by peer)
2022-07-26 23:51:30 +0200 <Profpatsch> Wouldn’t that be a bit slow, for most cases I do stuff like read from the database and stream back as json
2022-07-26 23:51:58 +0200 <Profpatsch> I’m not using conduit or similar (yet), so it’s all in memory
2022-07-26 23:52:12 +0200 <Profpatsch> I guess worrying about that is a bit premature optimization
2022-07-26 23:52:18 +0200 <Profpatsch> But I wonder if it’s a good pattern.
2022-07-26 23:52:32 +0200 <qrpnxz> if it's more than a little data you should try to stream it with something like conduit to not waste memory yeah
2022-07-26 23:52:43 +0200 <Profpatsch> But then error handling becomes hard
2022-07-26 23:52:59 +0200 <Profpatsch> I mean Validation basically requires to do the whole thing in memory
2022-07-26 23:53:18 +0200 <Profpatsch> You only know the constructor on the first Failure
2022-07-26 23:53:22 +0200 <qrpnxz> I think it's a good pattern. I mean, I personally don't mind having a bunch of wrappers if it helps me be able to look at code and say 'yeah, that's a valid whatever for sure'
2022-07-26 23:53:24 +0200 <Profpatsch> Or at the very end
2022-07-26 23:54:15 +0200 <Profpatsch> qrpnxz: Validation and These have been a funky improvement to error handling if I’ve ever seen one
2022-07-26 23:54:35 +0200 <qrpnxz> oh is validation a particular data type you are talking about?
2022-07-26 23:54:59 +0200 <qrpnxz> ah hadn't heard of that, it's from the either package
2022-07-26 23:55:10 +0200 <Profpatsch> qrpnxz: Validation is a type isomorphic to Either, but not shortcutting instead it accumulates errors
2022-07-26 23:55:36 +0200 <qrpnxz> i see
2022-07-26 23:56:32 +0200merijn(~merijn@c-001-001-002.client.esciencecenter.eduvpn.nl)
2022-07-26 23:56:34 +0200 <qrpnxz> you could be polymorphic on the error monad, then you can choose to shortcut or accumulate or throw io exception. Makes sense.
2022-07-26 23:56:38 +0200 <Profpatsch> Between Either, Validation and These you basically have all possible error handling behaviours
2022-07-26 23:56:52 +0200 <Profpatsch> I haven’t seen a case where being polymorphic would make sense
2022-07-26 23:57:09 +0200 <Profpatsch> (you can also have shortcutting on Success but that is achievable by flipping the Either)
2022-07-26 23:57:59 +0200cosimone(~user@93-44-186-171.ip98.fastwebnet.it)
2022-07-26 23:58:00 +0200Cale(~cale@cpef48e38ee8583-cm30b7d4b3fc20.cpe.net.cable.rogers.com)
2022-07-26 23:58:04 +0200 <Profpatsch> qrpnxz: you can’t really be polymorphic, cause Validation requires the error to be a Semigroup
2022-07-26 23:58:54 +0200tromp(~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
2022-07-26 23:58:58 +0200 <qrpnxz> Either doesn't require it to NOT be semigroup, so that's fine
2022-07-26 23:59:35 +0200 <Profpatsch> qrpnxz: But usually your error type in Either is something like Text, while for Validation/These it’s a list-like