| 2026-05-20 00:02:53 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:8593:5fde:adde:bbe9) |
| 2026-05-20 00:03:11 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 00:03:24 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:8593:5fde:adde:bbe9) (Client Quit) |
| 2026-05-20 00:10:33 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 00:12:40 +0000 | acidjnk_new3 | (~acidjnk@p200300d6e700e557175153c27e2abf22.dip0.t-ipconnect.de) (Ping timeout: 245 seconds) |
| 2026-05-20 00:15:17 +0000 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 2026-05-20 00:15:18 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-05-20 00:16:51 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 00:21:21 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 246 seconds) |
| 2026-05-20 00:22:21 +0000 | jreicher | (~joelr@user/jreicher) (*.net *.split) |
| 2026-05-20 00:22:21 +0000 | Axman6 | (~Axman6@user/axman6) (*.net *.split) |
| 2026-05-20 00:23:10 +0000 | jreicher | (~joelr@user/jreicher) jreicher |
| 2026-05-20 00:25:03 +0000 | jreicher | (~joelr@user/jreicher) (*.net *.split) |
| 2026-05-20 00:26:32 +0000 | Square2 | (~Square4@user/square) Square |
| 2026-05-20 00:28:29 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 00:30:29 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 00:30:40 +0000 | Typedfern | (~Typedfern@176.red-83-37-46.dynamicip.rima-tde.net) (Server closed connection) |
| 2026-05-20 00:31:04 +0000 | Typedfern | (~Typedfern@176.red-83-37-46.dynamicip.rima-tde.net) typedfern |
| 2026-05-20 00:32:26 +0000 | califax | (~califax@user/califx) (Remote host closed the connection) |
| 2026-05-20 00:32:47 +0000 | layline_ | (~layline@149.154.26.166) layline |
| 2026-05-20 00:33:26 +0000 | califax | (~califax@user/califx) califx |
| 2026-05-20 00:35:12 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 00:38:02 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 265 seconds) |
| 2026-05-20 00:38:30 +0000 | myxos | (~myxos@67-1-178-42.tcso.qwest.net) (Ping timeout: 245 seconds) |
| 2026-05-20 00:39:19 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 252 seconds) |
| 2026-05-20 00:40:55 +0000 | myxos | (~myxos@67-1-178-42.tcso.qwest.net) myxokephale |
| 2026-05-20 00:46:32 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 00:47:43 +0000 | myxos | (~myxos@67-1-178-42.tcso.qwest.net) (Ping timeout: 255 seconds) |
| 2026-05-20 00:49:59 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 00:51:19 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 00:53:50 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 256 seconds) |
| 2026-05-20 00:54:22 +0000 | czan` | (~czan@user/mange) czan |
| 2026-05-20 00:54:28 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 255 seconds) |
| 2026-05-20 00:59:57 +0000 | jreicher | (~joelr@user/jreicher) jreicher |
| 2026-05-20 01:01:32 +0000 | xff0x | (~xff0x@2405:6580:b080:900:8fea:9572:e093:f731) (Ping timeout: 244 seconds) |
| 2026-05-20 01:02:19 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 01:05:56 +0000 | czan | (~czan@user/mange) (Killed (NickServ (GHOST command used by czan`))) |
| 2026-05-20 01:06:10 +0000 | czan` | czan |
| 2026-05-20 01:06:39 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 01:07:04 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 01:16:46 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 01:18:07 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 01:18:55 +0000 | confusedalex | (~confuseda@user/confusedalex) (Ping timeout: 264 seconds) |
| 2026-05-20 01:22:40 +0000 | j0lol | (~j0lol@132.145.17.236) (Ping timeout: 245 seconds) |
| 2026-05-20 01:22:49 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 01:23:17 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 255 seconds) |
| 2026-05-20 01:23:32 +0000 | vgtw | (~vgtw@user/vgtw) (Quit: ZNC - https://znc.in) |
| 2026-05-20 01:23:42 +0000 | xnbya | (~xnbya@2a01:4f8:c17:cbdd::1) (Quit: No Ping reply in 180 seconds.) |
| 2026-05-20 01:24:58 +0000 | xnbya | (~xnbya@2a01:4f8:c17:cbdd::1) |
| 2026-05-20 01:25:10 +0000 | _________ | (~nobody@user/noodly) (Ping timeout: 245 seconds) |
| 2026-05-20 01:25:26 +0000 | Moyst | (~moyst@user/moyst) (Remote host closed the connection) |
| 2026-05-20 01:25:42 +0000 | Moyst | (~moyst@user/moyst) Moyst |
| 2026-05-20 01:26:03 +0000 | _________ | (~nobody@user/noodly) _________ |
| 2026-05-20 01:27:03 +0000 | vgtw | (~vgtw@user/vgtw) vgtw |
| 2026-05-20 01:33:11 +0000 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-05-20 01:33:29 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 01:37:42 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 01:39:29 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:8593:5fde:adde:bbe9) |
| 2026-05-20 01:40:12 +0000 | Inst | (~Inst@user/Inst) Inst |
| 2026-05-20 01:40:45 +0000 | layline_ | layline-away |
| 2026-05-20 01:42:20 +0000 | j0lol | (~j0lol@132.145.17.236) j0lol |
| 2026-05-20 01:44:53 +0000 | layline-away | layline_ |
| 2026-05-20 01:48:51 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 01:52:35 +0000 | confusedalex | (~confuseda@user/confusedalex) confusedalex |
| 2026-05-20 01:53:45 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-05-20 01:58:45 +0000 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 2026-05-20 01:58:45 +0000 | pavonia | (~user@user/siracusa) (Ping timeout: 265 seconds) |
| 2026-05-20 02:01:35 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 02:04:37 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 02:06:38 +0000 | layline_ | layline-away |
| 2026-05-20 02:07:42 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 02:08:59 +0000 | myxos | (~myxos@67-1-178-42.tcso.qwest.net) myxokephale |
| 2026-05-20 02:09:30 +0000 | puke | (~puke@user/puke) (Ping timeout: 246 seconds) |
| 2026-05-20 02:11:16 +0000 | troojg | (~troojg@user/troojg) (Ping timeout: 276 seconds) |
| 2026-05-20 02:13:11 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 02:14:54 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 02:17:43 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 255 seconds) |
| 2026-05-20 02:23:58 +0000 | pavonia | (~user@user/siracusa) siracusa |
| 2026-05-20 02:24:59 +0000 | layline-away | layline_ |
| 2026-05-20 02:25:37 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 245 seconds) |
| 2026-05-20 02:26:10 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 02:26:45 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 02:29:49 +0000 | Guest54 | (~Guest54@2600:1700:4c00:68f0:c786:9a89:b897:4427) |
| 2026-05-20 02:31:02 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 02:41:56 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 02:45:16 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 02:45:19 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 02:46:12 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 02:46:58 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 02:51:42 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 02:52:03 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 02:54:56 +0000 | haritz | (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 2026-05-20 02:55:00 +0000 | Googulator | (~Googulato@94-21-138-77.pool.digikabel.hu) (Quit: Client closed) |
| 2026-05-20 02:55:14 +0000 | Googulator | (~Googulato@94-21-138-77.pool.digikabel.hu) |
| 2026-05-20 02:57:44 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 02:58:11 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 02:58:19 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 02:58:26 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:8593:5fde:adde:bbe9) (Ping timeout: 248 seconds) |
| 2026-05-20 03:00:23 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 03:00:47 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 03:02:43 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 03:05:25 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 03:05:46 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 03:05:53 +0000 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 2026-05-20 03:08:26 +0000 | m | (~travltux@user/travltux) travltux |
| 2026-05-20 03:09:06 +0000 | remexre | (~remexre@user/remexre) (Ping timeout: 248 seconds) |
| 2026-05-20 03:09:16 +0000 | Eoco | (~ian@128.101.131.218) (Ping timeout: 256 seconds) |
| 2026-05-20 03:11:48 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 03:12:49 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 03:13:31 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 03:15:53 +0000 | gehmehgeh | (~user@user/gehmehgeh) gehmehgeh |
| 2026-05-20 03:18:07 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 03:18:29 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 03:18:38 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 03:19:22 +0000 | gmg | (~user@user/gehmehgeh) (Ping timeout: 252 seconds) |
| 2026-05-20 03:24:48 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 03:24:57 +0000 | fgarcia | (~lei@user/fgarcia) (Max SendQ exceeded) |
| 2026-05-20 03:29:17 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 03:32:53 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 03:35:44 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 03:39:38 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 255 seconds) |
| 2026-05-20 03:40:58 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 03:43:43 +0000 | gehmehgeh | gmg |
| 2026-05-20 03:45:14 +0000 | <Guest54> | sup lads |
| 2026-05-20 03:47:21 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 03:52:17 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 04:01:00 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 04:05:56 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 256 seconds) |
| 2026-05-20 04:11:57 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 04:12:19 +0000 | scula | (~scula@user/scula) (Server closed connection) |
| 2026-05-20 04:12:36 +0000 | scula | (~scula@user/scula) scula |
| 2026-05-20 04:16:31 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 04:17:41 +0000 | <sm> | how's it going Guest54 |
| 2026-05-20 04:18:20 +0000 | Square2 | (~Square4@user/square) (Ping timeout: 255 seconds) |
| 2026-05-20 04:22:03 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-05-20 04:24:10 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 04:24:49 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 04:27:01 +0000 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) humasect |
| 2026-05-20 04:28:47 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 04:29:21 +0000 | <Guest54> | Doing great sm. Both the haskell mooc and learn a haskell for a greater good recommended this chat. Not sure if I am supposed to type on here, cuz I see a bunch of people joining but nobody typing lol |
| 2026-05-20 04:33:11 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 04:36:51 +0000 | michalz | (~michalz@185.246.207.203) |
| 2026-05-20 04:39:20 +0000 | mjrosenb | (~mjrosenb@pool-71-190-143-170.nycmny.fios.verizon.net) (Ping timeout: 245 seconds) |
| 2026-05-20 04:40:16 +0000 | tnt1 | (~Thunderbi@user/tnt1) tnt1 |
| 2026-05-20 04:41:52 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 04:42:38 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 04:42:49 +0000 | <jreicher> | We're here just waiting for someone to type. ;) |
| 2026-05-20 04:43:02 +0000 | takuan | (~takuan@d8D86B9E9.access.telenet.be) |
| 2026-05-20 04:44:08 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 04:48:57 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 04:50:12 +0000 | <EvanR> | waits for more typing |
| 2026-05-20 04:50:24 +0000 | <EvanR> | we're dependent [on] typing |
| 2026-05-20 04:51:57 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-05-20 04:57:16 +0000 | Adran | (~adran@botters/adran) (Server closed connection) |
| 2026-05-20 04:58:29 +0000 | Adran | (~adran@botters/adran) Adran |
| 2026-05-20 04:59:55 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 04:59:55 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 05:01:27 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 05:04:41 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 05:08:18 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:39aa:a5b:9720:46b3) |
| 2026-05-20 05:11:32 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 05:12:56 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 05:14:43 +0000 | machinedgod | (~machinedg@d172-219-48-230.abhsia.telus.net) (Ping timeout: 264 seconds) |
| 2026-05-20 05:16:36 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 05:17:01 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 05:19:22 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 05:31:05 +0000 | merijn | (~merijn@62.45.136.136) merijn |
| 2026-05-20 05:32:43 +0000 | Vajb | (~Vajb@n627xuppmk36bl2vbls-1.v6.elisa-mobile.fi) |
| 2026-05-20 05:35:12 +0000 | merijn | (~merijn@62.45.136.136) (Ping timeout: 245 seconds) |
| 2026-05-20 05:35:30 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-05-20 05:45:15 +0000 | layline_ | layline-away |
| 2026-05-20 05:46:24 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 05:51:14 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 2026-05-20 05:55:54 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 05:55:55 +0000 | synchromesh | (~john@2406:5a00:247e:1500:cb6:d4f7:ed0e:5cdb) (Read error: Connection reset by peer) |
| 2026-05-20 05:56:46 +0000 | Inline | (~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) (Quit: KVIrc 5.2.8 Quasar http://www.kvirc.net/) |
| 2026-05-20 05:56:59 +0000 | synchromesh | (~john@2406:5a00:247e:1500:cb6:d4f7:ed0e:5cdb) synchromesh |
| 2026-05-20 06:01:44 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 06:02:02 +0000 | humasect | (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 2026-05-20 06:03:38 +0000 | Inline | (~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) Inline |
| 2026-05-20 06:03:49 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:39aa:a5b:9720:46b3) (Ping timeout: 272 seconds) |
| 2026-05-20 06:04:39 +0000 | dolio | (~dolio@130.44.140.168) (Quit: ZNC 1.10.1 - https://znc.in) |
| 2026-05-20 06:06:27 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 06:13:56 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 06:15:15 +0000 | dolio | (~dolio@130.44.140.168) dolio |
| 2026-05-20 06:18:41 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2026-05-20 06:24:42 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-05-20 06:29:44 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 06:34:22 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 06:38:59 +0000 | czan | (~czan@user/mange) (Quit: Quittin' time!) |
| 2026-05-20 06:41:02 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 06:41:27 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 06:45:32 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 06:46:11 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 252 seconds) |
| 2026-05-20 06:50:12 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 06:55:05 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 06:56:45 +0000 | layline-away | (~layline@149.154.26.166) (Quit: ZZZzzz…) |
| 2026-05-20 07:01:18 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 07:01:38 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 07:02:03 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 07:08:02 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 2026-05-20 07:09:37 +0000 | Sgeo | (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 2026-05-20 07:10:44 +0000 | oats | (~oats@user/oats) (Ping timeout: 245 seconds) |
| 2026-05-20 07:11:14 +0000 | oats | (~oats@user/oats) oats |
| 2026-05-20 07:11:53 +0000 | ft | (~ft@p4fc2aedc.dip0.t-ipconnect.de) (Quit: leaving) |
| 2026-05-20 07:12:50 +0000 | nisstyre | (wes@user/nisstyre) (Ping timeout: 248 seconds) |
| 2026-05-20 07:14:57 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 07:19:41 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 255 seconds) |
| 2026-05-20 07:26:37 +0000 | nisstyre | (wes@user/nisstyre) nisstyre |
| 2026-05-20 07:29:35 +0000 | peterbecich | (~Thunderbi@71.84.33.135) peterbecich |
| 2026-05-20 07:36:44 +0000 | __monty__ | (~toonn@user/toonn) toonn |
| 2026-05-20 07:38:56 +0000 | Pozyomka | (~pyon@user/pyon) (Quit: brb) |
| 2026-05-20 07:41:33 +0000 | Digit | detects some type of puns [ ... or puns of type] |
| 2026-05-20 07:47:21 +0000 | CiaoSen | (~Jura@2a02:3035:be7:9381:10ff:25ff:fe34:6c4a) CiaoSen |
| 2026-05-20 07:47:55 +0000 | Pozyomka | (~pyon@user/pyon) pyon |
| 2026-05-20 07:53:15 +0000 | chele | (~chele@user/chele) chele |
| 2026-05-20 07:57:12 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 07:57:13 +0000 | gehmehgeh | (~user@user/gehmehgeh) gehmehgeh |
| 2026-05-20 07:57:29 +0000 | gmg | (~user@user/gehmehgeh) (Remote host closed the connection) |
| 2026-05-20 07:57:41 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 07:58:40 +0000 | merijn | (~merijn@77.242.116.146) merijn |
| 2026-05-20 08:01:34 +0000 | gehmehgeh | gmg |
| 2026-05-20 08:06:02 +0000 | tnt2 | (~Thunderbi@user/tnt1) tnt1 |
| 2026-05-20 08:06:59 +0000 | szkl | (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 2026-05-20 08:07:03 +0000 | tnt1 | (~Thunderbi@user/tnt1) (Ping timeout: 265 seconds) |
| 2026-05-20 08:07:04 +0000 | tnt2 | tnt1 |
| 2026-05-20 08:10:37 +0000 | emmanuelux | (~em@user/emmanuelux) (Quit: bye) |
| 2026-05-20 08:12:59 +0000 | notzmv | (~umar@user/notzmv) notzmv |
| 2026-05-20 08:13:55 +0000 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 2026-05-20 08:15:17 +0000 | bggd_ | (~bgg@2a01:e0a:fd5:f510:8bd7:8b66:ece0:ae9f) |
| 2026-05-20 08:15:35 +0000 | bggd | (~bgg@user/bggd) (Read error: Connection reset by peer) |
| 2026-05-20 08:21:33 +0000 | FANTOM | (~fantom@212.228.182.72) (Ping timeout: 265 seconds) |
| 2026-05-20 08:21:36 +0000 | CiaoSen | (~Jura@2a02:3035:be7:9381:10ff:25ff:fe34:6c4a) (Quit: CiaoSen) |
| 2026-05-20 08:23:37 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 08:24:02 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 08:26:28 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-05-20 08:27:45 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 08:29:57 +0000 | FANTOM | (~fantom@212.228.182.72) |
| 2026-05-20 08:30:19 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 08:30:44 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 08:33:38 +0000 | peterbecich | (~Thunderbi@71.84.33.135) (Ping timeout: 265 seconds) |
| 2026-05-20 08:44:35 +0000 | divlamir | (~divlamir@user/divlamir) (Read error: Connection reset by peer) |
| 2026-05-20 08:45:13 +0000 | divlamir | (~divlamir@user/divlamir) divlamir |
| 2026-05-20 08:45:20 +0000 | jonnie | (~jonnie@user/jonnie) (Remote host closed the connection) |
| 2026-05-20 08:45:38 +0000 | jonnie | (~jonnie@user/jonnie) jonnie |
| 2026-05-20 08:45:55 +0000 | jonnie | (~jonnie@user/jonnie) (Remote host closed the connection) |
| 2026-05-20 08:46:59 +0000 | wootehfoot | (~wootehfoo@user/wootehfoot) (Ping timeout: 245 seconds) |
| 2026-05-20 08:48:15 +0000 | jonnie | (~jonnie@user/jonnie) jonnie |
| 2026-05-20 08:50:05 +0000 | dhil | (~dhil@5.151.29.138) dhil |
| 2026-05-20 08:50:16 +0000 | Enrico63 | (~Enrico63@85.255.233.164) Enrico63 |
| 2026-05-20 08:54:34 +0000 | CiaoSen | (~Jura@dynamic-046-114-156-027.46.114.pool.telefonica.de) CiaoSen |
| 2026-05-20 08:57:17 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 09:01:34 +0000 | Pozyomka_ | (~pyon@user/pyon) pyon |
| 2026-05-20 09:01:57 +0000 | Pozyomka | (~pyon@user/pyon) (Read error: Connection reset by peer) |
| 2026-05-20 09:05:58 +0000 | <mesaoptimizer> | Is the type of every expression in Haskell determined at compile-time, or have things changed by now |
| 2026-05-20 09:07:17 +0000 | <mesaoptimizer> | for example, if there are LANGUAGE pragmas commonly used that make it so that some expressions only can have a determined type at compile-time, then I'd say that Haskell types aren't a manifest attribute (in the terminology of Christopher Strachey) |
| 2026-05-20 09:08:59 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 09:11:46 +0000 | acidjnk_new3 | (~acidjnk@p200300d6e700e5338caa1342eecc427b.dip0.t-ipconnect.de) acidjnk |
| 2026-05-20 09:13:45 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 265 seconds) |
| 2026-05-20 09:16:16 +0000 | <mesaoptimizer> | next, does anybody actually use the following functions in practice or do they simply exist for pedagogical purposes: lookup, zip, uncurry, curry, min, max, fst, snd |
| 2026-05-20 09:18:07 +0000 | xff0x | (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 245 seconds) |
| 2026-05-20 09:26:56 +0000 | danza | (~danza@user/danza) danza |
| 2026-05-20 09:27:31 +0000 | peterbecich | (~Thunderbi@71.84.33.135) peterbecich |
| 2026-05-20 09:32:07 +0000 | CiaoSen | (~Jura@dynamic-046-114-156-027.46.114.pool.telefonica.de) (Ping timeout: 264 seconds) |
| 2026-05-20 09:37:25 +0000 | <merijn> | zip, min, max, fst, and snd are all used all the time. curry/uncurry less frequently but still a lot |
| 2026-05-20 09:37:53 +0000 | <merijn> | If you're using lookup you should probably be using lookup of a different datatype |
| 2026-05-20 09:39:36 +0000 | <merijn> | mesaoptimizer: As a type theory pedantist it's impossible for "type of every expression is determined at compile time", because the entire definition of types is that they're static derived properties of source code, meaning that they're static derivability at compile time is a hard required of types |
| 2026-05-20 09:40:13 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 09:40:32 +0000 | <merijn> | mesaoptimizer: As opposed to what the dynamic languages have popularized as "types", which is merely a runtime tag indicated what kind of data a value has |
| 2026-05-20 09:43:57 +0000 | Guest54 | (~Guest54@2600:1700:4c00:68f0:c786:9a89:b897:4427) (Ping timeout: 245 seconds) |
| 2026-05-20 09:44:02 +0000 | peterbecich | (~Thunderbi@71.84.33.135) (Quit: peterbecich) |
| 2026-05-20 09:44:20 +0000 | peterbecich | (~Thunderbi@71.84.33.135) peterbecich |
| 2026-05-20 09:44:47 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 09:48:32 +0000 | peterbecich | (~Thunderbi@71.84.33.135) (Ping timeout: 245 seconds) |
| 2026-05-20 10:02:49 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 10:06:00 +0000 | tremon | (~tremon@83.80.159.219) tremon |
| 2026-05-20 10:06:02 +0000 | <mesaoptimizer> | merijn: I agree with that sentiment, but I still am unsure as to whether this holds for Haskell or not |
| 2026-05-20 10:07:00 +0000 | Pixi` | (~Pixi@user/pixi) Pixi |
| 2026-05-20 10:07:28 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 256 seconds) |
| 2026-05-20 10:08:10 +0000 | yin_ | (~zero@user/zero) zero |
| 2026-05-20 10:08:22 +0000 | yin | (~zero@user/zero) (Ping timeout: 265 seconds) |
| 2026-05-20 10:08:47 +0000 | yin_ | yin |
| 2026-05-20 10:08:55 +0000 | Pixi | (~Pixi@user/pixi) (Ping timeout: 272 seconds) |
| 2026-05-20 10:16:34 +0000 | fun-safe-math | (~fun-safe-@97-120-35-225.ptld.qwest.net) (Server closed connection) |
| 2026-05-20 10:16:50 +0000 | fun-safe-math | (~fun-safe-@97-120-35-225.ptld.qwest.net) fun-safe-math |
| 2026-05-20 10:25:47 +0000 | <dutchie> | Haskell types don't even exist at runtime, do they? |
| 2026-05-20 10:25:53 +0000 | <dutchie> | it's all just passing around instance dictionaries at most |
| 2026-05-20 10:29:56 +0000 | bggd_ | (~bgg@2a01:e0a:fd5:f510:8bd7:8b66:ece0:ae9f) (Remote host closed the connection) |
| 2026-05-20 10:36:20 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 10:38:48 +0000 | Square2 | (~Square4@user/square) Square |
| 2026-05-20 10:39:51 +0000 | wickedjargon | (~user@64.114.24.74) wickedjargon |
| 2026-05-20 10:40:37 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 10:54:29 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 10:58:57 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 11:01:53 +0000 | fun-safe-math | (~fun-safe-@97-120-35-225.ptld.qwest.net) () |
| 2026-05-20 11:04:02 +0000 | fun-safe-math | (~fun-safe-@97-120-35-225.ptld.qwest.net) fun-safe-math |
| 2026-05-20 11:04:32 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 11:05:10 +0000 | danza | (~danza@user/danza) (Remote host closed the connection) |
| 2026-05-20 11:09:01 +0000 | <gentauro> | dutchie: they are. How would you handle the cases for sum types (tagged unions) otherwise? |
| 2026-05-20 11:09:52 +0000 | <gentauro> | however, the `newtype` "wrapper" gets abstracted away (less memory usage per element) |
| 2026-05-20 11:09:53 +0000 | wickedjargon | (~user@64.114.24.74) (Read error: Connection reset by peer) |
| 2026-05-20 11:10:06 +0000 | wickedjargon | (~user@64.114.24.74) wickedjargon |
| 2026-05-20 11:10:25 +0000 | <dutchie> | hmm. my interpretation was that e.g. Bool doesn't exist, but True and False do |
| 2026-05-20 11:10:59 +0000 | <dutchie> | and then the compiler has proven that a value can only be True or False so it knows all cases are covered |
| 2026-05-20 11:13:43 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 11:17:53 +0000 | <dutchie> | https://paste.tomsmeding.com/vXIxg2HR |
| 2026-05-20 11:22:07 +0000 | <ski> | mesaoptimizer : yes (upto things like polymorphism / existentials. that does not mean they're really determined (as in actually found out) at run-time, though) |
| 2026-05-20 11:24:35 +0000 | <ski> | e.g. in `map :: (a -> b) -> [a] -> [b]', it is not determined what type the individual input elements (nor the results of calling the callback) "really" has, at compile-time, in the sense that the input elements are determined to have type `a' (and the callback results to have type `b'), but these are abstract/opaque/hidden/forgotten/skolem, only a placeholder name for whichever type the actual elements (and |
| 2026-05-20 11:24:41 +0000 | <ski> | callback results) will have, in a particular call to `map' |
| 2026-05-20 11:26:02 +0000 | <ski> | still, they *are* assigned this abstract type (and the input list to have the partially abstract type `[a]'), which is their compile-time type, it's just that it omits some information (generalizes over it, in order to be able to call `map' from different contexts, with different types) |
| 2026-05-20 11:27:15 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 11:27:26 +0000 | <mesaoptimizer> | that's a very lucid answer (given my current understanding of things), thanks |
| 2026-05-20 11:27:28 +0000 | <ski> | (of course, you could, if you wanted to, imagine an analysis which tracked each call, to figure out the actual concrete types, and perhaps specialize the code for `map' wrt that. however, this can't be done, in general, in Haskell, due to "polymorphic recursion", and also (if you enable that extensions) existentials) |
| 2026-05-20 11:27:41 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 11:27:48 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 11:28:08 +0000 | <ski> | still, do note that the type of the elements, `a', is not really found out at run-time, either. or, at least, there are implementations that allow this |
| 2026-05-20 11:28:39 +0000 | <mesaoptimizer> | implementations of Haskell? |
| 2026-05-20 11:28:46 +0000 | <mesaoptimizer> | or of type inference? |
| 2026-05-20 11:29:47 +0000 | <ski> | you *could* have an implementation which passes around information about which actual types are used, when calling polymorphic operations. one use of this would be to perhaps use custom data formats (e.g. not all having the same size) for different data types. so e.g. the data format of `[Char]' could be different from the one of `[Double]', and the code at run-time could use the "type infos" to determine |
| 2026-05-20 11:29:53 +0000 | <ski> | how large the items in the list are |
| 2026-05-20 11:29:59 +0000 | <ski> | yes, of Haskell |
| 2026-05-20 11:30:10 +0000 | <ski> | or, it could be used for a more accurate GC |
| 2026-05-20 11:30:49 +0000 | <ski> | (not needing to have a general data format that the GC can understand, but so it can look up the data format of the items it encounters) |
| 2026-05-20 11:31:12 +0000 | <mesaoptimizer> | I see |
| 2026-05-20 11:31:21 +0000 | <ski> | e.g. the logic/functional programming language Mercury *does* pass around type infos, at run-time, to polymorphic operations, in this fashion |
| 2026-05-20 11:31:22 +0000 | nhar | (~noah@76.33.110.8) (*.net *.split) |
| 2026-05-20 11:31:22 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (*.net *.split) |
| 2026-05-20 11:31:22 +0000 | fgarcia | (~lei@user/fgarcia) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | weary-traveler | (~user@user/user363627) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | merijn | (~merijn@77.242.116.146) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | chele | (~chele@user/chele) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | dolio | (~dolio@130.44.140.168) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | synchromesh | (~john@2406:5a00:247e:1500:cb6:d4f7:ed0e:5cdb) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | myxos | (~myxos@67-1-178-42.tcso.qwest.net) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | confusedalex | (~confuseda@user/confusedalex) (*.net *.split) |
| 2026-05-20 11:31:23 +0000 | Moyst | (~moyst@user/moyst) (*.net *.split) |
| 2026-05-20 11:31:38 +0000 | merijn | (~merijn@77.242.116.146) merijn |
| 2026-05-20 11:31:47 +0000 | synchromesh | (~john@2406:5a00:247e:1500:cb6:d4f7:ed0e:5cdb) synchromesh |
| 2026-05-20 11:31:48 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 11:31:52 +0000 | fgarcia | (~lei@user/fgarcia) fgarcia |
| 2026-05-20 11:32:04 +0000 | myxos | (~myxos@67-1-178-42.tcso.qwest.net) myxokephale |
| 2026-05-20 11:32:42 +0000 | weary-traveler | (~user@user/user363627) (Remote host closed the connection) |
| 2026-05-20 11:33:24 +0000 | <ski> | btw, polymorphic recursion is when a polymorphic operation is recursive, and at least some recursive invokation does *not* use the same unknown type variables as the current call |
| 2026-05-20 11:33:56 +0000 | <ski> | here's a simple (and a bit silly) example of a polymorhic recursive function |
| 2026-05-20 11:34:28 +0000 | <ski> | nestedShows :: Show a => [a] -> [String] |
| 2026-05-20 11:34:37 +0000 | <ski> | nestedShows [ ] = [] |
| 2026-05-20 11:34:56 +0000 | <ski> | nestedShows (x:xs) = show x : nestedShows (map (: []) xs) |
| 2026-05-20 11:35:22 +0000 | <ski> | note that `xs' has type `[a]', but in the recursive call, `map (: []) xs)' has type `[[a]]' |
| 2026-05-20 11:35:54 +0000 | <ski> | so, if in the top call, `a' will be `Integer', then in the recursive call, `a' will next be `[Integer]', then `[[Integer]]', and so on |
| 2026-05-20 11:36:37 +0000 | Moyst | (~moyst@user/moyst) Moyst |
| 2026-05-20 11:36:39 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 11:36:44 +0000 | <ski> | and, in this case, because we have a type class constraint, that means that when this is at run-time given an instance method dictionary for `Show Integer', it will then hand off (provide) a dictionary for `Show [Integer]' to the recursive call |
| 2026-05-20 11:36:57 +0000 | <ski> | iow, it must create a new dictionary, at run-time |
| 2026-05-20 11:37:54 +0000 | <ski> | most more reasonable examples of polymorphic recursion involve "non-regular (recursive) data types", being data types whose recursion does not pass the same type parameters, e.g. |
| 2026-05-20 11:38:03 +0000 | <mauke> | > let { foo :: Show a => Int -> a -> String; foo n x | n > 0 = foo (n - 1) (x, x) | otherwise = show x } in foo 2 9 |
| 2026-05-20 11:38:04 +0000 | <lambdabot> | "((9,9),(9,9))" |
| 2026-05-20 11:38:19 +0000 | dolio | (~dolio@130.44.140.168) dolio |
| 2026-05-20 11:38:22 +0000 | <mauke> | > let { foo :: Show a => Int -> a -> String; foo n x | n > 0 = foo (n - 1) (x, x) | otherwise = show x } in foo 3 9 |
| 2026-05-20 11:38:23 +0000 | <lambdabot> | "(((9,9),(9,9)),((9,9),(9,9)))" |
| 2026-05-20 11:38:47 +0000 | <ski> | data SwapList a b = Nil | Cons a (SwapList b a) -- `a' and `b' are swapped around, so it's not the same parameter pattern |
| 2026-05-20 11:39:26 +0000 | <ski> | data PerfectlyBalancedBinaryTree a = Leaves a | Double (PerfectlyBalancedBinaryTree (a,a)) -- here we pass `(a,a)' in place of `a' |
| 2026-05-20 11:39:54 +0000 | <ski> | most interesting functions (iow recursive) on these, will need to be polymorphic recursive |
| 2026-05-20 11:40:49 +0000 | confusedalex | (~confuseda@user/confusedalex) confusedalex |
| 2026-05-20 11:40:54 +0000 | <ski> | otoh, `map' from above is *monomorphic* recursive (even though it's a polymorphic function), because, *within* the body of `map', we can think of it as being monomorphic, in the unknown types `a' and `b', recursive call calling on those *same* unknown types |
| 2026-05-20 11:42:27 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 11:42:51 +0000 | <mauke> | you can tell map uses monomorphic recursion because it can be implemented in C++ templates :-) |
| 2026-05-20 11:42:52 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 11:43:17 +0000 | fgarcia | (~lei@user/fgarcia) (Ping timeout: 272 seconds) |
| 2026-05-20 11:46:35 +0000 | <ski> | (in System F, when invoking a polymorphic operation, you are explicitly applying it to the types to use in place of the type parameters, in Haskell (with extensions) you can write this as e.g. `map @Int @Bool (> 4) [2,3,5,7]'. for monomorphic recursion, you can imagine `map' being defined as `map @a @b f = loop where loop :: [a] -> [b]; loop [ ] = []; loop (x:xs) = f x : loop xs', where you do *not* need |
| 2026-05-20 11:46:41 +0000 | <ski> | to pass around the (unchanging) type parameters `a' and `b' (so `loop' is monomorphic .. i also factored out the unchanging `f' while i was at it), while for the `nestedShows' you'd have something like `nestedShows @a @{show_a} (x:xs) = show @a @{show_a} : nestedShows @[a] @{mkShowList show_a} (...)') |
| 2026-05-20 11:49:00 +0000 | <ski> | (btw, it *is* also possible, in some ways, to learn more about the type, namely when using GADTs. doing a `case'-`of' analysis may then, in each appropriate branch, provide more information (at compilte-time) about abstract type parameters like `a' and `b') |
| 2026-05-20 11:49:02 +0000 | weary-traveler | (~user@user/user363627) user363627 |
| 2026-05-20 11:51:47 +0000 | aka_dude | (~aka_dude@192.71.166.120) |
| 2026-05-20 11:55:28 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 11:59:32 +0000 | Pozyomka_ | (~pyon@user/pyon) (Quit: WeeChat 4.9.0) |
| 2026-05-20 11:59:51 +0000 | Pozyomka | (~pyon@user/pyon) pyon |
| 2026-05-20 12:00:02 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 255 seconds) |
| 2026-05-20 12:32:03 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 12:35:12 +0000 | Deltaspace | (~Deltaspac@user/Deltaspace) (Remote host closed the connection) |
| 2026-05-20 12:35:34 +0000 | Deltaspace | (~Deltaspac@178.252.83.109) |
| 2026-05-20 12:36:19 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) bitdex |
| 2026-05-20 12:36:25 +0000 | bitdex | (~bitdex@gateway/tor-sasl/bitdex) (Client Quit) |
| 2026-05-20 12:37:00 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 268 seconds) |
| 2026-05-20 12:42:49 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 272 seconds) |
| 2026-05-20 12:50:49 +0000 | Deltaspace | (~Deltaspac@178.252.83.109) (Read error: Connection reset by peer) |
| 2026-05-20 12:51:11 +0000 | Deltaspace | (~Deltaspac@178.252.83.109) |
| 2026-05-20 12:51:16 +0000 | Deltaspace | (~Deltaspac@178.252.83.109) (Read error: Connection reset by peer) |
| 2026-05-20 12:51:38 +0000 | Deltaspace | (~Deltaspac@178.252.83.109) |
| 2026-05-20 12:53:09 +0000 | comerijn | (~merijn@77.242.116.146) merijn |
| 2026-05-20 12:55:50 +0000 | merijn | (~merijn@77.242.116.146) (Ping timeout: 255 seconds) |
| 2026-05-20 13:00:46 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 13:05:06 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 13:09:29 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 13:22:06 +0000 | spew | (~spew@user/spew) spew |
| 2026-05-20 13:23:38 +0000 | sus03228 | (zero@user/zeromomentum) (Quit: the lounge - https://webirc.envs.net) |
| 2026-05-20 13:24:48 +0000 | sus03228 | (zero@user/zeromomentum) zeromomentum |
| 2026-05-20 13:27:58 +0000 | sus03228 | (zero@user/zeromomentum) (Client Quit) |
| 2026-05-20 13:28:40 +0000 | spew | (~spew@user/spew) (Ping timeout: 255 seconds) |
| 2026-05-20 13:29:07 +0000 | sus03228 | (zero@user/zeromomentum) zeromomentum |
| 2026-05-20 13:29:52 +0000 | <dutchie> | https://byorgey.wordpress.com/2019/02/16/worstsort/ my favourite example of polymorphic recursion |
| 2026-05-20 13:32:16 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 255 seconds) |
| 2026-05-20 13:38:04 +0000 | tomku | (~tomku@user/tomku) (Server closed connection) |
| 2026-05-20 13:38:19 +0000 | tomku | (~tomku@user/tomku) tomku |
| 2026-05-20 13:38:53 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 13:39:47 +0000 | <ski> | nice one |
| 2026-05-20 13:39:57 +0000 | spew | (~spew@user/spew) spew |
| 2026-05-20 13:44:41 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 248 seconds) |
| 2026-05-20 13:53:21 +0000 | xff0x | (~xff0x@2405:6580:b080:900:d2e4:87e2:8bc2:4906) |
| 2026-05-20 13:54:50 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 13:55:15 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 13:56:47 +0000 | puke | (~puke@user/puke) (Read error: error:0A000139:SSL routines::record layer failure) |
| 2026-05-20 13:57:04 +0000 | puke | (~puke@user/puke) puke |
| 2026-05-20 14:05:04 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Excess Flood) |
| 2026-05-20 14:08:41 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
| 2026-05-20 14:09:31 +0000 | Inline | (~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) (Quit: KVIrc 5.2.8 Quasar http://www.kvirc.net/) |
| 2026-05-20 14:13:45 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 14:18:59 +0000 | spew | (~spew@user/spew) (Read error: Connection reset by peer) |
| 2026-05-20 14:19:54 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 245 seconds) |
| 2026-05-20 14:31:09 +0000 | mjrosenb | (~mjrosenb@pool-71-183-227-194.nycmny.fios.verizon.net) |
| 2026-05-20 14:31:17 +0000 | Pozyomka | (~pyon@user/pyon) (Quit: brb) |
| 2026-05-20 14:35:23 +0000 | haritz | (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) |
| 2026-05-20 14:35:23 +0000 | haritz | (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host) |
| 2026-05-20 14:35:23 +0000 | haritz | (~hrtz@user/haritz) haritz |
| 2026-05-20 14:35:45 +0000 | wickedjargon | (~user@64.114.24.74) (Remote host closed the connection) |
| 2026-05-20 14:39:43 +0000 | Yumemi | (~Yumemi@chamoin.net) (Quit: .) |
| 2026-05-20 14:41:32 +0000 | Yumemi | (~Yumemi@chamoin.net) Yumemi |
| 2026-05-20 14:51:08 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 14:51:17 +0000 | Pozyomka | (~pyon@user/pyon) pyon |
| 2026-05-20 14:54:23 +0000 | Pozyomka | (~pyon@user/pyon) (Client Quit) |
| 2026-05-20 14:55:52 +0000 | Pozyomka | (~pyon@user/pyon) pyon |
| 2026-05-20 14:55:57 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 265 seconds) |
| 2026-05-20 14:57:52 +0000 | machinedgod | (~machinedg@d172-219-48-230.abhsia.telus.net) machinedgod |
| 2026-05-20 15:00:47 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 15:05:37 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 265 seconds) |
| 2026-05-20 15:08:24 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 15:08:28 +0000 | Enrico63 | (~Enrico63@85.255.233.164) (Quit: Client closed) |
| 2026-05-20 15:17:40 +0000 | pavonia | (~user@user/siracusa) (Quit: Bye!) |
| 2026-05-20 15:26:51 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 272 seconds) |
| 2026-05-20 15:31:09 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 15:37:40 +0000 | ft | (~ft@p4fc2aedc.dip0.t-ipconnect.de) ft |
| 2026-05-20 15:39:40 +0000 | synchromesh | (~john@2406:5a00:247e:1500:cb6:d4f7:ed0e:5cdb) (Read error: Connection reset by peer) |
| 2026-05-20 15:40:12 +0000 | synchromesh | (~john@2406:5a00:247e:1500:70df:5a2a:dd3a:dd1a) synchromesh |
| 2026-05-20 15:46:37 +0000 | Inline | (~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) Inline |
| 2026-05-20 15:48:11 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 255 seconds) |
| 2026-05-20 15:50:16 +0000 | comerijn | (~merijn@77.242.116.146) (Ping timeout: 276 seconds) |
| 2026-05-20 15:54:10 +0000 | rainbyte | (~rainbyte@181.47.219.3) (Read error: Connection reset by peer) |
| 2026-05-20 15:57:15 +0000 | rainbyte | (~rainbyte@181.47.219.3) rainbyte |
| 2026-05-20 15:57:28 +0000 | Inline | (~noOne@ipservice-092-208-182-236.092.208.pools.vodafone-ip.de) (No boundaries on the net!) |
| 2026-05-20 16:00:08 +0000 | layline_ | (~layline@149.154.26.166) layline |
| 2026-05-20 16:02:47 +0000 | tzh | (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 2026-05-20 16:08:45 +0000 | m | (~travltux@user/travltux) (Quit: WeeChat 4.7.2) |
| 2026-05-20 16:09:01 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 16:10:22 +0000 | m | (~travltux@user/travltux) travltux |
| 2026-05-20 16:10:51 +0000 | euphores | (~SASL_euph@user/euphores) (Quit: Leaving.) |
| 2026-05-20 16:11:03 +0000 | poscat0x04 | (~poscat@user/poscat) poscat |
| 2026-05-20 16:12:18 +0000 | poscat | (~poscat@user/poscat) (Ping timeout: 246 seconds) |
| 2026-05-20 16:19:52 +0000 | Pixi` | Pixi |
| 2026-05-20 16:21:34 +0000 | euphores | (~SASL_euph@user/euphores) euphores |
| 2026-05-20 16:26:26 +0000 | nhar | (~noah@76.33.110.8) (Ping timeout: 252 seconds) |
| 2026-05-20 16:30:05 +0000 | nhar | (~noah@76.33.110.8) |
| 2026-05-20 16:37:21 +0000 | jreicher | (~joelr@user/jreicher) (Read error: Connection reset by peer) |
| 2026-05-20 16:37:29 +0000 | Square2 | (~Square4@user/square) (Ping timeout: 248 seconds) |
| 2026-05-20 16:38:10 +0000 | jreicher | (~joelr@user/jreicher) jreicher |
| 2026-05-20 16:38:50 +0000 | Googulator | (~Googulato@94-21-138-77.pool.digikabel.hu) (Quit: Client closed) |
| 2026-05-20 16:39:05 +0000 | Googulator | (~Googulato@94-21-138-77.pool.digikabel.hu) |
| 2026-05-20 16:39:09 +0000 | Square2 | (~Square4@user/square) Square |
| 2026-05-20 16:39:29 +0000 | wootehfoot | (~wootehfoo@user/wootehfoot) wootehfoot |
| 2026-05-20 16:42:00 +0000 | <nhar> | |
| 2026-05-20 16:42:21 +0000 | layline_ | layline-away |
| 2026-05-20 16:42:36 +0000 | layline-away | (~layline@149.154.26.166) (Quit: ZZZzzz…) |
| 2026-05-20 16:43:34 +0000 | layline_ | (~layline@149.154.26.166) layline |
| 2026-05-20 16:43:45 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 16:44:02 +0000 | nhar | (~noah@76.33.110.8) (Quit: Lost terminal) |
| 2026-05-20 16:45:50 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
| 2026-05-20 16:46:25 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
| 2026-05-20 16:47:36 +0000 | tnt1 | (~Thunderbi@user/tnt1) (Ping timeout: 265 seconds) |
| 2026-05-20 16:48:39 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 245 seconds) |
| 2026-05-20 16:49:01 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Excess Flood) |
| 2026-05-20 16:59:33 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 17:00:28 +0000 | emilym | (~Thunderbi@user/emilym) emilym |
| 2026-05-20 17:03:34 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:2359:bd0d:70dc:9384) |
| 2026-05-20 17:04:39 +0000 | ricardomaps | (~ricardoma@2804:14d:a040:81ea:2359:bd0d:70dc:9384) (Client Quit) |
| 2026-05-20 17:05:01 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
| 2026-05-20 17:05:40 +0000 | emilym | (~Thunderbi@user/emilym) (Ping timeout: 276 seconds) |
| 2026-05-20 17:10:42 +0000 | bggd | (~bgg@user/bggd) bggd |
| 2026-05-20 17:12:08 +0000 | layline__ | (~layline@149.154.26.47) layline |
| 2026-05-20 17:12:46 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
| 2026-05-20 17:15:02 +0000 | layline_ | (~layline@149.154.26.166) (Ping timeout: 255 seconds) |
| 2026-05-20 17:15:21 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 17:18:55 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) |
| 2026-05-20 17:22:31 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 264 seconds) |
| 2026-05-20 17:31:35 +0000 | Pozyomka | (~pyon@user/pyon) (Quit: brb) |
| 2026-05-20 17:33:24 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 17:38:32 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-05-20 17:42:42 +0000 | Lord_of_Life | (~Lord@user/lord-of-life/x-2819915) Lord_of_Life |
| 2026-05-20 17:45:44 +0000 | wootehfoot | (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 2026-05-20 17:46:29 +0000 | Pozyomka | (~pyon@user/pyon) pyon |
| 2026-05-20 17:46:53 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 17:48:43 +0000 | vanishingideal | (~vanishing@user/vanishingideal) vanishingideal |
| 2026-05-20 17:51:41 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 2026-05-20 17:56:40 +0000 | __monty__ | (~toonn@user/toonn) (Ping timeout: 256 seconds) |
| 2026-05-20 18:00:55 +0000 | dhil | (~dhil@5.151.29.138) (Ping timeout: 264 seconds) |
| 2026-05-20 18:02:38 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 18:03:52 +0000 | Garbanzo | (~Garbanzo@2602:304:6eac:dc10::49) (Remote host closed the connection) |
| 2026-05-20 18:07:38 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 2026-05-20 18:10:35 +0000 | <monochrom> | Haha worstsort is funny. |
| 2026-05-20 18:13:01 +0000 | pierluc-codes34 | (~pierlucco@modemcable092.154-83-70.mc.videotron.ca) |
| 2026-05-20 18:18:25 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) merijn |
| 2026-05-20 18:23:18 +0000 | merijn | (~merijn@host-cl.cgnat-g.v4.dfn.nl) (Ping timeout: 256 seconds) |
| 2026-05-20 18:32:53 +0000 | vanishingideal | (~vanishing@user/vanishingideal) (Ping timeout: 255 seconds) |