2025-07-17 00:02:41 +0200 | sp1ff | (~user@c-67-160-173-55.hsd1.wa.comcast.net) sp1ff |
2025-07-17 00:04:58 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2025-07-17 00:05:30 +0200 | lfr` | (~user@i59F7AEE4.versanet.de) |
2025-07-17 00:09:15 +0200 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
2025-07-17 00:10:57 +0200 | lfr` | (~user@i59F7AEE4.versanet.de) (Ping timeout: 276 seconds) |
2025-07-17 00:14:42 +0200 | trickard_ | trickard |
2025-07-17 00:16:47 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 00:20:26 +0200 | sp1ff | (~user@c-67-160-173-55.hsd1.wa.comcast.net) (Ping timeout: 272 seconds) |
2025-07-17 00:21:05 +0200 | Square | (~Square@user/square) (Ping timeout: 248 seconds) |
2025-07-17 00:21:30 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 00:23:32 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 00:26:19 +0200 | ljdarj1 | (~Thunderbi@user/ljdarj) ljdarj |
2025-07-17 00:26:29 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 248 seconds) |
2025-07-17 00:29:16 +0200 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds) |
2025-07-17 00:29:16 +0200 | ljdarj1 | ljdarj |
2025-07-17 00:34:50 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 00:37:16 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 00:37:23 +0200 | takuan | (~takuan@d8D86B9E9.access.telenet.be) (Remote host closed the connection) |
2025-07-17 00:39:30 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
2025-07-17 00:41:00 +0200 | <Unicorn_Princess> | in cases where both work, do you prefer case expressions, or just function definition pattern matching? (e.g. f (Just x) = .., f Nothing = ..) |
2025-07-17 00:41:22 +0200 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod |
2025-07-17 00:42:13 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 252 seconds) |
2025-07-17 00:42:24 +0200 | euphores | (~SASL_euph@user/euphores) (Ping timeout: 260 seconds) |
2025-07-17 00:43:24 +0200 | <geekosaur> | the latter |
2025-07-17 00:43:39 +0200 | <Unicorn_Princess> | any reason? |
2025-07-17 00:45:11 +0200 | <Unicorn_Princess> | personally i guess i don't like repeating the function name, but on the other hand, it is conceptually simpler.. |
2025-07-17 00:45:18 +0200 | Angelz | (Angelz@Angelz.oddprotocol.org) |
2025-07-17 00:45:33 +0200 | falafel | (~falafel@79.117.174.28) falafel |
2025-07-17 00:45:50 +0200 | <geekosaur> | most people consider it writing what you mean, although I will add the observation that it's only true if you're used to mathematical notation |
2025-07-17 00:45:58 +0200 | <geekosaur> | where functions are often defined that way |
2025-07-17 00:46:26 +0200 | <geekosaur> | you might have nnoticed that the mathies kinda rule in the Haskell realm 🙂 |
2025-07-17 00:48:09 +0200 | falafel | (~falafel@79.117.174.28) (Remote host closed the connection) |
2025-07-17 00:48:09 +0200 | sprotte24 | (~sprotte24@p200300d16f055c002408fd05648795dd.dip0.t-ipconnect.de) (Quit: Leaving) |
2025-07-17 00:50:13 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 00:53:07 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 00:54:39 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
2025-07-17 00:56:12 +0200 | <Unicorn_Princess> | makes sense, thanks |
2025-07-17 00:58:19 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 268 seconds) |
2025-07-17 00:58:54 +0200 | <jackdk> | `f = \case ...` (Requires `{-# LANGUAGE LambdaCase #-}` |
2025-07-17 01:02:38 +0200 | tomboy64 | (~tomboy64@user/tomboy64) (Ping timeout: 268 seconds) |
2025-07-17 01:03:31 +0200 | acidjnk | (~acidjnk@p200300d6e70b661810c0baac8c5eeb00.dip0.t-ipconnect.de) (Ping timeout: 276 seconds) |
2025-07-17 01:05:36 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 01:06:31 +0200 | tomboy64 | (~tomboy64@user/tomboy64) tomboy64 |
2025-07-17 01:09:12 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 01:10:45 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
2025-07-17 01:12:42 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 276 seconds) |
2025-07-17 01:13:57 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 248 seconds) |
2025-07-17 01:17:18 +0200 | poscat0x04 | (~poscat@user/poscat) poscat |
2025-07-17 01:19:07 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 01:19:20 +0200 | poscat | (~poscat@user/poscat) (Ping timeout: 272 seconds) |
2025-07-17 01:19:25 +0200 | V | (~v@ircpuzzles/2022/april/winner/V) V |
2025-07-17 01:20:59 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 01:24:19 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 276 seconds) |
2025-07-17 01:24:46 +0200 | V | (~v@ircpuzzles/2022/april/winner/V) (Quit: We're here. We're queer. Connection reset by peer) |
2025-07-17 01:24:52 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 01:25:37 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-07-17 01:35:17 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 01:36:20 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 01:40:15 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 268 seconds) |
2025-07-17 01:41:29 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 268 seconds) |
2025-07-17 01:44:56 +0200 | weary-traveler | (~user@user/user363627) user363627 |
2025-07-17 01:44:59 +0200 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
2025-07-17 01:51:19 +0200 | lfr` | (~user@i59F7AEE4.versanet.de) |
2025-07-17 01:51:45 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 01:55:56 +0200 | lfr` | (~user@i59F7AEE4.versanet.de) (Ping timeout: 252 seconds) |
2025-07-17 01:58:30 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 02:07:18 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 02:09:47 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 02:10:37 +0200 | sim590 | (~simon@2001:18c0:a82:2400::9fb) (Quit: WeeChat 4.6.3) |
2025-07-17 02:12:03 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 252 seconds) |
2025-07-17 02:14:15 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 02:23:34 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 02:28:37 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 248 seconds) |
2025-07-17 02:32:20 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2025-07-17 02:35:00 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 02:35:37 +0200 | califax | (~califax@user/califx) califx |
2025-07-17 02:38:21 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
2025-07-17 02:39:34 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 02:39:36 +0200 | alphaerik | (~halloy466@user/alphaerik) alphaerik |
2025-07-17 02:39:39 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 02:40:35 +0200 | alphaerik | (~halloy466@user/alphaerik) (Quit: alphaerik) |
2025-07-17 02:42:12 +0200 | alphaerik | (~alphaerik@38.180.193.125) |
2025-07-17 02:42:34 +0200 | alphaerik | (~alphaerik@38.180.193.125) (Changing host) |
2025-07-17 02:42:34 +0200 | alphaerik | (~alphaerik@user/alphaerik) alphaerik |
2025-07-17 02:44:55 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 276 seconds) |
2025-07-17 02:50:23 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 02:55:24 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
2025-07-17 02:55:49 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 02:56:13 +0200 | alphaerik | (~alphaerik@user/alphaerik) (Ping timeout: 245 seconds) |
2025-07-17 02:56:24 +0200 | alphaerik | (~alphaerik@38.180.193.125) |
2025-07-17 02:56:36 +0200 | alphaerik | (~alphaerik@38.180.193.125) (Changing host) |
2025-07-17 02:56:36 +0200 | alphaerik | (~alphaerik@user/alphaerik) alphaerik |
2025-07-17 03:01:18 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 272 seconds) |
2025-07-17 03:03:12 +0200 | alphaerik | (~alphaerik@user/alphaerik) (Ping timeout: 276 seconds) |
2025-07-17 03:05:47 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 03:07:57 +0200 | ttybitnik | (~ttybitnik@user/wolper) (Remote host closed the connection) |
2025-07-17 03:09:09 +0200 | Codeko | (~user@user/Codeko) Codeko |
2025-07-17 03:10:55 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
2025-07-17 03:12:00 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 03:17:05 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 248 seconds) |
2025-07-17 03:21:09 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 03:25:44 +0200 | ystael | (~ystael@user/ystael) (Ping timeout: 260 seconds) |
2025-07-17 03:26:00 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds) |
2025-07-17 03:27:47 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 03:30:30 +0200 | Codeko | (~user@user/Codeko) (Read error: Connection reset by peer) |
2025-07-17 03:32:39 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 252 seconds) |
2025-07-17 03:36:32 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 03:43:01 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-07-17 03:43:50 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) |
2025-07-17 03:44:27 +0200 | infinity0 | (~infinity0@pwned.gg) (Ping timeout: 252 seconds) |
2025-07-17 03:48:34 +0200 | lfr` | (~user@2001:9e8:ae6:b700:b478:2a6c:55ef:3b11) (Ping timeout: 248 seconds) |
2025-07-17 03:52:34 +0200 | troydm | (~troydm@user/troydm) (Ping timeout: 260 seconds) |
2025-07-17 03:54:34 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 03:59:09 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
2025-07-17 03:59:59 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 04:04:52 +0200 | infinity0 | (~infinity0@pwned.gg) infinity0 |
2025-07-17 04:05:10 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 268 seconds) |
2025-07-17 04:05:22 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 04:07:22 +0200 | mange | (~mange@user/mange) mange |
2025-07-17 04:09:46 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 04:14:28 +0200 | qqe | (~qqq@185.54.21.199) (Quit: Lost terminal) |
2025-07-17 04:16:14 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 04:20:52 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 04:21:03 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 252 seconds) |
2025-07-17 04:25:42 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
2025-07-17 04:32:30 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 04:35:21 +0200 | td_ | (~td@i53870934.versanet.de) (Ping timeout: 252 seconds) |
2025-07-17 04:36:15 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 04:37:01 +0200 | td_ | (~td@i5387090B.versanet.de) |
2025-07-17 04:37:37 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 248 seconds) |
2025-07-17 04:40:49 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-07-17 04:43:54 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 04:48:16 +0200 | prdak | (~Thunderbi@user/prdak) (Ping timeout: 252 seconds) |
2025-07-17 04:51:37 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 04:56:34 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds) |
2025-07-17 05:05:03 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 05:07:06 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 05:09:44 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 260 seconds) |
2025-07-17 05:11:44 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 05:17:08 +0200 | lfr` | (~user@i59F7AED9.versanet.de) |
2025-07-17 05:22:00 +0200 | lfr` | (~user@i59F7AED9.versanet.de) (Ping timeout: 252 seconds) |
2025-07-17 05:22:30 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 05:24:19 +0200 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 260 seconds) |
2025-07-17 05:27:08 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 05:33:17 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 05:38:01 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 05:38:28 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 276 seconds) |
2025-07-17 05:42:32 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 05:43:18 +0200 | aforemny | (~aforemny@2001:9e8:6cc9:7f00:fef4:96e0:82b6:8409) aforemny |
2025-07-17 05:43:24 +0200 | aforemny_ | (~aforemny@2001:9e8:6cea:7700:a76c:242b:21df:a2c1) (Ping timeout: 244 seconds) |
2025-07-17 05:49:34 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 05:51:57 +0200 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
2025-07-17 05:53:32 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 05:54:25 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 248 seconds) |
2025-07-17 05:58:10 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
2025-07-17 06:03:34 +0200 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) machinedgod |
2025-07-17 06:05:47 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 06:06:23 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 06:10:45 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 252 seconds) |
2025-07-17 06:10:46 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 06:12:14 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) peterbecich |
2025-07-17 06:12:39 +0200 | trickard | (~trickard@cpe-62-98-47-163.wireline.com.au) (Remote host closed the connection) |
2025-07-17 06:16:34 +0200 | trickard | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 06:16:50 +0200 | jmcantrell | (~weechat@user/jmcantrell) (Ping timeout: 248 seconds) |
2025-07-17 06:21:46 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 06:21:57 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 06:26:34 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
2025-07-17 06:26:38 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 245 seconds) |
2025-07-17 06:28:19 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 260 seconds) |
2025-07-17 06:30:40 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 06:35:23 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 245 seconds) |
2025-07-17 06:35:52 +0200 | trickard | (~trickard@cpe-62-98-47-163.wireline.com.au) (Remote host closed the connection) |
2025-07-17 06:37:28 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 06:37:46 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 06:41:40 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Remote host closed the connection) |
2025-07-17 06:44:08 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 06:46:47 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 06:48:29 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 06:51:29 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 248 seconds) |
2025-07-17 06:55:30 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 07:00:22 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
2025-07-17 07:03:05 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 07:07:22 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 07:08:10 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 276 seconds) |
2025-07-17 07:08:29 +0200 | sp1ff | (~user@c-67-160-173-55.hsd1.wa.comcast.net) sp1ff |
2025-07-17 07:11:19 +0200 | Axma55379 | Axman6 |
2025-07-17 07:12:09 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
2025-07-17 07:18:02 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 07:22:47 +0200 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Remote host closed the connection) |
2025-07-17 07:22:51 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 07:23:01 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 248 seconds) |
2025-07-17 07:23:10 +0200 | simplystuart | (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) |
2025-07-17 07:27:03 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
2025-07-17 07:27:08 +0200 | michalz | (~michalz@185.246.207.200) |
2025-07-17 07:30:23 +0200 | trickard_ | trickard |
2025-07-17 07:34:17 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 07:38:15 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 07:38:23 +0200 | peterbecich | (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
2025-07-17 07:39:39 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 260 seconds) |
2025-07-17 07:42:48 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
2025-07-17 07:45:20 +0200 | Eoco | (~ian@128.101.131.218) (Ping timeout: 244 seconds) |
2025-07-17 07:45:44 +0200 | remexre | (~remexre@user/remexre) (Ping timeout: 252 seconds) |
2025-07-17 07:45:53 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 07:47:37 +0200 | Eoco | (~ian@128.101.131.218) Eoco |
2025-07-17 07:48:02 +0200 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
2025-07-17 07:50:23 +0200 | prdak | (~Thunderbi@user/prdak) (Ping timeout: 245 seconds) |
2025-07-17 07:50:27 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 07:53:43 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) merijn |
2025-07-17 07:55:48 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 268 seconds) |
2025-07-17 07:58:15 +0200 | merijn | (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
2025-07-17 08:06:42 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 08:12:16 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 272 seconds) |
2025-07-17 08:19:06 +0200 | machinedgod | (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 276 seconds) |
2025-07-17 08:19:06 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 08:24:18 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 272 seconds) |
2025-07-17 08:27:39 +0200 | rembo10 | (~rembo10@main.remulis.com) (Quit: ZNC 1.9.1 - https://znc.in) |
2025-07-17 08:29:28 +0200 | rembo10 | (~rembo10@main.remulis.com) rembo10 |
2025-07-17 08:30:37 +0200 | takuan | (~takuan@d8D86B9E9.access.telenet.be) |
2025-07-17 08:35:12 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 08:39:49 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 248 seconds) |
2025-07-17 08:41:46 +0200 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
2025-07-17 08:44:05 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) |
2025-07-17 08:51:26 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 08:56:43 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 276 seconds) |
2025-07-17 08:59:36 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 09:00:04 +0200 | caconym74 | (~caconym@user/caconym) (Quit: bye) |
2025-07-17 09:00:42 +0200 | caconym74 | (~caconym@user/caconym) caconym |
2025-07-17 09:07:36 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 09:07:47 +0200 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
2025-07-17 09:13:04 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Ping timeout: 272 seconds) |
2025-07-17 09:15:26 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2025-07-17 09:20:07 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 09:28:28 +0200 | ft | (~ft@p3e9bc89f.dip0.t-ipconnect.de) (Quit: leaving) |
2025-07-17 09:33:37 +0200 | cstml | (~Thunderbi@user/cstml) cstml |
2025-07-17 09:38:05 +0200 | Katarushisu | (~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) (Read error: Connection reset by peer) |
2025-07-17 09:38:17 +0200 | Katarushisu | (~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) Katarushisu |
2025-07-17 09:39:23 +0200 | caubert | (~caubert@user/caubert) (Remote host closed the connection) |
2025-07-17 09:39:52 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 09:39:54 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) |
2025-07-17 09:40:21 +0200 | ljdarj | (~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds) |
2025-07-17 09:40:53 +0200 | prdak | (~Thunderbi@user/prdak) (Quit: prdak) |
2025-07-17 09:41:13 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 09:43:05 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 09:44:32 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 252 seconds) |
2025-07-17 09:48:32 +0200 | acidjnk | (~acidjnk@p200300d6e70b661810c0baac8c5eeb00.dip0.t-ipconnect.de) acidjnk |
2025-07-17 09:48:43 +0200 | jespada | (~jespada@2800:a4:2283:2700:4d56:5313:eb6:35c4) (Ping timeout: 276 seconds) |
2025-07-17 09:49:52 +0200 | jespada | (~jespada@2800:a4:223f:1a00:1833:e9a3:3f1f:2d7a) jespada |
2025-07-17 09:52:42 +0200 | dtman34 | (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) (Ping timeout: 276 seconds) |
2025-07-17 09:54:44 +0200 | kuribas | (~user@ip-188-118-57-242.reverse.destiny.be) kuribas |
2025-07-17 09:54:57 +0200 | jcarpenter2 | (~lol@2603:3016:1e01:b960:68f4:f810:ede6:3c8e) (Ping timeout: 248 seconds) |
2025-07-17 09:58:15 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 10:00:07 +0200 | dtman34 | (~dtman34@2601:447:d182:6512:c2f9:c3a:b83d:6490) dtman34 |
2025-07-17 10:02:46 +0200 | cstml | (~Thunderbi@user/cstml) (Ping timeout: 244 seconds) |
2025-07-17 10:03:31 +0200 | jcarpenter2 | (~lol@96.78.87.197) |
2025-07-17 10:06:24 +0200 | haskellman | (~haskellma@185.13.107.115) |
2025-07-17 10:07:04 +0200 | <haskellman> | Hello everyone, what is the best way to generate complex datastructures randomly s.t. I can compose them and whatever ? |
2025-07-17 10:07:19 +0200 | lxsameer | (~lxsameer@Serene/lxsameer) lxsameer |
2025-07-17 10:08:47 +0200 | <tomsmeding> | https://hackage.haskell.org/package/hedgehog-1.5/docs/Hedgehog-Gen.html ; https://hackage-content.haskell.org/package/QuickCheck-2.16.0.0/docs/Test-QuickCheck.html |
2025-07-17 10:09:06 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
2025-07-17 10:11:15 +0200 | JamesMowery1773 | (~JamesMowe@ip68-228-212-232.ph.ph.cox.net) JamesMowery |
2025-07-17 10:11:39 +0200 | JamesMowery177 | (~JamesMowe@ip68-228-212-232.ph.ph.cox.net) (Ping timeout: 252 seconds) |
2025-07-17 10:11:39 +0200 | JamesMowery1773 | JamesMowery177 |
2025-07-17 10:14:51 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 10:16:24 +0200 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
2025-07-17 10:18:58 +0200 | puke | (~puke@user/puke) (Remote host closed the connection) |
2025-07-17 10:19:18 +0200 | puke | (~puke@user/puke) puke |
2025-07-17 10:19:34 +0200 | mfc_kbs | (~keibisoft@2a06:1fc0:0:1::1cd) (Ping timeout: 272 seconds) |
2025-07-17 10:22:56 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2025-07-17 10:31:21 +0200 | chele | (~chele@user/chele) chele |
2025-07-17 10:32:08 +0200 | haskellman | (~haskellma@185.13.107.115) (Quit: Client closed) |
2025-07-17 10:36:45 +0200 | mfc_kbs | (~keibisoft@mail.keibisoft.com) |
2025-07-17 10:37:33 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 276 seconds) |
2025-07-17 10:38:20 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 10:49:20 +0200 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 272 seconds) |
2025-07-17 10:49:58 +0200 | m1dnight | (~m1dnight@78-20-51-206.access.telenet.be) (Ping timeout: 272 seconds) |
2025-07-17 11:00:44 +0200 | prdak | (~Thunderbi@user/prdak) (Read error: Connection reset by peer) |
2025-07-17 11:18:41 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 248 seconds) |
2025-07-17 11:27:13 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 11:32:07 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 11:35:09 +0200 | trickard | (~trickard@cpe-62-98-47-163.wireline.com.au) (Ping timeout: 260 seconds) |
2025-07-17 11:35:23 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 11:41:04 +0200 | Guest30 | (~Guest28@69.6.47.202) |
2025-07-17 11:43:11 +0200 | Guest30 | (~Guest28@69.6.47.202) (Client Quit) |
2025-07-17 11:49:57 +0200 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) CiaoSen |
2025-07-17 11:52:56 +0200 | remexre | (~remexre@user/remexre) remexre |
2025-07-17 11:53:59 +0200 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
2025-07-17 12:01:05 +0200 | cstml | (~Thunderbi@user/cstml) cstml |
2025-07-17 12:01:23 +0200 | cstml | (~Thunderbi@user/cstml) (Read error: Connection reset by peer) |
2025-07-17 12:01:25 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) |
2025-07-17 12:01:41 +0200 | cstml | (~Thunderbi@user/cstml) cstml |
2025-07-17 12:05:48 +0200 | cstml | (~Thunderbi@user/cstml) (Ping timeout: 245 seconds) |
2025-07-17 12:05:57 +0200 | Guest82 | (~Guest82@2405:3800:898:469:d431:27ff:fec6:44e4) |
2025-07-17 12:13:13 +0200 | Guest82 | (~Guest82@2405:3800:898:469:d431:27ff:fec6:44e4) (Quit: Client closed) |
2025-07-17 12:16:51 +0200 | m1dnight | (~m1dnight@78-20-51-206.access.telenet.be) m1dnight |
2025-07-17 12:19:16 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
2025-07-17 12:21:13 +0200 | weary-traveler | (~user@user/user363627) user363627 |
2025-07-17 12:31:16 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 12:33:59 +0200 | fp | (~Thunderbi@2001:708:20:1406::10c5) fp |
2025-07-17 12:36:01 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 248 seconds) |
2025-07-17 12:36:03 +0200 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
2025-07-17 12:39:29 +0200 | prdak | (~Thunderbi@user/prdak) (Ping timeout: 260 seconds) |
2025-07-17 12:42:04 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 272 seconds) |
2025-07-17 12:44:03 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 12:46:59 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 12:47:13 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 12:50:42 +0200 | __monty__ | (~toonn@user/toonn) toonn |
2025-07-17 12:54:41 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 12:54:55 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 12:55:46 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 13:00:04 +0200 | caconym74 | (~caconym@user/caconym) (Quit: bye) |
2025-07-17 13:02:18 +0200 | caconym74 | (~caconym@user/caconym) caconym |
2025-07-17 13:03:24 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2025-07-17 13:03:59 +0200 | poscat0x04 | (~poscat@user/poscat) (Remote host closed the connection) |
2025-07-17 13:04:06 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Ping timeout: 252 seconds) |
2025-07-17 13:04:22 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 13:06:33 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2025-07-17 13:07:14 +0200 | poscat | (~poscat@user/poscat) poscat |
2025-07-17 13:08:33 +0200 | Square | (~Square@user/square) Square |
2025-07-17 13:09:00 +0200 | Unicorn_Princess | (~Unicorn_P@user/Unicorn-Princess/x-3540542) Unicorn_Princess |
2025-07-17 13:13:06 +0200 | orenty7 | (~orenty7@37.63.19.36) |
2025-07-17 13:14:06 +0200 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
2025-07-17 13:25:49 +0200 | elenril | (~elenril@tutturu.khirnov.net) (Ping timeout: 244 seconds) |
2025-07-17 13:26:07 +0200 | elenril | (~elenril@2001:67c:1138:4306::5) elenril |
2025-07-17 13:27:27 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) |
2025-07-17 13:31:20 +0200 | poscat0x04 | (~poscat@user/poscat) poscat |
2025-07-17 13:32:38 +0200 | orenty7 | (~orenty7@37.63.19.36) (Quit: Konversation terminated!) |
2025-07-17 13:35:29 +0200 | poscat | (~poscat@user/poscat) (Ping timeout: 260 seconds) |
2025-07-17 13:39:57 +0200 | orenty7 | (~orenty7@37.63.19.36) |
2025-07-17 13:49:13 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 276 seconds) |
2025-07-17 13:50:00 +0200 | cstml | (~Thunderbi@user/cstml) cstml |
2025-07-17 13:56:48 +0200 | cstml | (~Thunderbi@user/cstml) (Ping timeout: 272 seconds) |
2025-07-17 13:59:38 +0200 | ttybitnik | (~ttybitnik@user/wolper) ttybitnik |
2025-07-17 14:00:27 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 14:00:59 +0200 | Smiles | (uid551636@id-551636.lymington.irccloud.com) Smiles |
2025-07-17 14:01:18 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 252 seconds) |
2025-07-17 14:05:28 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 276 seconds) |
2025-07-17 14:08:14 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 14:11:16 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 14:11:30 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 14:12:26 +0200 | Xe_ | (~Xe@perl/impostor/xe) Xe |
2025-07-17 14:12:37 +0200 | Xe | (~Xe@perl/impostor/xe) (Ping timeout: 244 seconds) |
2025-07-17 14:14:09 +0200 | puke | (~puke@user/puke) (Quit: puke) |
2025-07-17 14:15:27 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 14:16:14 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 14:17:50 +0200 | Xe | (~Xe@perl/impostor/xe) Xe |
2025-07-17 14:19:07 +0200 | Xe_ | (~Xe@perl/impostor/xe) (Ping timeout: 276 seconds) |
2025-07-17 14:19:43 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 14:21:44 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 252 seconds) |
2025-07-17 14:22:22 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 14:22:50 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
2025-07-17 14:32:13 +0200 | prdak | (~Thunderbi@user/prdak) (Read error: Connection reset by peer) |
2025-07-17 14:34:26 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 14:34:41 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 14:41:16 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 14:41:28 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 14:43:53 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 265 seconds) |
2025-07-17 14:44:30 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 14:46:45 +0200 | mreh | (~matthew@host86-146-25-68.range86-146.btcentralplus.com) mreh |
2025-07-17 14:47:37 +0200 | Pixi` | (~Pixi@user/pixi) Pixi |
2025-07-17 14:47:54 +0200 | puke | (~puke@user/puke) puke |
2025-07-17 14:49:52 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 14:50:51 +0200 | Pixi | (~Pixi@user/pixi) (Ping timeout: 244 seconds) |
2025-07-17 14:51:54 +0200 | Square | (~Square@user/square) (Ping timeout: 260 seconds) |
2025-07-17 14:52:49 +0200 | <mreh> | is there a way to use a type constructor with an existential type in a smart constructor? |
2025-07-17 14:53:10 +0200 | <merijn> | mreh: Not quite sure what you mean? |
2025-07-17 14:53:13 +0200 | <mreh> | toVertexArray b@(BufferReadOnly _ l _) = VertexArray b l 0 |
2025-07-17 14:53:14 +0200 | <mreh> | toVertexArray b@(BufferWritable _ _ _ l _ _ _ _) = VertexArray b l 0 |
2025-07-17 14:53:35 +0200 | <mreh> | the b in `VertexArray` is an existential (forall b.) |
2025-07-17 14:54:08 +0200 | <mreh> | well, it's actually forall r. Buffer r a |
2025-07-17 14:54:40 +0200 | <mreh> | and the type of toVertexArray :: Buffer r a -> VertexArray a |
2025-07-17 14:55:00 +0200 | <mreh> | but GHC isn't allowing me to do this |
2025-07-17 14:56:12 +0200 | <mreh> | "Could not deduce r ~ 'ReadOnly..." |
2025-07-17 14:56:25 +0200 | <merijn> | Can you make a paste with the relevant types/constructors? |
2025-07-17 14:56:30 +0200 | <mreh> | sure |
2025-07-17 14:56:50 +0200 | <mreh> | @paste |
2025-07-17 14:56:50 +0200 | <lambdabot> | A pastebin: https://paste.debian.net/ |
2025-07-17 14:58:09 +0200 | <mreh> | merijn: https://paste.debian.net/hidden/7246d262/ |
2025-07-17 14:58:59 +0200 | <merijn> | mreh: At first glance that's not existential, it's Rank2 |
2025-07-17 14:59:15 +0200 | <merijn> | mreh: that is, you're explicitly declaring the buffer to be polymorphic in `r` |
2025-07-17 14:59:18 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 14:59:50 +0200 | <merijn> | And I'm guessing BufferReadOnly/BufferWritable actually have a specific `r` (you didn't include them) |
2025-07-17 15:00:03 +0200 | <mreh> | merijn: yes |
2025-07-17 15:00:41 +0200 | <mreh> | I'll paste the error message |
2025-07-17 15:01:10 +0200 | <merijn> | mreh: If you want an existential the forall r should be in front of VertexArray |
2025-07-17 15:01:35 +0200 | <merijn> | data VertexArray a = forall r . VertexArray { ... } |
2025-07-17 15:01:54 +0200 | <mreh> | merijn: aha |
2025-07-17 15:02:23 +0200 | <mreh> | brainfart |
2025-07-17 15:02:25 +0200 | <merijn> | mreh: Your current definition is declaring `vertexArrayBuffer` as a Rank2 type |
2025-07-17 15:04:37 +0200 | <mreh> | merijn: thanks |
2025-07-17 15:08:01 +0200 | end | (~end@user/end/x-0094621) (Ping timeout: 248 seconds) |
2025-07-17 15:09:00 +0200 | bcksl | (~bcksl@user/bcksl) (Ping timeout: 272 seconds) |
2025-07-17 15:09:30 +0200 | sus0 | (zero@user/zeromomentum) (Ping timeout: 252 seconds) |
2025-07-17 15:10:52 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 15:10:52 +0200 | noctux | (~noctux@user/noctux) (Read error: Connection reset by peer) |
2025-07-17 15:11:06 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 15:12:21 +0200 | notzmv | (~umar@user/notzmv) notzmv |
2025-07-17 15:13:16 +0200 | noctux | (~noctux@user/noctux) noctux |
2025-07-17 15:13:34 +0200 | sus0 | (zero@user/zeromomentum) zeromomentum |
2025-07-17 15:13:56 +0200 | dhil | (~dhil@5.151.29.139) dhil |
2025-07-17 15:15:13 +0200 | wbooze | (~inline@ip-005-146-197-046.um05.pools.vodafone-ip.de) Inline |
2025-07-17 15:32:02 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 15:32:20 +0200 | tromp | (~textual@2001:1c00:3487:1b00:a9b1:9c68:1be8:4e5d) (Quit: My iMac has gone to sleep. ZZZzzz…) |
2025-07-17 15:32:35 +0200 | <ski> | mreh : i'm guessing `Buffer r a' is a GADT, having `r' as index |
2025-07-17 15:33:50 +0200 | bcksl | (~bcksl@user/bcksl) bcksl |
2025-07-17 15:34:27 +0200 | <ski> | "declaring `vertexArrayBuffer` as a Rank2 type" -- no, declaring `VertexArray' as being rank-2 (a `PolymorhicComponents' `data' constructor). `vertexArrayBuffer' itself is merely a polymorphic (so rank-1) field of that constructor |
2025-07-17 15:35:36 +0200 | <ski> | mreh : it's not totally clear to me, but i do suspect that you actually want an existential (field) here, rather than a polymorphic field |
2025-07-17 15:36:48 +0200 | wbooze | (~inline@ip-005-146-197-046.um05.pools.vodafone-ip.de) (Quit: Leaving) |
2025-07-17 15:37:37 +0200 | <ski> | hm .. yea, i think so, because you can't have the data constructor of `Buffer' selected, depend on which `r' is being selected |
2025-07-17 15:38:06 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 15:39:29 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 248 seconds) |
2025-07-17 15:40:18 +0200 | <ski> | doing an existential, should also let the current code of `toVertexArray' through (i was thinking of adapting it, for the polymorphic field case) |
2025-07-17 15:40:58 +0200 | end | (~end@user/end/x-0094621) end^ |
2025-07-17 15:44:51 +0200 | tinjamin4 | (~tinjamin@banshee.h4x0r.space) (Quit: The Lounge - https://thelounge.chat) |
2025-07-17 15:46:03 +0200 | mange | (~mange@user/mange) (Quit: Zzz...) |
2025-07-17 15:46:12 +0200 | <ski> | Unicorn_Princess : the latter, generally. because (in the absense of overlapping patterns (or guards)) you can then understand defining equations of the operation separately as true statements about the operation (so you can reason more declaratively, in smaller chunks). some people prefer avoiding repeating (other) parameters, though, as so prefer the `case'-`of' (or `\case' or `\cases'). a third option is |
2025-07-17 15:46:17 +0200 | tinjamin4 | (~tinjamin@banshee.h4x0r.space) |
2025-07-17 15:46:18 +0200 | <ski> | defining a local function in `where' (or `let'-`in'), and have that deal with the branching, without repeating the other parameters. that requires inventing a new name for that function, though |
2025-07-17 15:49:50 +0200 | ystael | (~ystael@user/ystael) ystael |
2025-07-17 15:52:40 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 15:57:49 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 260 seconds) |
2025-07-17 16:07:07 +0200 | Smiles | (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
2025-07-17 16:09:33 +0200 | caubert | (~caubert@user/caubert) caubert |
2025-07-17 16:19:41 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 16:19:49 +0200 | deriamis | (nobody@2600:3c0a::f03c:95ff:fee8:f335) (Ping timeout: 260 seconds) |
2025-07-17 16:23:34 +0200 | <mreh> | ski: yes it's a GADT |
2025-07-17 16:25:04 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 16:26:48 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 16:27:32 +0200 | fp | (~Thunderbi@2001:708:20:1406::10c5) (Ping timeout: 272 seconds) |
2025-07-17 16:27:45 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 16:28:35 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 16:29:04 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 16:30:38 +0200 | <ski> | mreh : you got it working, with switching to using an existential field ? |
2025-07-17 16:33:13 +0200 | <mreh> | ski: yeah, I don't need any of the type information at this point, and I can use eliminators and getter functions for the different kinds of buffer |
2025-07-17 16:34:09 +0200 | <mreh> | eliminators are a bit clunky, but it's worth it for the improved ergonomics of using an existential |
2025-07-17 16:34:25 +0200 | CiaoSen | (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 268 seconds) |
2025-07-17 16:35:00 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 16:35:03 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 265 seconds) |
2025-07-17 16:35:20 +0200 | <mreh> | otherwise I guess I'd need a wrapper around the GADT to descriminate between the two kinds of buffer |
2025-07-17 16:36:35 +0200 | <ski> | "eliminators", in which sense ? |
2025-07-17 16:36:53 +0200 | <ski> | like non-recursive folds ? |
2025-07-17 16:38:25 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 16:38:38 +0200 | cashew | (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
2025-07-17 16:39:25 +0200 | <mreh> | ski: like bufferGetB :: Buffer r a -> (forall r. Buffer r a -> b) -> b |
2025-07-17 16:39:52 +0200 | <mreh> | I think that's what they're called, at least that's what I remember them being called in Thinking with Types |
2025-07-17 16:40:27 +0200 | <ski> | right, what i thought. using CPS, converting into the Church encoding |
2025-07-17 16:41:29 +0200 | ski | would call that operation `withBuffer' |
2025-07-17 16:42:20 +0200 | <mreh> | yeah, that's what I called it actually :) |
2025-07-17 16:42:21 +0200 | <ski> | ah, actually `withVertexArray' (pretty sure you mean `VertexArray a ->', not `Buffer r a ->') |
2025-07-17 16:42:26 +0200 | <mreh> | I was writing it from memory |
2025-07-17 16:42:46 +0200 | <mreh> | yes |
2025-07-17 16:44:06 +0200 | <mreh> | I'm kinda porting gpipe to Vulkan if anyone was wondering what I'm doing |
2025-07-17 16:45:34 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 16:46:52 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
2025-07-17 16:47:06 +0200 | trickard_ | (~trickard@cpe-62-98-47-163.wireline.com.au) |
2025-07-17 16:50:39 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 276 seconds) |
2025-07-17 16:50:47 +0200 | <ski> | there's two ways to represent/encode an existential, like `exists q. ({-empty :: -} q,{- enqueue :: -} a -> q -> q,{- dequeue :: -} q -> Maybe (q,a))', in Haskell |
2025-07-17 16:51:29 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Remote host closed the connection) |
2025-07-17 16:51:37 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 16:52:03 +0200 | <ski> | (a) the "existential `data' (constructor)" representation `Queue a', with `data Queue a where MkQ :: (exists q. (q,a -> q -> q,q -> Maybe (q,a))) -> Queue a' refactoring into `data Queue a where MkQ :: forall q. q -> (a -> q -> q) -> (q -> Maybe (q,a)) -> Queue a', which is the same as `data Queue = forall q. MkQ q (a -> q -> q) (q -> Maybe (q,a))' (the `forall' is because the `MkQ' `data' constructor |
2025-07-17 16:52:09 +0200 | <ski> | becomes polymorphic in `q', while `q' is not mentioned in the return type) |
2025-07-17 16:52:48 +0200 | AlexZenon | (~alzenon@178.34.150.30) (Ping timeout: 252 seconds) |
2025-07-17 16:53:15 +0200 | <ski> | (b) the "Church / CPS encoding" `forall o. ((exists q. (q,a -> q -> q,q -> Maybe (q,a))) -> o) -> o', refactoring into `forall o. (forall q. q -> (a -> q -> q) -> (q -> Maybe (q,a)) -> o) -> o' (again, the `forall q.' is because the callback/continuation needs to be polymorphic, needs to be prepared to handle *any* `q' that might *exist* inside the queue) |
2025-07-17 16:54:11 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Remote host closed the connection) |
2025-07-17 16:54:18 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 16:54:46 +0200 | <ski> | both of these derivations use the logical law that `(exists a. ..a..) -> ...' is equivalent to `forall a. (..a.. -> ...)' (e.g. `length :: (exists a. [a]) -> Int' is a valid way to think about `length'. as long as there *exists* some type `a' such that the input is a list of `a's, `length' will return an `Int') |
2025-07-17 16:56:39 +0200 | AlexZenon | (~alzenon@178.34.150.25) |
2025-07-17 16:56:57 +0200 | <ski> | the second derivation also using the "CPS"/"Church" equivalence between `...' and `forall o. (... -> o) -> o'. (there is also a (dual) "State (in context)" equivalence between `...' and `exists s. (s,s -> ...)') |
2025-07-17 16:58:26 +0200 | cashew | (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Remote host closed the connection) |
2025-07-17 16:58:50 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Remote host closed the connection) |
2025-07-17 16:58:54 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 16:58:58 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 16:59:51 +0200 | Smiles | (uid551636@id-551636.lymington.irccloud.com) Smiles |
2025-07-17 16:59:51 +0200 | <ski> | (these two are special cases of `f (...)' being equivalent to `forall o. (... -> o) -> f o' (Yoneda), and `f (...)' being equivalent to `exists s. (f s,s -> ...)' (Coyoneda), when `f' is a (covariant) functor (for contravariant, you flip the (inner) arrow)) |
2025-07-17 17:01:21 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 17:01:36 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 17:02:33 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Remote host closed the connection) |
2025-07-17 17:02:42 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 17:06:01 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) (Remote host closed the connection) |
2025-07-17 17:06:10 +0200 | lfr` | (~user@2001:9e8:afe:a400:48ff:913e:5ab6:b761) |
2025-07-17 17:06:18 +0200 | <ski> | (for the recursive case, we have (least fixed point, finite depth) `mu r. ..r..' (e.g. `mu r. Maybe (a,r)' corresponding to `List a' where `newtype List a = MkL (Maybe (a,List a))' or `data List a = Nil | Cons a (List a)') being equivalent to `forall r. (..r.. -> r) -> r'; and (greatest fixed point, (potentially) infinite depth) `nu s. ..s..' (e.g. `nu s. Either (a -> s) (b,s)' corresponding to `StreamProc a |
2025-07-17 17:06:24 +0200 | <ski> | b' where `newtype StreamProc a b = MkSP (Either (a -> StreamProc a b) (b,StreamProc a b))' or `data StreamProc a b = Get (a -> StreamProc a b) | Put b (StreamProc a b)')) |
2025-07-17 17:06:39 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
2025-07-17 17:06:51 +0200 | <ski> | mreh : anyway, your `withVertexArray' converts from the (a) to the (b) representation |
2025-07-17 17:12:05 +0200 | chele_ | (~chele@user/chele) chele |
2025-07-17 17:12:57 +0200 | chele | (~chele@user/chele) (Read error: Connection reset by peer) |
2025-07-17 17:17:37 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 17:22:25 +0200 | merijn | (~merijn@77.242.116.146) (Ping timeout: 248 seconds) |
2025-07-17 17:24:47 +0200 | chele_ | chele |
2025-07-17 17:28:04 +0200 | jmcantrell | (~weechat@user/jmcantrell) jmcantrell |
2025-07-17 17:29:29 +0200 | califax | (~califax@user/califx) califx |
2025-07-17 17:33:26 +0200 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
2025-07-17 17:33:50 +0200 | merijn | (~merijn@77.242.116.146) merijn |
2025-07-17 17:34:04 +0200 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
2025-07-17 17:34:49 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 17:36:06 +0200 | califax | (~califax@user/califx) (Remote host closed the connection) |
2025-07-17 17:36:14 +0200 | prdak | (~Thunderbi@user/prdak) (Ping timeout: 260 seconds) |
2025-07-17 17:37:03 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 17:39:43 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) amadaluzia |
2025-07-17 17:41:02 +0200 | Square | (~Square@user/square) Square |
2025-07-17 17:42:03 +0200 | prdak | (~Thunderbi@user/prdak) prdak |
2025-07-17 17:43:56 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 17:43:56 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) (Client Quit) |
2025-07-17 17:44:27 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 17:44:46 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) amadaluzia |
2025-07-17 17:49:00 +0200 | prdak | (~Thunderbi@user/prdak) (Ping timeout: 252 seconds) |
2025-07-17 17:50:30 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) (Quit: ZNC 1.10.0 - https://znc.in) |
2025-07-17 17:51:22 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) amadaluzia |
2025-07-17 17:51:37 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) (Remote host closed the connection) |
2025-07-17 17:52:20 +0200 | inline | (~inline@ip-005-146-197-046.um05.pools.vodafone-ip.de) Inline |
2025-07-17 17:52:31 +0200 | amadaluzia | (~amadaluzi@user/amadaluzia) amadaluzia |
2025-07-17 17:53:57 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
2025-07-17 17:54:50 +0200 | Frostillicus | (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
2025-07-17 17:58:49 +0200 | Sgeo | (~Sgeo@user/sgeo) Sgeo |
2025-07-17 18:04:14 +0200 | caubert | (~caubert@user/caubert) (Ping timeout: 260 seconds) |
2025-07-17 18:08:42 +0200 | euphores | (~SASL_euph@user/euphores) euphores |
2025-07-17 18:09:05 +0200 | chele | (~chele@user/chele) (Remote host closed the connection) |
2025-07-17 18:14:42 +0200 | arthurvl | (~arthurvl@2a02-a469-f5e2-1-83d2-ca43-57a2-dc81.fixed6.kpn.net) earthy |