Newest at the top
| 2026-06-14 16:14:39 +0000 | maerwald | (~maerwald@mail.hasufell.de) |
| 2026-06-14 16:14:18 +0000 | maerwald | (~maerwald@mail.hasufell.de) (Quit: gone) |
| 2026-06-14 16:10:58 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-06-14 16:08:57 +0000 | <c_wraith> | That's why liftM isn't deprecated, despite the AMP success |
| 2026-06-14 16:08:27 +0000 | <c_wraith> | It's technically not circular, fwiw. It's fully possible for a type to define fmap in terms of >>= and pure. Despite the Monad instance requiring that a Functor instance exist, they are not required to have any particular direction of dependency on each other. |
| 2026-06-14 16:06:44 +0000 | <jaror> | IO is kind of a bad place to start because its `Functor` instance cannot be written in user code (without digging into GHC specifics) |
| 2026-06-14 16:06:42 +0000 | maerwald | (~maerwald@mail.hasufell.de) |
| 2026-06-14 16:06:01 +0000 | <c_wraith> | pure in this case means "this is the thing that is neutral - it has no effects in the context of this type" |
| 2026-06-14 16:05:59 +0000 | <vms14> | i didn't know how to extract the value from IO |
| 2026-06-14 16:05:42 +0000 | <jaror> | Note that you're kind of making a circular definitions, since `do` notation depends on already having a Functor instance |
| 2026-06-14 16:05:35 +0000 | maerwald | (~maerwald@mail.hasufell.de) (Client Quit) |
| 2026-06-14 16:05:18 +0000 | <vms14> | i like the use of pure to return impurity |
| 2026-06-14 16:05:09 +0000 | <vms14> | that's my first functor |
| 2026-06-14 16:04:51 +0000 | <vms14> | ty <3 |
| 2026-06-14 16:04:43 +0000 | <vms14> | ok then i guess i'm starting to undestand them :D |
| 2026-06-14 16:04:17 +0000 | <jaror> | Categorically a functor is an action on types and an action on morphisms (which must satisfy certain laws) |
| 2026-06-14 16:04:15 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-14 16:03:50 +0000 | <c_wraith> | but yes, that's fmap for IO |
| 2026-06-14 16:03:45 +0000 | <c_wraith> | terminology-wise... no. Types are functors, not values. |
| 2026-06-14 16:03:43 +0000 | <jaror> | aka `fmap` |
| 2026-06-14 16:03:39 +0000 | <jaror> | Yes, that's the standard way IO is a functor |
| 2026-06-14 16:02:53 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-06-14 16:02:45 +0000 | <vms14> | contaminate f x = do value <- x; pure (f value) |
| 2026-06-14 16:02:43 +0000 | <vms14> | contaminate :: (a -> b) -> IO a -> IO b |
| 2026-06-14 16:02:37 +0000 | <vms14> | is this a functor? |
| 2026-06-14 16:01:26 +0000 | vms14 | (~vms14@user/vms14) vms14 |
| 2026-06-14 16:01:26 +0000 | karenw | (~karenw@user/karenw) karenw |
| 2026-06-14 16:00:49 +0000 | maerwald | (~maerwald@mail.hasufell.de) |
| 2026-06-14 15:59:04 +0000 | maerwald | (~maerwald@mail.hasufell.de) (Quit: gone) |
| 2026-06-14 15:57:57 +0000 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2026-06-14 15:57:32 +0000 | chromoblob | (~chromoblo@user/chromob1ot1c) (Read error: Connection reset by peer) |
| 2026-06-14 15:53:13 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-06-14 15:52:16 +0000 | sdrfan123 | (~sdrfan123@2a01:cb15:148:1800:e17b:5f59:5326:2799) (Quit: Client closed) |
| 2026-06-14 15:51:52 +0000 | chromoblob | (~chromoblo@user/chromob1ot1c) chromoblob\0 |
| 2026-06-14 15:51:25 +0000 | chromoblob | (~chromoblo@user/chromob1ot1c) (Ping timeout: 245 seconds) |
| 2026-06-14 15:50:25 +0000 | maerwald | (~maerwald@mail.hasufell.de) |
| 2026-06-14 15:48:29 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-14 15:44:24 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-06-14 15:39:28 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-14 15:39:26 +0000 | puke | (~puke@user/puke) puke |
| 2026-06-14 15:35:01 +0000 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
| 2026-06-14 15:28:41 +0000 | merijn | (~merijn@62.45.136.136) (Ping timeout: 261 seconds) |
| 2026-06-14 15:26:33 +0000 | rscastilho2024_ | (rscastilho@user/rscastilho2024-:23901) rscastilho2024_ |
| 2026-06-14 15:23:40 +0000 | merijn | (~merijn@62.45.136.136) merijn |
| 2026-06-14 15:13:24 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
| 2026-06-14 15:07:54 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-06-14 15:07:09 +0000 | tnt1 | (~Thunderbi@user/tnt1) tnt1 |
| 2026-06-14 14:59:44 +0000 | Vajb | (~Vajb@n4fsyxesh0a4t8vm6z0-1.v6.elisa-mobile.fi) |
| 2026-06-14 14:58:49 +0000 | Vajb | (~Vajb@n60e7ydkwtjklcc1qro-1.v6.elisa-mobile.fi) (Ping timeout: 248 seconds) |
| 2026-06-14 14:57:52 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |