Home liberachat/#haskell: Logs Calendar

Logs on 2024-03-17 (liberachat/#haskell)

00:05:15 shapr` joins (~user@c-24-218-186-89.hsd1.ma.comcast.net)
00:05:56 × rvalue quits (~rvalue@user/rvalue) (Ping timeout: 252 seconds)
00:07:15 × shapr quits (~user@c-24-218-186-89.hsd1.ma.comcast.net) (Ping timeout: 260 seconds)
00:11:41 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
00:11:44 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
00:12:19 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Client Quit)
00:21:43 × acidjnk quits (~acidjnk@p200300d6e737e7694d901d7278c02256.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
00:22:16 rvalue joins (~rvalue@user/rvalue)
00:24:47 zenstoic joins (uid461840@id-461840.hampstead.irccloud.com)
00:29:08 × CiaoSen quits (~Jura@2a05:5800:2d3:8f00:e6b9:7aff:fe80:3d03) (Ping timeout: 268 seconds)
00:30:17 noumenon joins (~noumenon@113.51-175-156.customer.lyse.net)
00:37:53 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
00:52:27 iteratee joins (~kyle@162.218.222.207)
00:56:49 <arahael> With sqlite-simple, I have a table, and another table that joins the first using a primary key with a many-one relationship. How can I add this data to the fromRow implementation?
00:56:56 <arahael> Can fromRow itself do queries?
00:57:51 <arahael> I want to do: fromRow = MyDataType <$> field <*> field <*> (related data from another table)
01:02:08 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
01:07:30 × Square quits (~Square@user/square) (Ping timeout: 255 seconds)
01:10:43 <arahael> I suspect what I ultimately should do is have data types that more closely represent the query rows but I'm wondering if I can avoid that.
01:11:59 × Inst quits (~Inst@120.244.192.27) (Ping timeout: 264 seconds)
01:13:08 <geekosaur> I'd be surprised if you could. (And the old database guy in the back of my head is whispering "you're doing it wrong"…)
01:13:47 × agrosant quits (~agrosant@62.1.178.30.dsl.dyn.forthnet.gr) (Ping timeout: 264 seconds)
01:13:56 <arahael> Not really. I have a monsters stat table, and another table with "monster references" that describe the various book references I have for that monster.
01:14:25 <arahael> One monster could be referenced in two different books.
01:15:26 <arahael> So I think database wise, this is a sound schema.
01:19:20 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
01:23:47 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds)
01:23:55 <arahael> (How would the old database guy in the back of your head suggest this?)
01:26:36 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Quit: peterbecich)
01:27:39 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
01:28:52 <EvanR> arahael, you can use a tuple to get the results of a join query
01:28:54 <geekosaur> oh, it's a sound schema; it's trying to combine them into a single row like that without doing it on the database side (that is, a join) that is unsound
01:29:04 agrosant joins (~agrosant@77.49.175.249.dsl.dyn.forthnet.gr)
01:29:05 <EvanR> if you don't want to make a dedicated type
01:30:05 <EvanR> sqlite-simple doesn't care if your results reflect an object or a random combination of things made with SQL
01:30:30 <geekosaur> doing it in fromRow on the "one" side may produce more than one row, doing it on the "many" side reqquires an extra SELECT which not only isn't permitted by fromRow's type, but will be fairly slow unless it's cached somewhere
01:32:38 <arahael> geekosaur: If I did it as a join, it would be multiple rows.
01:32:51 <arahael> EvanR: How do I do that?
01:33:05 <arahael> I would prefer not to make dedicated types.
01:33:12 <geekosaur> well, yes. but if it's one to many, it is multiple rows
01:34:00 <arahael> geekosaur: fromRow's type contains these book references as a list type.
01:38:18 <geekosaur> mm. think I'd make those `Maybe`s and fill them in afterward
01:38:38 <geekosaur> (or the HKD version if you want to be fancy-pants)
01:40:31 <arahael> geekosaur: Well, it's a list, so I could have them start out as empty.
01:40:39 <arahael> What's the HKD approach?
01:41:23 <arahael> I need to head out. But filling them in afterwards seems the way to go.
01:41:34 <geekosaur> instead of having separate `(Maybe thing)` and `thing` versions, you have one `f thing` and instantiate `f` as `Maybe` or `Identity`, possibly with a type family to hide the `Identity` one
01:42:08 <geekosaur> ime it's not worth the hassle, but some folks like it
01:42:21 Inst joins (~Inst@120.244.192.27)
01:42:27 <arahael> I think it'd be easier to have db-specific types if I was going that all out on it. I'm not going to do that.
01:42:38 <arahael> Ok, I gotta head out, thanks for the help and suggestions!
02:05:45 mikoto-chan joins (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be)
02:05:59 × Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds)
02:06:30 Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915)
02:08:18 × jargon quits (~jargon@154.sub-174-205-226.myvzw.com) (Remote host closed the connection)
02:22:34 tri joins (~tri@2607:fb90:b106:c472:7c70:7015:b6f2:5501)
02:31:01 × puke quits (~puke@user/puke) (Ping timeout: 264 seconds)
02:31:47 × agrosant quits (~agrosant@77.49.175.249.dsl.dyn.forthnet.gr) (Ping timeout: 264 seconds)
02:33:48 × zenstoic quits (uid461840@id-461840.hampstead.irccloud.com) (Quit: Connection closed for inactivity)
02:34:27 × otto_s quits (~user@p4ff27f66.dip0.t-ipconnect.de) (Ping timeout: 256 seconds)
02:36:07 otto_s joins (~user@p4ff271cb.dip0.t-ipconnect.de)
02:39:45 × darkstardevx quits (~darkstard@50.53.3.2) (Quit: Leaving)
02:41:04 × tri quits (~tri@2607:fb90:b106:c472:7c70:7015:b6f2:5501) (Remote host closed the connection)
02:41:13 × rainbyte quits (~rainbyte@186.22.19.215) (Ping timeout: 264 seconds)
02:51:31 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds)
03:01:21 × Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.)
03:05:02 × op_4 quits (~tslil@user/op-4/x-9116473) (Remote host closed the connection)
03:05:36 op_4 joins (~tslil@user/op-4/x-9116473)
03:10:22 × h2t quits (~h2t@user/h2t) (Ping timeout: 255 seconds)
03:10:37 h2t joins (~h2t@user/h2t)
03:22:30 × shapr` quits (~user@c-24-218-186-89.hsd1.ma.comcast.net) (Ping timeout: 255 seconds)
03:29:59 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 264 seconds)
03:33:16 × Inst quits (~Inst@120.244.192.27) (Read error: Connection reset by peer)
03:50:58 × td_ quits (~td@i53870919.versanet.de) (Ping timeout: 264 seconds)
03:52:33 td_ joins (~td@i53870920.versanet.de)
03:52:40 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
03:56:25 × mikoto-chan quits (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be) (Ping timeout: 272 seconds)
04:11:37 × pavonia quits (~user@user/siracusa) (Quit: Bye!)
04:13:01 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
04:13:40 chiselfuse joins (~chiselfus@user/chiselfuse)
04:15:13 aforemny_ joins (~aforemny@i59f516cb.versanet.de)
04:15:25 rainbyte joins (~rainbyte@186.22.19.215)
04:16:22 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
04:16:37 × aforemny quits (~aforemny@i59F516EC.versanet.de) (Ping timeout: 264 seconds)
04:18:43 chiselfuse joins (~chiselfus@user/chiselfuse)
04:21:33 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 256 seconds)
04:24:43 tri joins (~tri@2607:fb90:b116:460b:5c36:e7a2:712f:e2fd)
04:27:14 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
04:27:54 chiselfuse joins (~chiselfus@user/chiselfuse)
05:14:47 × renpose quits (~renpose@user/renpose) (Ping timeout: 250 seconds)
05:38:25 × xal quits (~xal@mx1.xal.systems) ()
05:38:48 × Flow quits (~none@gentoo/developer/flow) (Ping timeout: 260 seconds)
05:40:52 xal joins (~xal@mx1.xal.systems)
05:44:03 Flow joins (~none@gentoo/developer/flow)
05:45:47 × tri quits (~tri@2607:fb90:b116:460b:5c36:e7a2:712f:e2fd) (Remote host closed the connection)
05:50:58 tri joins (~tri@2607:fb90:b106:c578:407d:628f:12f9:20e7)
06:07:00 × phma quits (phma@2001:5b0:210b:b018:f5e4:5fc6:92c7:7a79) (Read error: Connection reset by peer)
06:07:51 phma joins (~phma@2001:5b0:215d:bd98:a5e5:2cbf:8dd6:d196)
06:18:08 lambdaRule joins (~lambdaRul@node-1w7jr9phpv013atdkr90xvsbv.ipv6.telus.net)
06:36:54 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
06:37:10 × rainbyte quits (~rainbyte@186.22.19.215) (Read error: Connection reset by peer)
06:37:55 rainbyte joins (~rainbyte@186.22.19.215)
06:39:57 × tri quits (~tri@2607:fb90:b106:c578:407d:628f:12f9:20e7) (Remote host closed the connection)
06:44:26 mikoto-chan joins (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be)
06:52:26 × lambdaRule quits (~lambdaRul@node-1w7jr9phpv013atdkr90xvsbv.ipv6.telus.net) (Quit: Client closed)
06:58:57 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 255 seconds)
07:00:07 × tt1231 quits (~tt123@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com) (Quit: The Lounge - https://thelounge.chat)
07:02:18 tt1231 joins (~tt1231@2603-6010-8700-4a81-219f-50d3-618a-a6ee.res6.spectrum.com)
07:08:13 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
07:08:35 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
07:10:11 × Axman6 quits (~Axman6@user/axman6) (Remote host closed the connection)
07:10:29 Axman6 joins (~Axman6@user/axman6)
07:23:12 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
07:23:39 <arahael> geekosaur: Update: It worked really nicely, took me a bit of a moment to figure out how to do it because I didn't have enough to complete the type, until I realised that it was using an Applicative instance, so I could easily put in the instance I wanted using pure.
07:24:05 takuan joins (~takuan@178-116-218-225.access.telenet.be)
07:36:02 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
07:37:29 × mikoto-chan quits (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be) (Ping timeout: 252 seconds)
07:39:41 × peterbecich quits (~Thunderbi@047-229-123-186.res.spectrum.com) (Ping timeout: 240 seconds)
07:57:44 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
07:59:34 × p3n quits (~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1) (Quit: ZNC 1.8.2 - https://znc.in)
08:09:09 L29Ah joins (~L29Ah@wikipedia/L29Ah)
08:11:51 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
08:13:41 × rainbyte quits (~rainbyte@186.22.19.215) (Ping timeout: 240 seconds)
08:16:45 acidjnk joins (~acidjnk@p200300d6e737e769fdca3fda7a69273f.dip0.t-ipconnect.de)
08:20:31 × gabriel_sevecek quits (~gabriel@188-167-229-200.dynamic.chello.sk) (Ping timeout: 260 seconds)
08:22:39 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
08:23:31 euleritian joins (~euleritia@dynamic-176-006-178-041.176.6.pool.telefonica.de)
08:24:27 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
08:40:11 × tzh quits (~tzh@c-73-164-206-160.hsd1.or.comcast.net) (Quit: zzz)
08:53:16 lisbeths joins (uid135845@id-135845.lymington.irccloud.com)
08:56:59 × tv quits (~tv@user/tv) (Ping timeout: 264 seconds)
08:59:48 p3n joins (~p3n@2a00:19a0:3:7c:0:d9c6:7cf6:1)
09:09:08 _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl)
09:10:25 tv joins (~tv@user/tv)
09:14:53 <lyxia> Has anyone used Control.Monad.ST.Lazy? Anything that uses mutability is going to be a strict action anyway so I don't see the point.
09:22:09 <c_wraith> I see the point, but in every case in which I see the point, unsafeInterleaveST is easier to understand.
09:22:33 <c_wraith> One instance being some algorithm running on mutable data that produces a stream of results
09:22:43 <c_wraith> The result stream is pure, and making it lazy is nice.
09:25:19 <c_wraith> Maybe lazy ST can solve that same problem without needing to make sure you use unsafeInterleaveST correctly?
09:27:32 <lyxia> That might be it, and I tend to agree with your assessment.
09:31:09 <c_wraith> yeah, it does seem to allow that use case
09:32:42 Kayzen joins (~Kayzen@p200300ca7f01db0062e546154c67a65f.dip0.t-ipconnect.de)
09:33:55 gmg joins (~user@user/gehmehgeh)
09:36:16 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
09:36:16 <c_wraith> > let xs = LST.runST $ do { r <- LST.newSTRef 0 ; fix $ \loop -> do { x <- LST.readSTRef r ; LST.writeSTRef r $! x + 1 ; (x:) <$> loop } } in take 10 xs
09:36:18 <lambdabot> [0,1,2,3,4,5,6,7,8,9]
09:36:40 <c_wraith> ... after having told lambdabot to import Control.Monad.ST.Lazy and Data.STRef.Lazy as LST
09:38:14 <c_wraith> and that's clearly something that wouldn't terminate with regular ST, without unsafeInterleaveST
09:46:02 <lyxia> too bad it can't stream trees
09:47:45 <c_wraith> yeah, unsafeInterleaveST is still more powerful. And maybe easier to understand.
09:48:49 <c_wraith> also, I'm not actually sure that $! in my example is doing anything.
09:49:27 <c_wraith> I'm going to continue to just use unsafeInterleaveST, because I can actually predict it.
09:58:28 Kayzen is now known as kayzen
10:09:21 <kayzen> How does the garbage collection work in haskell? I cant wrap my head around how having no mutable variables can be efficient.
10:19:20 kayzen parts (~Kayzen@p200300ca7f01db0062e546154c67a65f.dip0.t-ipconnect.de) (WeeChat 4.2.1)
10:30:35 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
10:31:34 <tomsmeding> similar to other languages, I think
10:31:47 <tomsmeding> oh they left
10:35:42 <tomsmeding> > let xs = runST $ do { r <- newSTRef 0 ; fix $ \loop -> do { x <- readSTRef r ; writeSTRef r $! x + 1 ; (x:) <$> Control.Monad.ST.Unsafe.unsafeInterleaveST loop } } in take 10 xs
10:35:43 <lambdabot> error:
10:35:43 <lambdabot> Not in scope: ‘Control.Monad.ST.Unsafe.unsafeInterleaveST’
10:35:43 <lambdabot> No module named ‘Control.Monad.ST.Unsafe’ is imported.
10:35:55 <tomsmeding> @let import qualified Control.Monad.ST.Unsafe as STUnsafe
10:35:56 <lambdabot> /sandbox/tmp/.L.hs:65:1: error:
10:35:56 <lambdabot> Control.Monad.ST.Unsafe: Can't be safely imported!
10:35:56 <lambdabot> The module itself isn't safe.
10:36:13 wootehfoot joins (~wootehfoo@user/wootehfoot)
10:36:36 <tomsmeding> % let xs = runST $ do { r <- newSTRef 0 ; fix $ \loop -> do { x <- readSTRef r ; writeSTRef r $! x + 1 ; (x:) <$> STUnsafe.unsafeInterleaveST loop } } in take 10 xs
10:36:36 <yahb2> [0,1,2,3,4,5,6,7,8,9]
10:42:29 kayzen joins (~kayzen@p200300ca7f01db0062e546154c67a65f.dip0.t-ipconnect.de)
10:46:44 × kayzen quits (~kayzen@p200300ca7f01db0062e546154c67a65f.dip0.t-ipconnect.de) (Changing host)
10:46:44 kayzen joins (~kayzen@user/kayzen)
10:46:53 × Lycurgus quits (~georg@user/Lycurgus) (Quit: leaving)
10:50:50 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
10:53:41 × mei quits (~mei@user/mei) (Ping timeout: 240 seconds)
10:53:56 × Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer)
10:54:47 wootehfoot joins (~wootehfoo@user/wootehfoot)
10:57:40 mei joins (~mei@user/mei)
10:59:26 × kayzen quits (~kayzen@user/kayzen) (Quit: WeeChat 4.2.1)
10:59:42 kayzen joins (~kayzen@user/kayzen)
10:59:44 × kayzen quits (~kayzen@user/kayzen) (Client Quit)
11:02:07 puke joins (~puke@user/puke)
11:02:35 × puke quits (~puke@user/puke) (Remote host closed the connection)
11:03:09 puke joins (~puke@user/puke)
11:03:50 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
11:06:22 wootehfoot joins (~wootehfoo@user/wootehfoot)
11:09:32 × remedan quits (~remedan@ip-78-102-118-253.bb.vodafone.cz) (Ping timeout: 268 seconds)
11:11:16 remedan joins (~remedan@ip-78-102-118-253.bb.vodafone.cz)
11:14:51 [_] joins (~itchyjunk@user/itchyjunk/x-7353470)
11:18:25 × [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 264 seconds)
11:20:34 target_i joins (~target_i@user/target-i/x-6023099)
11:21:21 Square joins (~Square@user/square)
11:27:08 × L29Ah quits (~L29Ah@wikipedia/L29Ah) (Read error: Connection reset by peer)
11:34:54 L29Ah joins (~L29Ah@wikipedia/L29Ah)
11:44:08 __monty__ joins (~toonn@user/toonn)
11:51:11 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
11:53:42 wootehfoot joins (~wootehfoo@user/wootehfoot)
11:56:32 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
12:02:46 × lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity)
12:04:30 × a51 quits (a51@gateway/vpn/protonvpn/a51) (Quit: WeeChat 4.2.1)
12:06:19 pavonia joins (~user@user/siracusa)
12:06:30 Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi)
12:13:20 caconym5 joins (~caconym@user/caconym)
12:15:17 × caconym quits (~caconym@user/caconym) (Ping timeout: 240 seconds)
12:15:17 caconym5 is now known as caconym
12:23:23 ph88 joins (~ph88@2a02:8109:9e26:c800:f65f:251b:cec:1ffa)
12:23:43 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
12:23:43 <ph88> Does anyone have experience with Data.Judy? Is it really faster than Map and HashMap ?
12:32:42 a51 joins (a51@gateway/vpn/protonvpn/a51)
12:36:23 <probie> ph88: What operations are you doing? There are definitely a lot of use cases where a judy array (or even just a regular mutable hashmap) will outperform `Map` and `HashMap`.
12:40:15 <ph88> mutable hashmap from hashtables ?
12:40:40 <ph88> well i'm doing inserts and lookups. Or i will when my code is ready ^^
12:51:52 fmd joins (~fmd@user/framend)
12:52:19 × ph88 quits (~ph88@2a02:8109:9e26:c800:f65f:251b:cec:1ffa) (Remote host closed the connection)
12:53:53 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
12:54:17 L29Ah joins (~L29Ah@wikipedia/L29Ah)
12:54:27 ph88 joins (~ph88@2a02:8109:9e26:c800:7ba6:3830:f8a7:cda7)
13:18:22 <tomsmeding> ph88: if you're currently using an immutable map like containers:Map or unordered-containers:HashMap, and you are fine with the map living in ST or IO, I'd start with plain @hackage hashtables
13:18:37 <tomsmeding> you can always benchmark and see if you need something special
13:19:39 × kronicmage quits (~kronicmag@neotame.csclub.uwaterloo.ca) (Ping timeout: 268 seconds)
13:24:18 kronicmage joins (~kronicmag@neotame.csclub.uwaterloo.ca)
13:31:18 wootehfoot joins (~wootehfoo@user/wootehfoot)
13:34:32 kotrcka joins (~user@92.63.48.18)
13:34:51 Guest63 joins (~Guest63@p200300c4172b098282ea4b143076f5c0.dip0.t-ipconnect.de)
13:37:41 × acidjnk quits (~acidjnk@p200300d6e737e769fdca3fda7a69273f.dip0.t-ipconnect.de) (Ping timeout: 240 seconds)
13:42:03 × tv quits (~tv@user/tv) (Ping timeout: 260 seconds)
13:54:39 × bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Remote host closed the connection)
13:54:39 × pastly quits (~pastly@gateway/tor-sasl/pastly) (Remote host closed the connection)
13:54:39 × ChaiTRex quits (~ChaiTRex@user/chaitrex) (Remote host closed the connection)
13:54:39 × califax quits (~califax@user/califx) (Remote host closed the connection)
13:54:39 × adanwan quits (~adanwan@gateway/tor-sasl/adanwan) (Remote host closed the connection)
13:54:39 × chiselfuse quits (~chiselfus@user/chiselfuse) (Read error: Connection reset by peer)
13:55:14 califax joins (~califax@user/califx)
13:55:23 pastly joins (~pastly@gateway/tor-sasl/pastly)
13:55:46 tv joins (~tv@user/tv)
13:56:03 bitdex joins (~bitdex@gateway/tor-sasl/bitdex)
13:56:32 adanwan joins (~adanwan@gateway/tor-sasl/adanwan)
13:56:42 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
13:57:04 L29Ah joins (~L29Ah@wikipedia/L29Ah)
13:58:26 ChaiTRex joins (~ChaiTRex@user/chaitrex)
13:59:05 chiselfuse joins (~chiselfus@user/chiselfuse)
14:02:37 × fmd quits (~fmd@user/framend) (Quit: Need to build more programs… Always more…)
14:02:52 agrosant joins (~agrosant@46.246.200.116.dsl.dyn.forthnet.gr)
14:09:31 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
14:09:50 × noumenon quits (~noumenon@113.51-175-156.customer.lyse.net) (Quit: Leaving)
14:19:46 × Etabeta1 quits (~Etabeta1@176.207.241.56) (Changing host)
14:19:46 Etabeta1 joins (~Etabeta1@user/Etabeta1)
14:22:53 kayzen joins (~kayzen@user/kayzen)
14:27:37 raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net)
14:31:13 × target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving)
14:31:14 × pavonia quits (~user@user/siracusa) (Read error: Connection reset by peer)
14:33:58 pavonia joins (~user@user/siracusa)
14:36:12 × kotrcka quits (~user@92.63.48.18) (Remote host closed the connection)
14:39:35 × agrosant quits (~agrosant@46.246.200.116.dsl.dyn.forthnet.gr) (Ping timeout: 264 seconds)
14:40:10 target_i joins (~target_i@user/target-i/x-6023099)
14:41:59 kalomus joins (~kalomus@user/kalomus)
14:44:47 × Etabeta1 quits (~Etabeta1@user/Etabeta1) (Remote host closed the connection)
14:45:20 jau joins (~user@2a04:4540:7201:c200:3595:a417:1479:38de)
14:49:37 Etabeta1 joins (~Etabeta1@176.207.241.56)
14:59:52 × kalomus quits (~kalomus@user/kalomus) (Ping timeout: 268 seconds)
15:01:09 rscastilho2024 joins (~rscastilh@179.221.142.47)
15:04:32 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Quit: Later)
15:05:07 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
15:05:09 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
15:06:32 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
15:12:20 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Quit: Later)
15:12:41 <ph88> thx tomsmeding
15:17:31 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
15:17:50 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
15:20:18 × son0p quits (~ff@167.0.168.212) (Quit: Bye)
15:22:05 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 240 seconds)
15:22:52 × kayzen quits (~kayzen@user/kayzen) (Quit: WeeChat 4.2.1)
15:23:07 rscastilho2024 joins (~rscastilh@179.221.142.47)
15:23:21 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
15:23:47 kayzen joins (~kayzen@p200300ca7f01db0062e546154c67a65f.dip0.t-ipconnect.de)
15:23:47 × kayzen quits (~kayzen@p200300ca7f01db0062e546154c67a65f.dip0.t-ipconnect.de) (Changing host)
15:23:47 kayzen joins (~kayzen@user/kayzen)
15:24:05 kayzen parts (~kayzen@user/kayzen) ()
15:25:30 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
15:25:31 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
15:29:15 rscastilho2024 joins (~rscastilh@179.221.142.47)
15:35:32 pagnol joins (~user@2a02:a210:a41:dc00:c9f1:8875:1a99:fe45)
15:36:24 <pagnol> I'm looking at Haskell again after a long break, wondering if anything has happened that improved the situation around records?
15:37:20 <Rembane> pagnol: When did you last do Haskell?
15:37:59 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
15:38:22 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
15:38:22 <pagnol> Good question, I think mostly before the ghc 8 release
15:38:23 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
15:39:00 <Rembane> Cool, that's some time ago. Welcome back!
15:39:47 <Rembane> I think these language extensions are the most concrete improvements to record handling: https://ghc.gitlab.haskell.org/ghc/doc/users_guide/exts/records.html
15:40:57 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 255 seconds)
15:41:34 renpose joins (~renpose@user/renpose)
15:43:33 ph88^ joins (~ph88@2a02:8109:9e26:c800:8668:b31a:4027:3858)
15:44:28 <tomsmeding> interesting that -XNoTraditionalRecordSyntax exists
15:46:11 × ph88 quits (~ph88@2a02:8109:9e26:c800:7ba6:3830:f8a7:cda7) (Ping timeout: 260 seconds)
15:50:31 <pagnol> maybe that would come in handy if one decided to use lenses entirely?
15:50:58 × chiselfuse quits (~chiselfus@user/chiselfuse) (Ping timeout: 260 seconds)
15:51:13 son0p joins (~ff@167.0.168.212)
15:53:01 chiselfuse joins (~chiselfus@user/chiselfuse)
15:53:02 rscastilho2024 joins (~rscastilh@179.221.142.47)
15:54:45 <yushyin> DuplicateRecordFields, NamedFieldPuns, NoFieldSelectors is my usual baseline by now
15:55:32 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
15:58:01 chiselfuse joins (~chiselfus@user/chiselfuse)
16:00:11 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 260 seconds)
16:02:42 gabriel_sevecek joins (~gabriel@188-167-229-200.dynamic.chello.sk)
16:03:26 rscastilho2024 joins (~rscastilh@179.221.142.47)
16:05:15 × jau quits (~user@2a04:4540:7201:c200:3595:a417:1479:38de) (Quit: Leaving)
16:05:59 acidjnk joins (~acidjnk@p200300d6e737e741c1187d44ef12676b.dip0.t-ipconnect.de)
16:08:35 × chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection)
16:09:14 chiselfuse joins (~chiselfus@user/chiselfuse)
16:10:58 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
16:12:43 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 256 seconds)
16:13:05 rscastilho2024 joins (~rscastilh@179.221.142.47)
16:13:40 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
16:16:50 × Etabeta1 quits (~Etabeta1@176.207.241.56) (Quit: quit)
16:16:56 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
16:19:30 Etabeta1 joins (~Etabeta1@176.207.241.56)
16:22:11 × raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 268 seconds)
16:22:35 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 260 seconds)
16:25:31 rscastilho2024 joins (~rscastilh@179.221.142.47)
16:26:51 zetef joins (~quassel@5.2.182.98)
16:31:16 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
16:36:32 × renpose quits (~renpose@user/renpose) (Quit: Client closed)
16:38:41 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
16:38:48 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
16:43:09 × euleritian quits (~euleritia@dynamic-176-006-178-041.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
16:43:38 euleritian joins (~euleritia@dynamic-176-006-178-041.176.6.pool.telefonica.de)
16:45:29 renpose joins (~renpose@user/renpose)
16:45:57 tzh joins (~tzh@c-73-164-206-160.hsd1.or.comcast.net)
16:53:35 L29Ah joins (~L29Ah@wikipedia/L29Ah)
16:54:10 mankeh joins (~user@2001:1711:fa40:d540:ddcb:6e5c:48d7:685c)
16:55:15 × zetef quits (~quassel@5.2.182.98) (Ping timeout: 260 seconds)
16:59:31 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
16:59:33 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
17:00:52 mankeh parts (~user@2001:1711:fa40:d540:ddcb:6e5c:48d7:685c) (ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.1))
17:02:50 abhishek joins (~abhishek@2406:7400:63:823e:f50a:dfc3:3885:99a9)
17:05:26 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
17:05:28 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
17:10:37 × megaTherion quits (~therion@unix.io) (Remote host closed the connection)
17:11:12 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
17:11:19 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
17:12:10 megaTherion joins (~therion@unix.io)
17:15:03 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 272 seconds)
17:22:04 jargon joins (~jargon@174.sub-174-205-227.myvzw.com)
17:26:03 × abhishek quits (~abhishek@2406:7400:63:823e:f50a:dfc3:3885:99a9) (Quit: Client closed)
17:26:03 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
17:27:17 rscastilho2024 joins (~rscastilh@179.221.142.47)
17:30:02 × rncwnd quits (~quassel@2a01:4f8:221:27c6::1) (Client Quit)
17:31:52 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 268 seconds)
17:35:42 rncwnd joins (~quassel@2a01:4f8:221:27c6::1)
17:42:54 rscastilho2024 joins (~rscastilh@179.221.142.47)
17:46:53 × rvalue quits (~rvalue@user/rvalue) (Ping timeout: 252 seconds)
17:48:34 × euleritian quits (~euleritia@dynamic-176-006-178-041.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
17:48:52 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:55:28 agrosant joins (~agrosant@188.4.15.138.dsl.dyn.forthnet.gr)
17:55:30 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 255 seconds)
17:56:10 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
17:56:13 × machinedgod quits (~machinedg@d173-183-246-216.abhsia.telus.net) (Ping timeout: 246 seconds)
17:57:35 tri joins (~tri@ip70-188-174-61.ri.ri.cox.net)
17:57:39 julie_pilgrim joins (~julie_pil@user/julie-pilgrim/x-1240752)
17:58:50 rvalue joins (~rvalue@user/rvalue)
18:00:48 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Ping timeout: 260 seconds)
18:01:16 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
18:01:59 euleritian joins (~euleritia@dynamic-176-006-178-041.176.6.pool.telefonica.de)
18:02:22 × tri quits (~tri@ip70-188-174-61.ri.ri.cox.net) (Ping timeout: 264 seconds)
18:03:08 <cheater> is return in rust like return in haskell or like return in visualjavacobolscript
18:06:17 × todi quits (~todi@p57803331.dip0.t-ipconnect.de) (Quit: ZNC - https://znc.in)
18:06:35 × agrosant quits (~agrosant@188.4.15.138.dsl.dyn.forthnet.gr) (Ping timeout: 264 seconds)
18:07:19 todi joins (~todi@p57803331.dip0.t-ipconnect.de)
18:07:23 <yushyin> https://doc.rust-lang.org/std/keyword.return.html this?
18:07:36 <tomsmeding> return in rust is standard imperative return
18:07:39 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 255 seconds)
18:07:53 <tomsmeding> the only non-traditional thing in rust is that an expression as the last thing in a block is implicitly retuend
18:07:55 <tomsmeding> *returned
18:08:12 × julie_pilgrim quits (~julie_pil@user/julie-pilgrim/x-1240752) (Remote host closed the connection)
18:09:25 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
18:15:27 <EvanR> return in haskell :(
18:15:40 <EvanR> not what it says on the tin
18:15:42 <tomsmeding> are you of camp pure
18:16:00 <EvanR> in context of this question about rust yes
18:16:38 <tomsmeding> I'm on the fence but I wouldn't complain if 'return' were deprecated or something
18:16:45 <tomsmeding> ignoring backwards compatibility
18:16:56 <EvanR> if you give me decades of return in other languages, I give you :( haskell's naming of return
18:17:03 <tomsmeding> if you don't ignore backwards compatibility (i.e. practically) I'm vehemently against deprecating 'return' :p
18:17:09 <tomsmeding> yes
18:20:34 ystael joins (~ystael@user/ystael)
18:21:07 zetef joins (~quassel@5.2.182.98)
18:25:35 <probie> Personally, I'm for `return` being deprecated, but over a period of time in the order of 5-10 years
18:28:29 YoungFrog joins (~youngfrog@2a02:a03f:c9db:fc00:f708:1cd6:a732:30b)
18:31:03 × euphores quits (~SASL_euph@user/euphores) (Ping timeout: 272 seconds)
18:31:49 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
18:38:27 euphores joins (~SASL_euph@user/euphores)
18:39:19 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 260 seconds)
18:40:39 rscastilho2024 joins (~rscastilh@179.221.142.47)
18:40:48 <cheater> i prefer haskell's return
18:40:53 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
18:41:22 × euleritian quits (~euleritia@dynamic-176-006-178-041.176.6.pool.telefonica.de) (Read error: Connection reset by peer)
18:41:39 euleritian joins (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de)
18:42:31 <tomsmeding> cheater: also in an imperative language? Or do you mean you prefer 'return' over 'pure'
18:42:54 <cheater> i don't see a problem with either
18:43:20 rscastilho2024 joins (~rscastilh@179.221.142.47)
18:43:23 <cheater> i never like, find myself programming in bash, writing return 1, and thinking it'll create an array that contains 1 as the first element
18:43:38 <tomsmeding> well that's what it'd do in haskell
18:43:44 <tomsmeding> so what do you mean that you prefer haskell's return? :p
18:44:21 <cheater> no, i mean that i prefer things the way they are right now and there's no confusion.
18:44:30 <tomsmeding> right
18:44:37 <cheater> the usual argument is that it's too confusing to have the same name for two different things
18:45:04 <tomsmeding> I think 99.999% of the confusion about the name 'return' is expecting imperative-language-return in haskell, not the other way round :p
18:45:07 <cheater> and so people keep coming up with various names: yield, wrap, pure, pack, ...
18:45:16 <cheater> yeah well
18:45:27 <cheater> there's more confusing things than that in haskell if you've never programmed in haskell
18:45:31 <tomsmeding> for sure
18:45:31 <cheater> it's just stuff that needs to be learned
18:45:42 <cheater> can't be good on the first day
18:46:16 × ystael quits (~ystael@user/ystael) (Ping timeout: 246 seconds)
18:47:27 <tomsmeding> hence my stand on this -- I think 'pure' is a better name than 'return' for haskell's thing, so idealistically I'd say that 'return' be deprecated (but the sheer backwards compatibility cataclysm means that I think this is actually a very bad idea)
18:47:36 <tomsmeding> but I don't really mind if things stay the way they are
18:47:43 <tomsmeding> MonadOfNoReturn would be cute, though
18:49:29 <cheater> pure isn't for monads though.
18:49:44 <tomsmeding> it works just fine for monads
18:49:53 <tomsmeding> same reason why we don't need mempty now that Semigroup => Monoid
18:50:15 <cheater> only coincidentally, but conflating these for the convenience of people who don't care to learn the most basic things in haskell isn't a huge selling point for me
18:50:20 <tomsmeding> or would you prefer to use 'return' when you're using the thing as a monad, and 'pure' when you aren't?
18:50:33 <cheater> our community is tiny enough as it is, if you break all libraries ever for a bullshit reason the language will finally die
18:50:35 <tomsmeding> I don't think it's a conflation
18:50:40 <tomsmeding> they are the same thing!
18:51:11 <tomsmeding> fair
18:57:27 × wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer)
18:58:26 wootehfoot joins (~wootehfoo@user/wootehfoot)
19:02:07 k_hachig joins (~k_hachig@2607:fea8:351d:ef0:dd3f:bd40:d39e:dac7)
19:03:46 × zetef quits (~quassel@5.2.182.98) (Ping timeout: 246 seconds)
19:05:07 × euleritian quits (~euleritia@ip4d16fc38.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer)
19:05:54 euleritian joins (~euleritia@77.22.252.56)
19:07:33 Mr joins (~junkedsta@78.16.193.114)
19:08:34 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:11:32 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:16:01 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 272 seconds)
19:16:11 × dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 260 seconds)
19:18:06 rscastilho2024 joins (~rscastilh@179.221.142.47)
19:19:05 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
19:21:38 rscastilho2024 joins (~rscastilh@179.221.142.47)
19:22:08 L29Ah parts (~L29Ah@wikipedia/L29Ah) ()
19:32:50 × a51 quits (a51@gateway/vpn/protonvpn/a51) (Quit: WeeChat 4.2.1)
19:35:45 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
19:37:47 rscastilho2024 joins (~rscastilh@179.221.142.47)
19:38:50 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
19:39:25 L29Ah joins (~L29Ah@wikipedia/L29Ah)
19:41:18 rscastilho2024 joins (~rscastilh@179.221.142.47)
19:42:54 mikoto-chan joins (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be)
19:44:51 tri joins (~tri@ip70-188-174-61.ri.ri.cox.net)
19:47:17 × k_hachig quits (~k_hachig@2607:fea8:351d:ef0:dd3f:bd40:d39e:dac7) (Ping timeout: 240 seconds)
19:50:13 × tri quits (~tri@ip70-188-174-61.ri.ri.cox.net) (Ping timeout: 272 seconds)
19:54:51 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
19:55:23 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 260 seconds)
19:55:23 × Mr quits (~junkedsta@78.16.193.114) (Ping timeout: 260 seconds)
19:56:48 rscastilho2024 joins (~rscastilh@179.221.142.47)
19:57:04 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
19:57:26 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
19:58:23 waleee joins (~waleee@h-176-10-144-38.NA.cust.bahnhof.se)
19:59:26 rscastilho2024 joins (~rscastilh@179.221.142.47)
20:03:54 × pagnol quits (~user@2a02:a210:a41:dc00:c9f1:8875:1a99:fe45) (Remote host closed the connection)
20:06:35 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Ping timeout: 252 seconds)
20:09:04 rscastilho2024 joins (~rscastilh@179.221.142.47)
20:09:45 Sgeo joins (~Sgeo@user/sgeo)
20:10:42 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:11:25 × adium quits (adium@user/adium) (Quit: Stable ZNC by #bnc4you)
20:12:56 causal joins (~eric@50.35.85.7)
20:16:35 k_hachig joins (~k_hachig@2607:fea8:351d:ef0:dd3f:bd40:d39e:dac7)
20:21:35 × rscastilho2024 quits (~rscastilh@179.221.142.47) (Remote host closed the connection)
20:22:14 Guest21 joins (~Guest21@2601:643:897f:5f73:21f5:40f8:9b68:9bb6)
20:24:34 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
20:26:43 × edwtjo quits (~edwtjo@fsf/member/edwtjo) (Ping timeout: 255 seconds)
20:27:23 × Guest21 quits (~Guest21@2601:643:897f:5f73:21f5:40f8:9b68:9bb6) (Ping timeout: 250 seconds)
20:27:43 michalz joins (~michalz@185.246.207.197)
20:30:22 dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net)
20:32:26 adium joins (adium@user/adium)
20:36:05 ystael joins (~ystael@user/ystael)
20:40:52 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
20:43:48 × ystael quits (~ystael@user/ystael) (Ping timeout: 255 seconds)
20:46:01 edwtjo joins (~edwtjo@fsf/member/edwtjo)
20:49:31 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
21:05:08 Mr joins (~junkedsta@78.16.193.114)
21:19:17 × stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
21:19:43 stiell_ joins (~stiell@gateway/tor-sasl/stiell)
21:20:29 rainbyte joins (~rainbyte@186.22.19.215)
21:20:56 × _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Quit: _ht)
21:26:08 × todi quits (~todi@p57803331.dip0.t-ipconnect.de) (Remote host closed the connection)
21:26:14 × stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
21:26:38 stiell_ joins (~stiell@gateway/tor-sasl/stiell)
21:38:27 × renpose quits (~renpose@user/renpose) (Ping timeout: 250 seconds)
21:38:43 <haskellbridge> <J​ade> I changed my mind on deprecating return, but it'd be nice to see it gone from the Monad class atleast
21:39:01 <haskellbridge> <J​ade> I use pure almost exclusively and when people ask I tell them to use pure
21:40:23 <geekosaur> damn, the proposal appears to have been stuck since 2015
21:55:37 <monochrom> At the risk of being way too conservative, I am OK with the current status of just warning "your return is not simply pure" but still allow it for old code that implements return in Monad instances.
21:56:45 <monochrom> But if we have data that says "that's negligible tiny minority on hackage" then we can drop it. :)
21:57:19 <monochrom> But yeah when teaching new students I just teach pure.
22:00:59 × rainbyte quits (~rainbyte@186.22.19.215) (Remote host closed the connection)
22:01:32 marinelli joins (~weechat@gateway/tor-sasl/marinelli)
22:02:20 <geekosaur> I think the problem is old code which retrofitted Applicative instances: `instance Applicative MyMonad where { return = pure; (<*>) = ap; }`
22:02:48 <geekosaur> from when AMP went through
22:05:10 × michalz quits (~michalz@185.246.207.197) (Quit: ZNC 1.8.2 - https://znc.in)
22:06:54 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:10:20 × jjhoo quits (~jahakala@user/jjhoo) (Ping timeout: 252 seconds)
22:11:31 peterbecich joins (~Thunderbi@047-229-123-186.res.spectrum.com)
22:11:36 tri joins (~tri@2600:8805:d801:5100:144:622a:4ef1:29b5)
22:15:32 × k_hachig quits (~k_hachig@2607:fea8:351d:ef0:dd3f:bd40:d39e:dac7) (Ping timeout: 268 seconds)
22:15:51 × tri quits (~tri@2600:8805:d801:5100:144:622a:4ef1:29b5) (Ping timeout: 260 seconds)
22:16:05 falafel joins (~falafel@38.90.133.18)
22:17:28 jjhoo joins (~jahakala@user/jjhoo)
22:18:44 tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl)
22:19:46 × acidjnk quits (~acidjnk@p200300d6e737e741c1187d44ef12676b.dip0.t-ipconnect.de) (Ping timeout: 246 seconds)
22:26:50 × waleee quits (~waleee@h-176-10-144-38.NA.cust.bahnhof.se) (Ping timeout: 252 seconds)
22:27:07 × Mr quits (~junkedsta@78.16.193.114) (Ping timeout: 246 seconds)
22:30:35 × tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…)
22:35:28 k_hachig joins (~k_hachig@2607:fea8:351d:ef0:dd3f:bd40:d39e:dac7)
22:35:41 × stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection)
22:36:04 stiell_ joins (~stiell@gateway/tor-sasl/stiell)
22:44:02 Mr joins (~junkedsta@78.16.193.114)
22:54:31 machinedgod joins (~machinedg@d173-183-246-216.abhsia.telus.net)
22:59:08 × __monty__ quits (~toonn@user/toonn) (Quit: leaving)
23:04:52 × mikoto-chan quits (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be) (Ping timeout: 268 seconds)
23:06:11 mikoto-chan joins (~mikoto-ch@ip-83-134-169-166.dsl.scarlet.be)
23:09:59 × falafel quits (~falafel@38.90.133.18) (Ping timeout: 260 seconds)
23:15:22 [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470)
23:18:51 × [_] quits (~itchyjunk@user/itchyjunk/x-7353470) (Ping timeout: 260 seconds)
23:32:52 × gmg quits (~user@user/gehmehgeh) (Quit: Leaving)
23:35:48 × emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: au revoir)
23:36:35 × Mr quits (~junkedsta@78.16.193.114) (Ping timeout: 260 seconds)
23:43:04 × robobub quits (uid248673@id-248673.uxbridge.irccloud.com) (Quit: Connection closed for inactivity)
23:54:26 falafel joins (~falafel@38.90.133.18)

All times are in UTC on 2024-03-17.