2025-02-08 00:02:56 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds) |
2025-02-08 00:07:10 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-02-08 00:08:08 +0100 | <EvanR> | >3rd rate college grad |
2025-02-08 00:08:12 +0100 | <EvanR> | I resemble that remark |
2025-02-08 00:08:33 +0100 | <EvanR> | but also not only do I understand recursion it was actually on the syllabus once |
2025-02-08 00:11:20 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 252 seconds) |
2025-02-08 00:12:21 +0100 | foul_owl | (~kerry@193.42.0.126) foul_owl |
2025-02-08 00:14:28 +0100 | <c_wraith> | I'm still unsure if understanding recursion was made easier by simultaneously learning how compilers implement it or not. |
2025-02-08 00:15:09 +0100 | michalz | (~michalz@185.246.207.197) (Remote host closed the connection) |
2025-02-08 00:17:21 +0100 | <haskellbridge> | <Bowuigi> Knowing about the stack is good for imperative languages but bad for functional languages IMHO |
2025-02-08 00:17:50 +0100 | <geekosaur> | I'm… not sure I ever didn't understand recursion. I recall being annoyed that there was no way to do it in MS-BASIC |
2025-02-08 00:19:48 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) (Remote host closed the connection) |
2025-02-08 00:25:33 +0100 | <Leary> | Yeah, for me recursion was an obvious, intuitive tool for simplifying problems; I'd instead stuggle to solve them /without/ it. Though I may have understood it via the principle of induction. |
2025-02-08 00:26:48 +0100 | MyNetAz | (~MyNetAz@user/MyNetAz) MyNetAz |
2025-02-08 00:32:13 +0100 | <geekosaur> | yeh, I can't say whether I'd encountered that by that point or not |
2025-02-08 00:32:35 +0100 | <geekosaur> | but even so, the notion of reducing a problem to a simpler version seemed pretty obvious to me |
2025-02-08 00:46:51 +0100 | __monty__ | (~toonn@user/toonn) (Quit: leaving) |
2025-02-08 00:47:44 +0100 | <hololeap> | I asked this a year back because for some reason this package is hard for me to remember and it's surprisingly difficult to search for |
2025-02-08 00:48:13 +0100 | <hololeap> | but what is the name of the package that contains an Either like data type that accumulates errors? |
2025-02-08 00:49:01 +0100 | <Leary> | @hackage validation |
2025-02-08 00:49:01 +0100 | <lambdabot> | https://hackage.haskell.org/package/validation |
2025-02-08 00:49:24 +0100 | otbergsten | (~otbergste@user/otbergsten) () |
2025-02-08 00:49:37 +0100 | <hololeap> | thanks |
2025-02-08 00:51:20 +0100 | <hololeap> | I also remember there was a related typeclass that was considered to be "between" Applicative and Monad |
2025-02-08 00:51:39 +0100 | <Leary> | @hackage selective |
2025-02-08 00:51:39 +0100 | <lambdabot> | https://hackage.haskell.org/package/selective |
2025-02-08 00:53:36 +0100 | <hololeap> | thank you |
2025-02-08 00:55:14 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-02-08 00:59:22 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 252 seconds) |
2025-02-08 01:03:24 +0100 | foul_owl | (~kerry@193.42.0.126) (Ping timeout: 252 seconds) |
2025-02-08 01:16:36 +0100 | robobub | (uid248673@id-248673.uxbridge.irccloud.com) robobub |
2025-02-08 01:17:50 +0100 | foul_owl | (~kerry@174-21-138-88.tukw.qwest.net) foul_owl |
2025-02-08 01:19:25 +0100 | Square | (~Square@user/square) Square |
2025-02-08 01:19:43 +0100 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2025-02-08 01:23:24 +0100 | sprotte24 | (~sprotte24@p200300d16f162e00a0abf896d629d189.dip0.t-ipconnect.de) (Quit: Leaving) |
2025-02-08 01:40:33 +0100 | <haskellbridge> | <Preetham Gujjula> Is there any way to infer "Eq (f a)" from "(Eq a, Eq1 f)"? Here's a small example: |
2025-02-08 01:40:33 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/txkgrmSDUVjUVWVJRVXKYhNi/LYPi2Ize3LU (21 lines) |
2025-02-08 01:41:23 +0100 | <haskellbridge> | <Preetham Gujjula> Is there any way to infer "Eq (f a)" from "(Eq a, Eq1 f)"? Here's a small example: |
2025-02-08 01:41:23 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/IWoCXjVZUXtnETfIMFBBSOuB/v7p8RIuNF04 (21 lines) |
2025-02-08 01:43:58 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-02-08 01:45:01 +0100 | <haskellbridge> | <Preetham Gujjula> My apologies everyone, I meant to post this in the Haskell matrix channel |
2025-02-08 01:48:08 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 252 seconds) |
2025-02-08 01:49:49 +0100 | <Leary> | Preetham: You can write `newtype F1 f a = F1 (f a); instance (Eq1 f, Eq a) => Eq (F1 f a)` and use `coerce @[f a] @[F1 f a]`. |
2025-02-08 01:51:20 +0100 | <haskellbridge> | <sm> Preetham Gujjula: worked perfectly in my matrix client. :) And in IRC client, it was also readable, with two pastebin links |
2025-02-08 01:52:53 +0100 | remedan | (~remedan@ip-62-245-108-153.bb.vodafone.cz) (Quit: Bye!) |
2025-02-08 01:54:50 +0100 | remedan | (~remedan@ip-62-245-108-153.bb.vodafone.cz) remedan |
2025-02-08 01:55:40 +0100 | <haskellbridge> | <Preetham Gujjula> Oh good to hear sm :) |
2025-02-08 02:02:02 +0100 | <haskellbridge> | <Preetham Gujjula> Leary: I don't think that idea works, GHC warns: |
2025-02-08 02:02:02 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/AmMeFJGdLlJCilBtJKDYAhqG/0S1DLbftubs (10 lines) |
2025-02-08 02:02:46 +0100 | <haskellbridge> | <Preetham Gujjula> Also why can't I just use the "F1" constructor instead of "coerce"? |
2025-02-08 02:08:00 +0100 | <haskellbridge> | <Preetham Gujjula> Oh wait I see, I can write an implementation for "(==)" using "eq1": |
2025-02-08 02:08:00 +0100 | <haskellbridge> | ... long message truncated: https://kf8nh.com/_heisenbridge/media/kf8nh.com/SGoxowAGeEDwOguEHnahrMWL/IttEtTK99nU (11 lines) |
2025-02-08 02:08:18 +0100 | <Leary> | Preetham: You still have to define `(==)`, but you can do that with `eq1`. Using `coerce` over `map F1` may avoid a needless traversal of the list, though rewrite rules would likely evade it anyway. |
2025-02-08 02:10:39 +0100 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |