Logs on 2024-10-17 (liberachat/#haskell)
| 00:00:48 | × | troojg quits (~troojg@user/troojg) (Ping timeout: 276 seconds) |
| 00:02:09 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 00:04:43 | × | notzmv quits (~daniel@user/notzmv) (Remote host closed the connection) |
| 00:07:03 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 00:13:19 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 00:17:56 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 00:23:09 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 00:24:09 | → | peterbecich joins (~Thunderbi@47.149.198.150) |
| 00:26:20 | × | xff0x quits (~xff0x@2405:6580:b080:900:7493:5a1e:80a9:6822) (Ping timeout: 272 seconds) |
| 00:35:05 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 00:35:15 | × | peterbecich quits (~Thunderbi@47.149.198.150) (Ping timeout: 252 seconds) |
| 00:39:24 | → | Sgeo_ joins (~Sgeo@user/sgeo) |
| 00:39:36 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 00:39:43 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 00:39:54 | → | Pixi` joins (~Pixi@user/pixi) |
| 00:42:29 | → | Pixi__ joins (~Pixi@user/pixi) |
| 00:43:02 | × | Pixi quits (~Pixi@user/pixi) (Ping timeout: 252 seconds) |
| 00:45:15 | × | identity quits (~identity@user/ZharMeny) (Quit: ERC 5.6.0.30.1 (IRC client for GNU Emacs 30.0.91)) |
| 00:45:58 | × | Pixi` quits (~Pixi@user/pixi) (Ping timeout: 252 seconds) |
| 00:50:28 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 00:57:15 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 01:08:12 | × | mulk quits (~mulk@pd9514da8.dip0.t-ipconnect.de) (Ping timeout: 265 seconds) |
| 01:08:29 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 01:13:18 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 01:19:39 | → | xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 01:24:16 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 01:28:50 | → | troojg joins (~troojg@user/troojg) |
| 01:29:40 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
| 01:38:57 | × | Smiles quits (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 01:40:04 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 01:42:05 | × | TonyStone quits (~TonyStone@user/TonyStone) (Remote host closed the connection) |
| 01:44:58 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 01:45:28 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 01:47:18 | → | raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 01:51:13 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 01:55:14 | × | spew quits (~spew@155.133.15.218) (Quit: good night) |
| 02:02:06 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 02:07:00 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 02:09:01 | → | mulk joins (~mulk@p5b11246b.dip0.t-ipconnect.de) |
| 02:13:39 | → | machinedgod joins (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 02:17:53 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 02:22:48 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 02:28:59 | × | dolio quits (~dolio@130.44.140.168) (Quit: ZNC 1.8.2 - https://znc.in) |
| 02:29:01 | × | Katarushisu quits (~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) (Read error: Connection reset by peer) |
| 02:31:12 | → | Katarushisu joins (~Katarushi@finc-20-b2-v4wan-169598-cust1799.vm7.cable.virginm.net) |
| 02:32:28 | → | dolio joins (~dolio@130.44.140.168) |
| 02:32:51 | × | dolio quits (~dolio@130.44.140.168) (Client Quit) |
| 02:33:39 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 02:36:13 | → | dolio joins (~dolio@130.44.140.168) |
| 02:40:23 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 02:44:37 | × | troojg quits (~troojg@user/troojg) (Ping timeout: 248 seconds) |
| 02:47:20 | × | td_ quits (~td@i53870917.versanet.de) (Ping timeout: 252 seconds) |
| 02:48:25 | → | pavonia joins (~user@user/siracusa) |
| 02:49:06 | → | td_ joins (~td@i53870903.versanet.de) |
| 02:51:44 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 02:55:08 | → | peterbecich joins (~Thunderbi@47.149.198.150) |
| 02:56:57 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
| 03:07:33 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 03:11:53 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 03:16:18 | × | peterbecich quits (~Thunderbi@47.149.198.150) (Ping timeout: 252 seconds) |
| 03:22:55 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 03:26:07 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 03:27:04 | × | blase quits (~wanted@2.219.56.221) (Ping timeout: 260 seconds) |
| 03:28:14 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 03:33:06 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 03:37:22 | → | hgolden_ joins (~hgolden@23.162.40.28) |
| 03:37:53 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 03:40:08 | × | hgolden__ quits (~hgolden@169.150.203.10) (Ping timeout: 272 seconds) |
| 03:48:01 | × | machinedgod quits (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 248 seconds) |
| 03:48:52 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 03:54:51 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 04:01:11 | → | peterbecich joins (~Thunderbi@47.149.198.150) |
| 04:05:43 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 04:10:51 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 04:20:34 | × | benjaminl quits (~benjaminl@user/benjaminl) (Ping timeout: 248 seconds) |
| 04:21:51 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 04:23:44 | → | benjaminl joins (~benjaminl@user/benjaminl) |
| 04:28:31 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 04:36:05 | × | k_hachig quits (~k_hachig@2607:fea8:351d:ef0:30e5:9ca8:23a3:ae14) (Quit: WeeChat 4.4.2) |
| 04:38:49 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 260 seconds) |
| 04:39:55 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 04:40:21 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 04:40:30 | → | airscape joins (~airscape@2.219.56.221) |
| 04:43:34 | × | raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds) |
| 04:44:33 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 04:47:38 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 265 seconds) |
| 04:48:24 | × | alp quits (~alp@2001:861:e3d6:8f80:cfc1:c60c:c177:1e26) (Ping timeout: 246 seconds) |
| 04:54:31 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 04:55:42 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 05:00:26 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 05:05:25 | × | xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds) |
| 05:06:34 | nitrix | is now known as nitrix-or-treat |
| 05:07:31 | → | xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 05:11:29 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 05:16:13 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 05:20:24 | → | michalz joins (~michalz@185.246.207.200) |
| 05:23:02 | → | alp joins (~alp@2001:861:e3d6:8f80:c1d0:38:3b03:da86) |
| 05:25:04 | → | peterbecich1 joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 05:26:12 | × | peterbecich quits (~Thunderbi@47.149.198.150) (Ping timeout: 252 seconds) |
| 05:26:13 | peterbecich1 | is now known as peterbecich |
| 05:26:59 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Client Quit) |
| 05:27:26 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 05:27:36 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 05:30:06 | × | Sgeo_ quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 05:32:15 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 05:33:09 | × | alp quits (~alp@2001:861:e3d6:8f80:c1d0:38:3b03:da86) (Ping timeout: 248 seconds) |
| 05:34:04 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 05:38:51 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 05:38:53 | → | alp joins (~alp@2001:861:e3d6:8f80:689:f2c1:b3cb:79a1) |
| 05:47:29 | × | euphores quits (~SASL_euph@user/euphores) (Quit: Leaving.) |
| 05:49:18 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
| 05:49:51 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 05:50:45 | × | emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: au revoir) |
| 05:54:03 | → | euphores joins (~SASL_euph@user/euphores) |
| 05:54:49 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 06:01:03 | nitrix-or-treat | is now known as nitrix |
| 06:07:28 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 06:14:09 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 06:20:23 | → | acidjnk_new3 joins (~acidjnk@p200300d6e72cfb92ed462acf7e3ada6e.dip0.t-ipconnect.de) |
| 06:25:30 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 06:25:51 | → | ubert joins (~Thunderbi@178.165.179.94.wireless.dyn.drei.com) |
| 06:29:12 | × | synchromesh quits (~john@2406:5a00:2497:300:3d3b:a134:d9b5:8c99) (Read error: Connection reset by peer) |
| 06:30:24 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 06:30:28 | → | synchromesh joins (~john@2406:5a00:2497:300:1d96:ce41:a836:f7ae) |
| 06:35:05 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 06:40:33 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
| 06:47:28 | Pixi__ | is now known as Pixi |
| 06:48:32 | × | ft quits (~ft@p4fc2a216.dip0.t-ipconnect.de) (Quit: leaving) |
| 06:50:51 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 06:52:56 | → | ash3en joins (~Thunderbi@31.16.203.214) |
| 06:54:40 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:55:51 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 06:56:10 | × | echoreply quits (~echoreply@45.32.163.16) (Quit: WeeChat 2.8) |
| 06:57:05 | → | echoreply joins (~echoreply@45.32.163.16) |
| 06:59:24 | × | Square quits (~Square4@user/square) (Ping timeout: 276 seconds) |
| 07:00:02 | × | caconym quits (~caconym@user/caconym) (Quit: bye) |
| 07:00:41 | → | caconym joins (~caconym@user/caconym) |
| 07:04:44 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 07:06:13 | → | jinsun joins (~jinsun@user/jinsun) |
| 07:06:14 | × | euleritian quits (~euleritia@84.19.220.82) (Read error: Connection reset by peer) |
| 07:06:45 | → | euleritian joins (~euleritia@84.19.220.82) |
| 07:07:01 | × | ash3en quits (~Thunderbi@31.16.203.214) (Quit: ash3en) |
| 07:07:19 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 07:19:04 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 244 seconds) |
| 07:19:56 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 07:36:36 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 07:37:19 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 264 seconds) |
| 07:37:53 | × | koz quits (~koz@121.99.240.58) (Ping timeout: 248 seconds) |
| 07:37:59 | Lord_of_Life_ | is now known as Lord_of_Life |
| 07:38:40 | → | koz joins (~koz@121.99.240.58) |
| 07:44:59 | × | m1dnight quits (~christoph@d8D861908.access.telenet.be) (Ping timeout: 255 seconds) |
| 07:49:09 | × | jcarpenter2 quits (~lol@2603:3016:1e01:b9e0:dd36:cbb0:bd68:c718) (Ping timeout: 248 seconds) |
| 08:05:23 | → | hgolden__ joins (~hgolden@static-198-44-129-115.cust.tzulo.com) |
| 08:06:02 | → | machinedgod joins (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 08:08:18 | × | hgolden_ quits (~hgolden@23.162.40.28) (Ping timeout: 276 seconds) |
| 08:21:24 | × | weary-traveler quits (~user@user/user363627) (Remote host closed the connection) |
| 08:29:23 | → | m1dnight joins (~christoph@d8D861908.access.telenet.be) |
| 08:41:51 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 08:42:15 | × | xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 244 seconds) |
| 08:44:13 | → | xff0x joins (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) |
| 08:47:48 | → | kuribas joins (~user@ip-188-118-57-242.reverse.destiny.be) |
| 08:49:14 | × | acidjnk_new3 quits (~acidjnk@p200300d6e72cfb92ed462acf7e3ada6e.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 08:58:18 | → | acidjnk_new3 joins (~acidjnk@p200300d6e72cfb92ed462acf7e3ada6e.dip0.t-ipconnect.de) |
| 09:02:29 | × | airscape quits (~airscape@2.219.56.221) (Ping timeout: 260 seconds) |
| 09:11:21 | → | airscape joins (~airscape@2.219.56.221) |
| 09:11:27 | × | euleritian quits (~euleritia@84.19.220.82) (Read error: Connection reset by peer) |
| 09:12:11 | → | euleritian joins (~euleritia@84.19.220.82) |
| 09:12:42 | → | lxsameer joins (~lxsameer@Serene/lxsameer) |
| 09:16:00 | × | euleritian quits (~euleritia@84.19.220.82) (Remote host closed the connection) |
| 09:16:13 | → | euleritian joins (~euleritia@84.19.220.82) |
| 09:16:17 | × | euleritian quits (~euleritia@84.19.220.82) (Read error: Connection reset by peer) |
| 09:16:40 | → | euleritian joins (~euleritia@84.19.220.82) |
| 09:18:54 | → | rosco joins (~rosco@175.136.23.238) |
| 09:20:21 | → | ash3en joins (~Thunderbi@2a01:780:8000:115:27a0:cdec:aee3:14b8) |
| 09:20:45 | × | euleritian quits (~euleritia@84.19.220.82) (Remote host closed the connection) |
| 09:21:07 | × | ash3en quits (~Thunderbi@2a01:780:8000:115:27a0:cdec:aee3:14b8) (Client Quit) |
| 09:28:32 | → | Digitteknohippie joins (~user@user/digit) |
| 09:28:54 | × | Digit quits (~user@user/digit) (Ping timeout: 260 seconds) |
| 09:29:17 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2) |
| 09:30:43 | → | euleritian joins (~euleritia@84.19.220.82) |
| 09:30:56 | × | rosco quits (~rosco@175.136.23.238) (Quit: Lost terminal) |
| 09:32:43 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 09:36:03 | → | Smiles joins (uid551636@id-551636.lymington.irccloud.com) |
| 09:36:11 | × | tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 09:42:18 | → | mari-estel joins (~mari-este@user/mari-estel) |
| 09:44:41 | × | euleritian quits (~euleritia@84.19.220.82) (Ping timeout: 255 seconds) |
| 09:44:56 | → | euleritian joins (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) |
| 09:51:59 | → | SlackCoder joins (~SlackCode@64-94-63-8.ip.weststar.net.ky) |
| 09:56:48 | Digitteknohippie | is now known as Digit |
| 09:59:13 | × | xff0x quits (~xff0x@fsb6a9491c.tkyc517.ap.nuro.jp) (Ping timeout: 248 seconds) |
| 10:00:49 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 10:01:24 | × | CrunchyFlakes quits (~CrunchyFl@31.19.233.78) (Ping timeout: 260 seconds) |
| 10:02:08 | → | CrunchyFlakes joins (~CrunchyFl@ip1f13e94e.dynamic.kabel-deutschland.de) |
| 10:17:28 | → | chele joins (~chele@user/chele) |
| 10:26:57 | × | rembo10 quits (~rembo10@main.remulis.com) (Quit: ZNC 1.8.2 - https://znc.in) |
| 10:28:27 | → | rembo10 joins (~rembo10@main.remulis.com) |
| 10:31:56 | × | malte quits (~malte@mal.tc) (Remote host closed the connection) |
| 10:34:56 | → | malte joins (~malte@mal.tc) |
| 10:38:02 | × | synchromesh quits (~john@2406:5a00:2497:300:1d96:ce41:a836:f7ae) (Read error: Connection reset by peer) |
| 10:39:03 | → | synchromesh joins (~john@2406:5a00:2497:300:1d96:ce41:a836:f7ae) |
| 10:50:03 | → | raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 10:52:43 | <kuribas> | Are python iterators an example of lazyness? |
| 10:53:09 | × | euleritian quits (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) (Ping timeout: 252 seconds) |
| 10:53:14 | <kuribas> | The are evaluated on demand, but do not memoize the results. |
| 10:53:36 | → | __monty__ joins (~toonn@user/toonn) |
| 10:55:39 | <darkling> | Yes. |
| 10:56:36 | <darkling> | I once wrote a program that used iterators/generators throughout. It ran but did nothing. Eventually, I realised that it wasn't actually consuming the final iterator, so no computation was being done because nothing was consuming the pipeline of lazy evaluation. |
| 10:59:08 | <mari-estel> | that is python generators, iterators are just iterators |
| 11:00:04 | × | caconym quits (~caconym@user/caconym) (Quit: bye) |
| 11:01:03 | → | euleritian joins (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) |
| 11:02:35 | → | caconym joins (~caconym@user/caconym) |
| 11:03:55 | × | cyphase quits (~cyphase@user/cyphase) (Read error: Connection reset by peer) |
| 11:05:01 | → | cyphase joins (~cyphase@user/cyphase) |
| 11:05:57 | × | lxsameer quits (~lxsameer@Serene/lxsameer) (Ping timeout: 248 seconds) |
| 11:09:48 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
| 11:09:56 | × | SlackCoder quits (~SlackCode@64-94-63-8.ip.weststar.net.ky) (Quit: Leaving) |
| 11:12:01 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 11:13:02 | × | acidjnk_new3 quits (~acidjnk@p200300d6e72cfb92ed462acf7e3ada6e.dip0.t-ipconnect.de) (Remote host closed the connection) |
| 11:13:15 | → | acidjnk_new3 joins (~acidjnk@p200300d6e72cfb92ed462acf7e3ada6e.dip0.t-ipconnect.de) |
| 11:14:40 | → | xff0x joins (~xff0x@2405:6580:b080:900:8b57:d075:1efa:336f) |
| 11:18:39 | × | mari-estel quits (~mari-este@user/mari-estel) (Ping timeout: 265 seconds) |
| 11:20:24 | → | mari-estel joins (~mari-este@user/mari-estel) |
| 11:35:06 | <kuribas> | Generators are also iterators. |
| 11:38:17 | × | mari-estel quits (~mari-este@user/mari-estel) (Read error: Connection reset by peer) |
| 11:39:47 | <kuribas> | What python calls caching is IMO usually just lazyness. |
| 11:40:23 | <kuribas> | I feel lazy decorators are used way to often in Python. |
| 11:42:53 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 11:49:25 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 11:50:11 | → | ash3en joins (~Thunderbi@149.222.128.226) |
| 11:58:10 | × | ash3en quits (~Thunderbi@149.222.128.226) (Quit: ash3en) |
| 12:01:16 | → | Digitteknohippie joins (~user@user/digit) |
| 12:01:22 | × | Digit quits (~user@user/digit) (Ping timeout: 252 seconds) |
| 12:05:56 | → | ash3en joins (~Thunderbi@149.222.128.226) |
| 12:11:25 | Digitteknohippie | is now known as Digit |
| 12:14:24 | × | rvalue quits (~rvalue@user/rvalue) (Read error: Connection reset by peer) |
| 12:14:56 | → | rvalue joins (~rvalue@user/rvalue) |
| 12:34:23 | → | mari-estel joins (~mari-este@user/mari-estel) |
| 12:36:53 | ← | rvalue parts (~rvalue@user/rvalue) () |
| 12:42:08 | <raehik> | I have a strange case where writing a via instance as an orphan works fine, but writing it together with the data type definition requires UndecidableInstances! Is this expected? The class includes a type family, and the via wrapper does a type family application in there (which is what fail swithout UndecidableInstances) |
| 12:42:59 | <raehik> | is this just an interesting detail for orphan instances? the more I think about it the more fine it seems |
| 12:44:45 | × | alp quits (~alp@2001:861:e3d6:8f80:689:f2c1:b3cb:79a1) (Ping timeout: 246 seconds) |
| 12:48:11 | → | rvalue joins (~rvalue@user/rvalue) |
| 12:52:04 | <[exa]> | raehik: just to be sure, you mean "standalone" instd. of "orphan" instances? |
| 12:54:13 | <[exa]> | anyway I had a similar feeling that the standalone ones are somewhat stronger in what they can do but never really cared to disprove it, so might be the case |
| 12:54:41 | × | qaotsap quits (~paotsaq@127.209.37.188.rev.vodafone.pt) (Ping timeout: 248 seconds) |
| 12:55:25 | <raehik> | [exa]: No, I mean an orphan instance. Using standalone deriving |
| 12:55:32 | → | paotsaq joins (~paotsaq@127.209.37.188.rev.vodafone.pt) |
| 12:55:57 | × | mari-estel quits (~mari-este@user/mari-estel) (Ping timeout: 246 seconds) |
| 12:56:07 | <raehik> | In my head, it happens because the type family application can get reduced in the orphan instance case |
| 12:56:54 | <[exa]> | ah soooo, so it's in a different module where it knows how to reduce the type family? |
| 12:57:16 | <raehik> | Yeah. The type family is stored elsewhere in both cases. But I feel like this must be an orphan thing |
| 12:57:56 | → | weary-traveler joins (~user@user/user363627) |
| 12:58:04 | <tomsmeding> | are there more type family equations in scope in the module where you have the orphan instance? |
| 12:58:29 | <tomsmeding> | are you sure you don't accidentally have -XUndecidableInstances |
| 12:58:35 | <tomsmeding> | in the file with the orphan? |
| 12:58:48 | <tomsmeding> | or perhaps have it listed in 'default-extensions:' in the .cabal file |
| 12:59:04 | <[exa]> | ^ this |
| 12:59:27 | <[exa]> | if you can rule out all of this, stuff is certainly weird. |
| 13:02:06 | → | identity joins (~identity@user/ZharMeny) |
| 13:04:30 | <raehik> | I don't have UndecidableInstances in the orphan case, neither default |
| 13:07:26 | <shryke> | Hi! A question about Hakyll - I have a CodeBlock, and I'd like to dump the contents to a temporary file, run several external programs on that copiler, and then inline the final artifact. I can't use the 'unixFilter' because these external compilers can only generate files on a disk, don't dump it to stdout. |
| 13:08:10 | <raehik> | tomsmeding: and I've tried importing more types in the orphan module (which I'm assuming would increase the number of type family eqs?), but it doesn't change it |
| 13:08:36 | <tomsmeding> | raehik: have you tried importing more type family equations in the module where the _non_-orphan instance would be placed? |
| 13:08:59 | <tomsmeding> | I'm not sure how it works but [exa] seems to imply that having more type family equations in scope might make GHC more accepting of the instance |
| 13:10:41 | <[exa]> | shryke: as an absolutely unixiest workaround, you might wrap the compiler in something like `sh -c "cat > file && compile file -o file.out && cat file.out"` |
| 13:10:42 | <raehik> | Huh. I've replicated (as close as I think matters) the non-orphan instance in the other place. It still doesn't work |
| 13:11:04 | <raehik> | For context, I need UndecidableInstances for the module where the type family is defined in the same package |
| 13:11:05 | <shryke> | What would be the best approach here? I have a hack-ish solution (entirely outside of the hakyll's lifecycle) with 'System.IO.Temp.writeTempFile' and invoking a 'make' with an outside Makefile |
| 13:11:26 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 13:11:32 | <raehik> | the other case (the original orphan) is a separate package depending on the former |
| 13:12:39 | <[exa]> | tomsmeding: I can't see any other reason that would differentiate the orphan from the inplace definition than having more rules (either instances or solver rules) available |
| 13:13:43 | <shryke> | [exa]: yep, I used a similar approach =) |
| 13:14:22 | <[exa]> | shryke: in extreme you can make a small executable that does just that, so that you don't have to do the shellanigans in hakyll source |
| 13:15:25 | <shryke> | [exa]: I am totally stealing the word 'shellaligans' |
| 13:15:48 | <shryke> | *shellanigans |
| 13:17:55 | <raehik> | [exa]: it seems to consistently happen when defining an orphan instance on a type not defined in the same package! :) |
| 13:18:28 | <raehik> | my intuition is that it's not too weird, because GHC has to do a mountain of work to support orphan instances. I'm not surprised if somewhere along the way it manages to figure out more about my type family |
| 13:18:33 | <[exa]> | (shryke: lol this happens when I have too much coffee and my hands go feral on typing themselves) |
| 13:19:32 | <[exa]> | raehik: ok that sounds consistent with the missing info |
| 13:19:59 | <raehik> | in conclusion, I expect to require UndecidableInstances for a given via derivation but when writing an orphan for a non-package type, I can omit it |
| 13:21:25 | <[exa]> | wasn't there some other extension that was less brutal then Undecidable on this, and just deferred the resolution a bit? |
| 13:21:52 | <[exa]> | (^ a complete guess though, I vaguely recall seeing something similar in the last haskell survey :D :D ) |
| 13:21:53 | <raehik> | is there? I'd love to hear it |
| 13:22:11 | × | ash3en quits (~Thunderbi@149.222.128.226) (Quit: ash3en) |
| 13:22:15 | <raehik> | I don't mind UndecidableInstances at all, but I'm not at the level of putting it on default extensions yet :D |
| 13:23:56 | → | rosco joins (~rosco@175.136.23.238) |
| 13:24:45 | <merijn> | I mean, UndecidableInstances is relatively benign |
| 13:24:58 | × | euleritian quits (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) (Ping timeout: 252 seconds) |
| 13:25:37 | <merijn> | shryke: As a better work around than shryke's example is this fun trick, on most unices you can pass `/dev/stdout` as filename to get the process to output to stdour |
| 13:26:55 | <merijn> | (although whether that works tends to depend on whether the program seeks on the file or just writes it in one go) |
| 13:32:24 | × | turlando quits (~turlando@user/turlando) (Ping timeout: 252 seconds) |
| 13:34:34 | → | lxsameer joins (~lxsameer@Serene/lxsameer) |
| 13:34:39 | → | murgeljm joins (~murgeljm@APN-122-12-44-gprs.simobil.net) |
| 13:34:49 | <lxsameer> | hey folks, any recommendation on a library to create web apis? |
| 13:36:06 | → | turlando joins (~turlando@user/turlando) |
| 13:38:05 | <Rembane> | lxsameer: If you really like types Servant is the library for you! |
| 13:38:49 | <lxsameer> | Rembane: thank you |
| 13:42:59 | × | murgeljm quits (~murgeljm@APN-122-12-44-gprs.simobil.net) (Read error: Connection reset by peer) |
| 13:43:27 | <Rembane> | lxsameer: np! |
| 13:43:49 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 13:53:12 | × | turlando quits (~turlando@user/turlando) (Ping timeout: 272 seconds) |
| 13:53:21 | → | jcarpenter2 joins (~lol@96.78.87.197) |
| 13:53:56 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 13:58:20 | × | raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds) |
| 14:01:27 | <shryke> | merijn: I am on windows, so that trick would not work; on top of that, if a copiler produces auxiliary artefacts (e.g. pdflatex), that would not work even on *nix |
| 14:03:33 | <shryke> | well, pdflatex is very capricious in what it accepts as a parameter; among other things, the path to the file is not really a platform's standard filepath, rather a what pdflatex thinks what should be a filepath. |
| 14:15:09 | × | Smiles quits (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 14:15:55 | → | Digitteknohippie joins (~user@user/digit) |
| 14:16:39 | × | Digit quits (~user@user/digit) (Ping timeout: 252 seconds) |
| 14:17:04 | → | srazkvt joins (~sarah@user/srazkvt) |
| 14:21:49 | → | euleritian joins (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) |
| 14:23:07 | Digitteknohippie | is now known as Digit |
| 14:25:58 | <merijn> | shryke: oh, oof |
| 14:26:29 | → | raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 14:26:35 | <merijn> | shryke: tbh, if you're using pdflatex I would probably move that generation outside of Hakyll (like a makefile) and then call Hakyll from that makefile when the PDF is done |
| 14:27:34 | → | rekahsoft joins (~rekahsoft@76.69.85.220) |
| 14:28:27 | <shryke> | merijn: I have to do that the other way around - the contents processed by pdflatex are extracted dynamically by hakyll and then fed to external makefile receipe |
| 14:29:18 | <merijn> | Well, in that case I recommend having a good cry and finding a decent whisky to drown your sorrows :D |
| 14:32:46 | <shryke> | I am more of a red wine guy, but the idea remains the same |
| 14:35:36 | → | mari-estel joins (~mari-este@user/mari-estel) |
| 14:36:32 | × | JuanDaugherty quits (~juan@user/JuanDaugherty) (Quit: JuanDaugherty) |
| 14:41:35 | × | raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds) |
| 14:43:31 | → | ash3en joins (~Thunderbi@193.32.248.167) |
| 14:47:27 | × | synchromesh quits (~john@2406:5a00:2497:300:1d96:ce41:a836:f7ae) (Read error: Connection reset by peer) |
| 14:48:38 | → | synchromesh joins (~john@2406:5a00:2497:300:1d96:ce41:a836:f7ae) |
| 14:49:06 | → | Smiles joins (uid551636@id-551636.lymington.irccloud.com) |
| 14:50:01 | × | ash3en quits (~Thunderbi@193.32.248.167) (Quit: ash3en) |
| 14:50:31 | → | echog joins (~echog@dyn146073.shef.ac.uk) |
| 14:55:19 | × | echog quits (~echog@dyn146073.shef.ac.uk) (Ping timeout: 264 seconds) |
| 14:56:29 | → | echog joins (~echog@dyn146073.shef.ac.uk) |
| 15:00:01 | × | mari-estel quits (~mari-este@user/mari-estel) (Remote host closed the connection) |
| 15:01:12 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.2.2) |
| 15:09:14 | × | echog quits (~echog@dyn146073.shef.ac.uk) (Quit: Leaving) |
| 15:11:03 | × | hiecaq`` quits (~hiecaq`@user/hiecaq) (Quit: ERC 5.5.0.29.1 (IRC client for GNU Emacs 29.4)) |
| 15:16:12 | → | raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 15:16:15 | → | spew joins (~spew@155.133.15.29) |
| 15:19:09 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 15:28:59 | → | alp joins (~alp@2001:861:e3d6:8f80:553e:4712:5919:60eb) |
| 15:29:33 | × | spew quits (~spew@155.133.15.29) (Ping timeout: 245 seconds) |
| 15:31:27 | → | spew joins (~spew@201.141.99.170) |
| 15:37:19 | → | Square joins (~Square@user/square) |
| 15:42:32 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 15:43:30 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 15:50:07 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 15:50:32 | × | Digit quits (~user@user/digit) (Ping timeout: 255 seconds) |
| 15:53:45 | × | spew quits (~spew@201.141.99.170) (Ping timeout: 246 seconds) |
| 15:54:10 | → | gmg joins (~user@user/gehmehgeh) |
| 15:55:46 | → | spew joins (~spew@155.133.15.235) |
| 16:00:28 | → | Digit joins (~user@user/digit) |
| 16:03:39 | × | machinedgod quits (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 16:18:15 | × | alp quits (~alp@2001:861:e3d6:8f80:553e:4712:5919:60eb) (Ping timeout: 246 seconds) |
| 16:22:02 | × | kuribas quits (~user@ip-188-118-57-242.reverse.destiny.be) (Quit: ERC (IRC client for Emacs 27.1)) |
| 16:41:31 | × | AlexNoo_ quits (~AlexNoo@178.34.151.233) (Ping timeout: 265 seconds) |
| 16:41:40 | × | AlexZenon quits (~alzenon@178.34.151.233) (Ping timeout: 272 seconds) |
| 16:50:30 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 16:52:13 | → | alp joins (~alp@2001:861:e3d6:8f80:34e0:ead3:355f:5f57) |
| 16:52:20 | → | morb joins (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 16:52:28 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 16:57:24 | × | morb quits (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 276 seconds) |
| 17:01:24 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 17:08:46 | → | tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 17:10:37 | → | ft joins (~ft@p4fc2a216.dip0.t-ipconnect.de) |
| 17:12:51 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 17:14:33 | × | euleritian quits (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) (Ping timeout: 245 seconds) |
| 17:15:57 | × | ubert quits (~Thunderbi@178.165.179.94.wireless.dyn.drei.com) (Read error: Connection reset by peer) |
| 17:16:37 | → | ubert joins (~Thunderbi@178.165.179.94.wireless.dyn.drei.com) |
| 17:16:37 | × | ubert quits (~Thunderbi@178.165.179.94.wireless.dyn.drei.com) (Client Quit) |
| 17:16:54 | → | ubert joins (~Thunderbi@178.165.179.94.wireless.dyn.drei.com) |
| 17:17:03 | × | srazkvt quits (~sarah@user/srazkvt) (Ping timeout: 245 seconds) |
| 17:19:37 | × | mreh quits (~matthew@host86-128-2-51.range86-128.btcentralplus.com) (Ping timeout: 252 seconds) |
| 17:20:39 | → | AlexNoo joins (~AlexNoo@178.34.151.233) |
| 17:20:59 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Ping timeout: 244 seconds) |
| 17:21:50 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 17:22:45 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 17:24:20 | → | AlexZenon joins (~alzenon@178.34.151.233) |
| 17:30:48 | → | SlackCoder joins (~SlackCode@64-94-63-8.ip.weststar.net.ky) |
| 17:33:17 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 17:33:23 | × | raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 244 seconds) |
| 17:44:14 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 17:50:27 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:52:02 | × | AlexZenon quits (~alzenon@178.34.151.233) (Ping timeout: 255 seconds) |
| 17:52:21 | → | hgolden_ joins (~hgolden@23.162.40.28) |
| 17:52:58 | → | roconnor joins (~quassel@coq/roconnor) |
| 17:53:31 | <roconnor> | what would be a good way of incorporating example executables in a haskell project (via cabal)? |
| 17:54:44 | × | hgolden__ quits (~hgolden@static-198-44-129-115.cust.tzulo.com) (Ping timeout: 255 seconds) |
| 17:55:33 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 17:55:46 | <tomsmeding> | roconnor: have you considered making them `test-suite`s? |
| 17:55:52 | → | mreh joins (~matthew@host86-128-2-51.range86-128.btcentralplus.com) |
| 17:56:27 | → | Guest15 joins (~Guest15@pool-108-14-78-154.nycmny.fios.verizon.net) |
| 17:56:31 | → | AlexZenon joins (~alzenon@178.34.151.233) |
| 17:56:37 | <tomsmeding> | then they won't get built if someone depends on your package (assuming it's a library), but if you clone the repository (or use `cabal get` to get a bundle from hackage) you can choose to build them manually with `cabal run <test suite name>` |
| 17:56:39 | <roconnor> | The thought did occur to me. Although the example program I have in mind is interactive. Maybe that would still work. |
| 17:56:48 | <tomsmeding> | `cabal test` is a monstrosity that I never use |
| 17:56:53 | <tomsmeding> | `cabal run` works perfectly on test-suites |
| 17:57:00 | <roconnor> | ah |
| 17:57:14 | × | Guest15 quits (~Guest15@pool-108-14-78-154.nycmny.fios.verizon.net) (Client Quit) |
| 17:57:19 | <roconnor> | yeah, having it not built by default is a key consideration for the example programs. |
| 17:57:30 | <geekosaur> | cabal flags, then? |
| 17:57:48 | <roconnor> | I mean, maybe a testsuite would work well. |
| 17:58:04 | <tomsmeding> | I don't think normal executable components in a package get built if someone depends on the package as a library |
| 17:58:17 | <tomsmeding> | if you package has a 'cabal-version:' header that is not ancient |
| 17:58:40 | <tomsmeding> | that would be worth trying though, before committing to that approach |
| 18:00:24 | <geekosaur> | they do if it uses a build mechanism other thsan Simple |
| 18:00:33 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 18:00:35 | <tomsmeding> | ah |
| 18:01:06 | <tomsmeding> | roconnor: so if you don't have a Custom build type, normal executable could work too |
| 18:01:15 | <tomsmeding> | *executableS |
| 18:01:26 | <roconnor> | hmmm |
| 18:01:53 | <roconnor> | okay. |
| 18:03:10 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:07:21 | <bwe> | How can I catch an rephrase constraint failing to solve? |
| 18:08:00 | <tomsmeding> | bwe: are you looking for this perhaps? https://hackage.haskell.org/package/base-4.20.0.1/docs/GHC-TypeError.html |
| 18:11:19 | <Lears> | Or https://hackage.haskell.org/package/base-4.20.0.1/docs/GHC-TypeError.html#t:Unsatisfiable |
| 18:11:35 | <Lears> | (in particular) |
| 18:20:09 | × | lxsameer quits (~lxsameer@Serene/lxsameer) (Ping timeout: 260 seconds) |
| 18:28:15 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 18:28:17 | → | euleritian joins (~euleritia@dynamic-176-000-163-135.176.0.pool.telefonica.de) |
| 18:29:27 | <dmj`> | would be interesting to see how much of hackage compiled with "default ()" |
| 18:31:33 | <dmj`> | an NoMonomorphism restriction enabled |
| 18:35:20 | × | tomsmeding quits (~tomsmedin@2a01:4f8:c0c:5e5e::2) (Quit: ZNC 1.9.1 - https://znc.in) |
| 18:35:56 | → | tomsmeding joins (~tomsmedin@2a01:4f8:c0c:5e5e::2) |
| 18:37:35 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 18:43:38 | → | Digitteknohippie joins (~user@user/digit) |
| 18:44:55 | → | ircbrowse_tom joins (~ircbrowse@user/tomsmeding/bot/ircbrowse-tom) |
| 18:44:57 | Server | sets mode +Cnt |
| 18:46:11 | × | bsima quits (~bsima@2604:a880:400:d0::19f1:7001) (Quit: ZNC 1.8.2 - https://znc.in) |
| 18:46:34 | → | bsima joins (~bsima@143.198.118.179) |
| 18:46:40 | <bwe> | tomsmeding: I'd like to rewrite this error message into some more meaningful: https://paste.tomsmeding.com/MfhzcN17 |
| 18:48:57 | <tomsmeding> | bwe: you can't just rewrite arbitrary error messages |
| 18:49:32 | <tomsmeding> | and in any case, this looks like a typical effect system constraint error that a user of an effect system will be well used to |
| 18:50:30 | × | yahb2 quits (~yahb2@user/tomsmeding/bot/yahb2) (Remote host closed the connection) |
| 18:51:26 | → | yahb2 joins (~yahb2@user/tomsmeding/bot/yahb2) |
| 18:51:26 | ChanServ | sets mode +v yahb2 |
| 18:53:11 | × | weary-traveler quits (~user@user/user363627) (Remote host closed the connection) |
| 18:54:09 | × | alp quits (~alp@2001:861:e3d6:8f80:34e0:ead3:355f:5f57) (Ping timeout: 252 seconds) |
| 18:55:08 | <bwe> | tomsmeding: so I can't catch and rephrase this kind of error, right? and the effect system does not give me any means, too? |
| 18:57:29 | <tomsmeding> | you can't _catch_ type errors generally, no |
| 18:57:50 | <tomsmeding> | you can generate your own, and if you do that in clever locations you can sometimes be faster than the generated error |
| 18:58:02 | <tomsmeding> | s/the generated error/the error that ghc would produce/ |
| 18:58:23 | <bwe> | so is that one reason why Haskell being blamed for having bad error messages? |
| 18:58:25 | → | Square2 joins (~Square4@user/square) |
| 18:58:39 | <tomsmeding> | no language that I know allows you to _catch_ type errors |
| 18:59:21 | <tomsmeding> | a type error is a type error, that means that something went wrong |
| 18:59:46 | <tomsmeding> | you can sometimes program what the types should be, but in the end it all goes through the type checker, and if the checker finds an inconsistency, that's it |
| 18:59:54 | Digitteknohippie | is now known as Digit |
| 19:00:03 | × | caconym quits (~caconym@user/caconym) (Quit: bye) |
| 19:00:39 | → | caconym joins (~caconym@user/caconym) |
| 19:00:42 | <tomsmeding> | constraint errors like these are imperfect mostly because the effect system is written _inside_ the language, not built into the compiler |
| 19:01:00 | × | Square quits (~Square@user/square) (Ping timeout: 246 seconds) |
| 19:01:02 | <tomsmeding> | so GHC knows nothing about stuff like (:>), it just knows generally about type classes and type families and can reason about them |
| 19:01:35 | <tomsmeding> | now, the effect system could have defined (:>) so that it throws a custom type error if the given effect is not found in the list |
| 19:01:50 | <tomsmeding> | but if it didn't do that, then there's nothing much you can do to fix that |
| 19:02:10 | <tomsmeding> | except write your own copy of (:>) that does so (probably using Unsatisfiable that Lears linked) |
| 19:02:51 | <tomsmeding> | and then still you aren't _catching_ this type error, you're taking over what GHC would otherwise do for you, and raising your own type errors if things go wrong |
| 19:05:09 | × | Smiles quits (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 19:05:56 | → | visilii_ joins (~visilii@46.61.242.137) |
| 19:06:08 | <bwe> | tomsmeding: puh, that sounds too complicated to me, frankly, yet the desire to simplify the error messages remains :( |
| 19:07:05 | <tomsmeding> | bwe: turns out `effectful` actually did what I just described: https://hackage.haskell.org/package/effectful-core-2.4.0.0/docs/Effectful.html#t::-62- |
| 19:07:35 | <tomsmeding> | if you try to resolve `e :> []` then you get a "nice" error message written by `effectful` |
| 19:07:58 | <tomsmeding> | but that's not what is happening here: GHC just has `es`, and for all it knows, `Handler Result` might be in `es`! |
| 19:08:01 | <tomsmeding> | or it might not |
| 19:08:16 | <tomsmeding> | so "The `Hyperbole` effect is not in the effects list" would be wrong here, because it might be |
| 19:08:22 | → | hgolden__ joins (~hgolden@169.150.203.10) |
| 19:08:50 | <tomsmeding> | so GHC never reaches the human-written error message, and gives up early with an unresolved constraint |
| 19:09:24 | × | visilii quits (~visilii@46.61.242.109) (Ping timeout: 246 seconds) |
| 19:09:26 | <tomsmeding> | er, s/Hyperbole/Handler Result/ there |
| 19:09:35 | <tomsmeding> | Hyperbole is the thing that _is_ in the effects list |
| 19:11:04 | × | hgolden_ quits (~hgolden@23.162.40.28) (Ping timeout: 260 seconds) |
| 19:11:41 | <dolio> | What would the 'nice' error be? |
| 19:11:48 | <dolio> | Most of that 'bad' error is context. |
| 19:12:22 | → | Guest623 joins (~Guest623@122-151-33-65.sta.wbroadband.net.au) |
| 19:12:52 | → | alp joins (~alp@2001:861:e3d6:8f80:892c:a656:e37a:e5b6) |
| 19:12:59 | <dolio> | It's like 3 lines of error and 20 lines of surrounding context. |
| 19:14:13 | × | rosco quits (~rosco@175.136.23.238) (Quit: Lost terminal) |
| 19:15:07 | × | Guest623 quits (~Guest623@122-151-33-65.sta.wbroadband.net.au) (Client Quit) |
| 19:18:06 | × | alp quits (~alp@2001:861:e3d6:8f80:892c:a656:e37a:e5b6) (Ping timeout: 272 seconds) |
| 19:18:12 | <bwe> | dolio: "You missed to use handlers in the function body that you specified in the type signature." |
| 19:19:02 | <tomsmeding> | (I would rather reword that as "You used the 'Handler Result' effect in your function body, but forgot to declare it in the type signature.") |
| 19:19:19 | <tomsmeding> | but that comes back to my initial reaction: that's what this error _means_ |
| 19:19:33 | <tomsmeding> | anyone who has worked with an effect system in haskell for a while will recognise this particular error |
| 19:23:54 | <bwe> | so, in a nutshell, for a non-user of an effect system: can I utilise the effect system to the extent to rewrite the error message? sorry, if I may ask the same thing again in different words… |
| 19:24:08 | → | acidjnk_new joins (~acidjnk@p200300d6e72cfb921c1d480c698edc2c.dip0.t-ipconnect.de) |
| 19:27:09 | × | acidjnk_new3 quits (~acidjnk@p200300d6e72cfb92ed462acf7e3ada6e.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 19:31:34 | <tomsmeding> | bwe: I'm not sure what you mean with "for a non-user of an effect system" |
| 19:31:42 | <tomsmeding> | it looks like you _are_ a user of the effect system :) |
| 19:32:02 | <bwe> | tomsmeding: using only a library that uses an effect system, but haven't used one myself :) |
| 19:32:12 | <tomsmeding> | I see :) |
| 19:32:17 | <monochrom> | Haskell is not an effect language, so its error messages will not talk about effects. |
| 19:32:25 | <tomsmeding> | ^ |
| 19:32:30 | <tomsmeding> | (as I've said before) |
| 19:32:35 | <tomsmeding> | so no, you can't rewrite that error message |
| 19:33:04 | <tomsmeding> | if the effects come just from a library that you are using, though, you could try to encapsulate that within your library so that your users don't see the effect system at all |
| 19:33:10 | <monochrom> | Haskell is only a lambda calculus with bells and whistles, so its error messages can only talk about "this argument has the wrong type" or "this function application looks wrong". |
| 19:33:12 | <tomsmeding> | but that means ensuring that your types contain no (:>) etc |
| 19:37:39 | → | alp joins (~alp@2001:861:e3d6:8f80:c611:3442:c342:856d) |
| 19:47:13 | → | rdcdr_ joins (~rdcdr@75-172-14-224.tukw.qwest.net) |
| 19:48:05 | × | rdcdr quits (~rdcdr@user/rdcdr) (Ping timeout: 248 seconds) |
| 19:48:53 | × | michalz quits (~michalz@185.246.207.200) (Remote host closed the connection) |
| 19:57:45 | <bwe> | tomsmeding + monochrom: thanks |
| 19:59:56 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 20:00:40 | <mauke> | > ' |
| 20:00:42 | <lambdabot> | <hint>:1:2: error: |
| 20:00:42 | <lambdabot> | lexical error in string/character literal at end of input |
| 20:08:02 | → | machinedgod joins (~machinedg@d50-99-47-73.abhsia.telus.net) |
| 20:12:28 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 245 seconds) |
| 20:14:48 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 20:23:20 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
| 20:23:35 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 20:28:28 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 20:32:11 | → | Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
| 20:33:47 | → | raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 20:35:56 | → | Everything joins (~Everythin@46.211.102.45) |
| 20:37:57 | × | raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 246 seconds) |
| 20:39:23 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 20:43:07 | × | manwithluck quits (manwithluc@gateway/vpn/protonvpn/manwithluck) (Ping timeout: 252 seconds) |
| 20:43:47 | → | manwithluck joins (manwithluc@gateway/vpn/protonvpn/manwithluck) |
| 20:44:58 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 20:46:13 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 248 seconds) |
| 20:51:20 | × | connrs quits (~connrs@user/connrs) (Quit: ZNC 1.9.1 - https://znc.in) |
| 20:57:26 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 20:59:19 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 21:01:01 | × | synchromesh quits (~john@2406:5a00:2497:300:1d96:ce41:a836:f7ae) (Read error: Connection reset by peer) |
| 21:02:13 | → | synchromesh joins (~john@2406:5a00:2497:300:e0d5:e11:3d9d:e9de) |
| 21:02:36 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 272 seconds) |
| 21:10:23 | × | Everything quits (~Everythin@46.211.102.45) (Ping timeout: 245 seconds) |
| 21:13:13 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 21:14:20 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 21:18:03 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 276 seconds) |
| 21:28:42 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 21:30:22 | → | emmanuelux joins (~emmanuelu@user/emmanuelux) |
| 21:33:38 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 21:36:13 | → | weary-traveler joins (~user@user/user363627) |
| 21:36:39 | → | Guest43 joins (~Guest43@136.60.16.88) |
| 21:37:48 | × | dcoutts__ quits (~duncan@host86-143-111-204.range86-143.btcentralplus.com) (Ping timeout: 246 seconds) |
| 21:38:37 | × | Guest43 quits (~Guest43@136.60.16.88) (Client Quit) |
| 21:44:29 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 21:49:29 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 21:50:45 | → | gmg joins (~user@user/gehmehgeh) |
| 21:56:22 | → | hgolden_ joins (~hgolden@146.70.173.101) |
| 21:58:40 | × | hgolden__ quits (~hgolden@169.150.203.10) (Ping timeout: 252 seconds) |
| 22:00:17 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 22:03:45 | × | machinedgod quits (~machinedg@d50-99-47-73.abhsia.telus.net) (Ping timeout: 260 seconds) |
| 22:04:12 | → | dcoutts__ joins (~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848) |
| 22:05:21 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 265 seconds) |
| 22:06:28 | → | troojg joins (~troojg@user/troojg) |
| 22:14:42 | → | dcoutts_ joins (~duncan@host86-143-111-204.range86-143.btcentralplus.com) |
| 22:16:04 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 22:16:50 | × | dcoutts__ quits (~duncan@2a00:23c6:1c8d:901:b94:4566:9d63:4848) (Read error: Connection reset by peer) |
| 22:23:31 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 264 seconds) |
| 22:34:08 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 22:38:13 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:38:18 | <dmj`> | tomsmeding: could catch type errors with a typechecker plugin, during unification |
| 22:39:00 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 22:42:52 | × | Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:45:42 | × | acidjnk_new quits (~acidjnk@p200300d6e72cfb921c1d480c698edc2c.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 22:48:15 | mantraofpie_ | is now known as mantraofpie |
| 22:49:54 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 22:50:18 | → | morb joins (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) |
| 22:54:46 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 22:55:03 | × | xff0x quits (~xff0x@2405:6580:b080:900:8b57:d075:1efa:336f) (Ping timeout: 252 seconds) |
| 22:56:09 | × | morb quits (~morb@pool-108-41-100-120.nycmny.fios.verizon.net) (Ping timeout: 252 seconds) |
| 22:57:54 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:05:42 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 23:06:37 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds) |
| 23:07:32 | → | JuanDaugherty joins (~juan@user/JuanDaugherty) |
| 23:10:39 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 260 seconds) |
| 23:11:36 | × | jespada quits (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 246 seconds) |
| 23:14:18 | → | jespada joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
| 23:15:43 | × | rmca quits (~rob@188.120.84.50) (Ping timeout: 264 seconds) |
| 23:15:48 | × | mreh quits (~matthew@host86-128-2-51.range86-128.btcentralplus.com) (Ping timeout: 245 seconds) |
| 23:16:44 | → | raehik joins (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) |
| 23:24:00 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 23:28:24 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 246 seconds) |
| 23:31:18 | → | xff0x joins (~xff0x@2405:6580:b080:900:ecb9:4019:640d:fffc) |
| 23:39:00 | → | TonyStone joins (~TonyStone@user/TonyStone) |
| 23:39:21 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
| 23:40:23 | × | xff0x quits (~xff0x@2405:6580:b080:900:ecb9:4019:640d:fffc) (Ping timeout: 245 seconds) |
| 23:43:53 | × | merijn quits (~merijn@128-137-045-062.dynamic.caiway.nl) (Ping timeout: 252 seconds) |
| 23:53:04 | × | raehik quits (~raehik@rdng-25-b2-v4wan-169990-cust1344.vm39.cable.virginm.net) (Ping timeout: 252 seconds) |
| 23:54:29 | ← | roconnor parts (~quassel@coq/roconnor) () |
| 23:54:44 | → | merijn joins (~merijn@128-137-045-062.dynamic.caiway.nl) |
All times are in UTC on 2024-10-17.