Newest at the top
| 2026-07-04 21:59:59 +0000 | emmanuelux | (~em@user/emmanuelux) emmanuelux |
| 2026-07-04 21:59:08 +0000 | emmanuelux | (~em@user/emmanuelux) (Read error: Connection reset by peer) |
| 2026-07-04 21:55:17 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 21:50:10 +0000 | eggplantade | (~eggplanta@2600:1702:8450:c370:9436:d382:832a:2336) (Ping timeout: 245 seconds) |
| 2026-07-04 21:44:52 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-07-04 21:41:49 +0000 | machinedgod | (~machinedg@d108-173-95-19.abhsia.telus.net) machinedgod |
| 2026-07-04 21:39:54 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 21:29:23 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2026-07-04 21:24:33 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 21:13:54 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-07-04 21:12:11 +0000 | tromp | (~textual@2001:1c00:340e:2700:ec0e:2a6c:3177:923e) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 2026-07-04 21:11:51 +0000 | pfc | (~pfc@user/pfc) pfc |
| 2026-07-04 21:09:10 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 20:58:28 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-07-04 20:54:16 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-07-04 20:53:53 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 20:48:19 +0000 | pfc | (~pfc@user/pfc) (Ping timeout: 265 seconds) |
| 2026-07-04 20:43:53 +0000 | acidjnk | (~acidjnk@p200300d6e74def6053fb0c196a9857db.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 2026-07-04 20:43:40 +0000 | fgarcia | (~lei@user/fgarcia) (Client Quit) |
| 2026-07-04 20:43:18 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-07-04 20:43:14 +0000 | YuutaW | (~YuutaW@infornography.yta.moe) (Ping timeout: 245 seconds) |
| 2026-07-04 20:41:46 +0000 | spew | (~spew@user/spew) (Ping timeout: 241 seconds) |
| 2026-07-04 20:41:03 +0000 | acidjnk_new | (~acidjnk@p200300d6e74def0005b7f745d4942369.dip0.t-ipconnect.de) acidjnk |
| 2026-07-04 20:40:21 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-07-04 20:38:55 +0000 | fgarcia | (~lei@user/fgarcia) (Quit: Remote host closed the connection) |
| 2026-07-04 20:38:27 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 20:35:30 +0000 | <tomsmeding> | yes, not separating the two makes it simpler in the sense that you don't have to think about the separation. ;) |
| 2026-07-04 20:35:06 +0000 | <tomsmeding> | if that would be the normal way of doing IO, why would we separate IO and non-IO? |
| 2026-07-04 20:34:39 +0000 | <EvanR> | do the IO and evaluate the result all at the same time |
| 2026-07-04 20:34:18 +0000 | <EvanR> | that account of IO makes unsafePerformIO sound simpler than normal IO (one kind of special event associated with an action not two) |
| 2026-07-04 20:32:51 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds) |
| 2026-07-04 20:28:11 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
| 2026-07-04 20:27:28 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
| 2026-07-04 20:27:23 +0000 | haritz | (~hrtz@user/haritz) haritz |
| 2026-07-04 20:27:23 +0000 | haritz | (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host) |
| 2026-07-04 20:27:23 +0000 | haritz | (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) |
| 2026-07-04 20:20:24 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-07-04 20:16:09 +0000 | <tomsmeding> | that crazy thunk-inspecting unsafeUnperformIO would have a really amusing failure case though: if it's not a state token application, "Cannot unperformIO: already performed" |
| 2026-07-04 20:15:41 +0000 | bdkl | (~bdkl@user/bdkl) (Quit: bdkl) |
| 2026-07-04 20:14:42 +0000 | tromp | (~textual@2001:1c00:340e:2700:ec0e:2a6c:3177:923e) |
| 2026-07-04 20:14:30 +0000 | <int-e> | etc. |
| 2026-07-04 20:14:28 +0000 | <int-e> | You can't have unsafeUnperformIO; |
| 2026-07-04 20:14:14 +0000 | <int-e> | You can't have unsafePerformIO; the way I'd describe the reason is that IO actions have a "lever" that triggers the underlying IO operations independently of forcing the action's result; unsafePerformIO inextricably ties these two things together. Unless you go crazy and write code that inspects thunks and code to find pending applications of state tokens I suppose. |
| 2026-07-04 20:11:41 +0000 | <int-e> | (that's also wrong of course) |
| 2026-07-04 20:11:29 +0000 | <lambdabot> | a -> IO a |
| 2026-07-04 20:11:28 +0000 | <int-e> | :t Control.Exception.evaluate |
| 2026-07-04 20:11:17 +0000 | <monochrom> | I don't actually know. Maybe it works out of the box. |
| 2026-07-04 20:09:36 +0000 | <EvanR> | aw |
| 2026-07-04 20:09:20 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-07-04 20:08:46 +0000 | <yahb2> | <no output> |