Newest at the top
2025-03-03 23:14:19 +0100 | <monochrom> | Wait. So consider the existential types "data N = forall a. Num a => N a" and "data F = forall a. Fractional a => F a". Which one is a subtype of which? I think F is the subtype. |
2025-03-03 23:13:06 +0100 | myxos | (~myxos@syn-065-028-251-121.res.spectrum.com) myxokephale |
2025-03-03 23:12:31 +0100 | <jle`> | it's still a bit weird to think of `Num` alone as positive but i guess there is no need to formalize that |
2025-03-03 23:11:39 +0100 | <dolio> | Yeah. |
2025-03-03 23:11:22 +0100 | <jle`> | if Num is negative in forall a. Num a => [a] -> r then it'd be positive in (forall a. Num a => [a] -> r) -> r |
2025-03-03 23:11:18 +0100 | <monochrom> | s/You just/You know/ |
2025-03-03 23:11:13 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-03 23:10:41 +0100 | <monochrom> | It is pretty much why this world is such a mess. |
2025-03-03 23:10:31 +0100 | <monochrom> | You just, trying to increase divisiveness and "controversy". |
2025-03-03 23:10:06 +0100 | <monochrom> | Are you like a reporter for a politics newspaper? Because only they do this meme of "he said such and such, what do you think?" |
2025-03-03 23:09:24 +0100 | <monochrom> | Sure. So ask that particular Haskeller. |
2025-03-03 23:09:04 +0100 | <haskellbridge> | <Liamzee> because it was a stray comment by a Haskeller on /r/Haskell from up to 24 months ago |
2025-03-03 23:08:45 +0100 | <monochrom> | Why do people ask you what other people think? |
2025-03-03 23:08:34 +0100 | <dolio> | jle`: I think that's right, but there are to many negations for me to be really confident. |
2025-03-03 23:08:09 +0100 | <monochrom> | Why do you not ask those people? |
2025-03-03 23:08:06 +0100 | <haskellbridge> | <Liamzee> I'm working Rust right now, building a toy tetris game, and OOP's approach to data organization seems useful |
2025-03-03 23:08:05 +0100 | <jle`> | usually it's because their oop professor was mean to them |
2025-03-03 23:07:57 +0100 | <monochrom> | I don't know, because I am not one of them. |
2025-03-03 23:07:23 +0100 | <haskellbridge> | <Liamzee> why do people complain that OOP rots the mind? |
2025-03-03 23:06:44 +0100 | <jle`> | ...i think |
2025-03-03 23:06:24 +0100 | <jle`> | that translates well to how (forall a. Num a => [a] -> r) -> r is a supertype of (forall a. Fractional a => [a] -> r) -> r .... because the variances line up |
2025-03-03 23:05:01 +0100 | Googulator93 | (~Googulato@2a01-036d-0106-14b2-c443-5a96-b49d-1dd5.pool6.digikabel.hu) |
2025-03-03 23:04:45 +0100 | Googulator93 | (~Googulato@2a01-036d-0106-14b2-c443-5a96-b49d-1dd5.pool6.digikabel.hu) (Quit: Client closed) |
2025-03-03 23:03:48 +0100 | zungi | (~tory@user/andrewchawk) (Ping timeout: 264 seconds) |
2025-03-03 23:03:11 +0100 | <jle`> | oh nice that makes a lot of sense |
2025-03-03 23:01:35 +0100 | <dolio> | That's relatively normal for building things with arrows. The left-hand side is contravariant. |
2025-03-03 23:00:30 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
2025-03-03 22:57:13 +0100 | <jle`> | so Num is a superclass of Fractional but Num a => a is a subtype of Fractional a => a |
2025-03-03 22:54:48 +0100 | <jle`> | thanks |
2025-03-03 22:54:45 +0100 | <jle`> | ah. the report uses both superclass and subclass |
2025-03-03 22:53:22 +0100 | <geekosaur> | that's what the Report calls it |
2025-03-03 22:53:11 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-03 22:52:55 +0100 | <jle`> | but i do see people sometimes saying ie. Num is a superclass of Fractional |
2025-03-03 22:52:10 +0100 | <jle`> | maybe the only thing you can say is that Monoid is a constrained typeclass |
2025-03-03 22:50:32 +0100 | <jle`> | even though it sort of goes in the reverse direction of liskov substitution |
2025-03-03 22:49:23 +0100 | <jle`> | what's the actual term for the relationship between ie Semigroup and Monoid? is Monoid a subclass of Semigroup? |
2025-03-03 22:49:02 +0100 | jle` | (~jle`@2603:8001:3b00:11:d87a:f805:3ce4:c943) jle` |
2025-03-03 22:44:54 +0100 | myxos | (~myxos@syn-065-028-251-121.res.spectrum.com) (Ping timeout: 260 seconds) |
2025-03-03 22:43:57 +0100 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
2025-03-03 22:42:24 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-03-03 22:41:49 +0100 | alfiee | (~alfiee@user/alfiee) (Ping timeout: 260 seconds) |
2025-03-03 22:38:07 +0100 | fantom | (~fantom@2.219.56.221) |
2025-03-03 22:37:48 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-03-03 22:37:17 +0100 | alfiee | (~alfiee@user/alfiee) alfiee |
2025-03-03 22:31:43 +0100 | machinedgod | (~machinedg@d108-173-18-100.abhsia.telus.net) machinedgod |
2025-03-03 22:29:48 +0100 | fp | (~Thunderbi@hof1.kyla.fi) fp |
2025-03-03 22:27:03 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
2025-03-03 22:26:11 +0100 | jmcantrell | (~weechat@user/jmcantrell) (Quit: WeeChat 4.5.2) |
2025-03-03 22:23:15 +0100 | michalz | (~michalz@185.246.207.218) (Remote host closed the connection) |
2025-03-03 22:22:27 +0100 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |