Logs on 2025-07-21 (liberachat/#haskell)
| 00:12:42 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 272 seconds) |
| 00:13:05 | → | sim590 joins (~simon@2001:18c0:a82:2400::9fb) |
| 00:21:21 | × | rvalue quits (~rvalue@about/hackers/rvalue) (Remote host closed the connection) |
| 00:34:02 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 00:34:15 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 00:40:14 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 00:41:36 | × | falafel quits (~falafel@2a0c:5a87:3104:8f01::f709) (Remote host closed the connection) |
| 00:41:58 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 00:42:09 | → | todi joins (~todi@p57803331.dip0.t-ipconnect.de) |
| 00:43:56 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 00:44:16 | → | machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net) |
| 00:51:32 | × | rhz quits (~rhz@190.5.35.164) (Quit: Client closed) |
| 00:52:48 | → | rhz joins (~rhz@190.5.35.164) |
| 00:56:22 | → | caubert joins (~caubert@user/caubert) |
| 01:06:05 | × | rhz quits (~rhz@190.5.35.164) (Ping timeout: 272 seconds) |
| 01:16:50 | → | rvalue joins (~rvalue@about/hackers/rvalue) |
| 01:30:06 | → | ftzm9 joins (~ftzm@085080231172.dynamic.telenor.dk) |
| 01:31:47 | × | takuan quits (~takuan@d8D86B9E9.access.telenet.be) (Remote host closed the connection) |
| 01:31:51 | × | weary-traveler quits (~user@user/user363627) (Quit: Konversation terminated!) |
| 01:31:59 | × | ftzm quits (~ftzm@085080236095.dynamic.telenor.dk) (Ping timeout: 260 seconds) |
| 01:31:59 | ftzm9 | is now known as ftzm |
| 01:33:54 | × | bcksl quits (~bcksl@user/bcksl) (Ping timeout: 260 seconds) |
| 01:34:09 | × | end quits (~end@user/end/x-0094621) (Ping timeout: 248 seconds) |
| 01:35:04 | × | sus0 quits (zero@user/zeromomentum) (Ping timeout: 260 seconds) |
| 01:54:38 | → | bcksl joins (~bcksl@user/bcksl) |
| 01:57:58 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 01:59:44 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 272 seconds) |
| 02:01:46 | → | end joins (~end@user/end/x-0094621) |
| 02:09:07 | × | bramh quits (~bramh@user/bramh) (Quit: Ping timeout (120 seconds)) |
| 02:09:24 | → | bramh joins (~bramh@user/bramh) |
| 02:15:15 | trickard_ | is now known as trickard |
| 02:19:32 | → | caubert joins (~caubert@user/caubert) |
| 02:30:34 | → | amadaluzia joins (~amadaluzi@user/amadaluzia) |
| 02:32:33 | × | td_ quits (~td@i53870910.versanet.de) (Ping timeout: 276 seconds) |
| 02:33:11 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 252 seconds) |
| 02:35:08 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 02:37:45 | × | xff0x quits (~xff0x@2405:6580:b080:900:43cc:6096:3f7c:e1ce) (Ping timeout: 276 seconds) |
| 02:39:03 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds) |
| 02:42:18 | × | connrs quits (~connrs@user/connrs) (Ping timeout: 276 seconds) |
| 02:49:11 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Remote host closed the connection) |
| 02:49:35 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 02:55:31 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 03:02:39 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: irc.renjuan.org (juan@acm.org)) |
| 03:10:23 | → | xff0x joins (~xff0x@2405:6580:b080:900:b4a:f806:ddbd:3003) |
| 03:24:28 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 03:34:19 | → | weary-traveler joins (~user@user/user363627) |
| 03:38:43 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 245 seconds) |
| 03:42:07 | × | Square2 quits (~Square@user/square) (Ping timeout: 252 seconds) |
| 03:45:40 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 03:52:58 | → | caubert joins (~caubert@user/caubert) |
| 03:56:25 | → | sus0 joins (zero@user/zeromomentum) |
| 03:58:37 | → | cashew joins (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 04:06:27 | × | xff0x quits (~xff0x@2405:6580:b080:900:b4a:f806:ddbd:3003) (Ping timeout: 244 seconds) |
| 04:09:20 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 04:10:39 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 04:10:51 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Client Quit) |
| 04:19:26 | → | xff0x joins (~xff0x@2405:6580:b080:900:b4a:f806:ddbd:3003) |
| 04:22:41 | → | tsuki joins (~tsuki@49.37.43.51) |
| 04:25:02 | × | cashew quits (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Remote host closed the connection) |
| 04:30:27 | → | cashew joins (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 04:34:12 | × | cashew quits (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Remote host closed the connection) |
| 04:34:24 | → | cashew joins (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 04:48:32 | × | Leary quits (~Leary@user/Leary/x-0910699) (Remote host closed the connection) |
| 04:51:45 | → | Leary joins (~Leary@user/Leary/x-0910699) |
| 04:52:27 | × | cashew quits (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Remote host closed the connection) |
| 04:54:04 | → | cashew joins (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 04:55:06 | × | trickard quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 04:55:19 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 04:57:57 | → | michalz joins (~michalz@185.246.207.205) |
| 04:58:33 | × | mhatta quits (~mhatta@www21123ui.sakura.ne.jp) (Remote host closed the connection) |
| 05:03:37 | <elenril> | cabal does not support separating the build tree from the source? |
| 05:05:38 | × | tsuki quits (~tsuki@49.37.43.51) (Read error: Connection reset by peer) |
| 05:17:29 | × | cashew quits (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Remote host closed the connection) |
| 05:17:51 | → | cashew joins (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 05:19:54 | × | cashew quits (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Remote host closed the connection) |
| 05:21:02 | <geekosaur> | eh? the build tree is in `dist-newstyle` by default and can be changed |
| 05:21:41 | <elenril> | huh, I wonder why does nothing talk about it then |
| 05:21:53 | <elenril> | the only reference google returned was to an old ghc manual |
| 05:28:43 | <geekosaur> | I don't think it's specifically referred to as a build tree |
| 05:29:11 | <geekosaur> | (it is in fact more than just a build tree) |
| 05:31:51 | → | fp joins (~Thunderbi@2001-14bb-ce-ec18-dea2-5cd-93cc-55e7.rev.dnainternet.fi) |
| 05:34:25 | × | olivial quits (~benjaminl@user/benjaminl) (Read error: Connection reset by peer) |
| 05:34:40 | → | olivial joins (~benjaminl@user/benjaminl) |
| 05:41:22 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 05:53:02 | × | bcksl quits (~bcksl@user/bcksl) (Ping timeout: 252 seconds) |
| 05:53:46 | × | end quits (~end@user/end/x-0094621) (Ping timeout: 252 seconds) |
| 05:54:08 | × | sus0 quits (zero@user/zeromomentum) (Ping timeout: 245 seconds) |
| 05:57:18 | × | haritz quits (~hrtz@user/haritz) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 05:59:36 | → | prdak joins (~Thunderbi@user/prdak) |
| 06:01:48 | → | biberu joins (~biberu@user/biberu) |
| 06:03:49 | → | connrs joins (~connrs@user/connrs) |
| 06:06:56 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 06:07:26 | × | prdak quits (~Thunderbi@user/prdak) (Quit: prdak) |
| 06:07:46 | → | prdak joins (~Thunderbi@user/prdak) |
| 06:07:58 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 06:11:37 | → | caubert joins (~caubert@user/caubert) |
| 06:11:55 | → | bcksl joins (~bcksl@user/bcksl) |
| 06:14:28 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 240 seconds) |
| 06:16:35 | → | dhil joins (~dhil@5.151.29.141) |
| 06:16:49 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 260 seconds) |
| 06:16:56 | → | end joins (~end@user/end/x-0094621) |
| 06:22:56 | trickard_ | is now known as trickard |
| 06:23:46 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 06:29:38 | → | caubert joins (~caubert@user/caubert) |
| 06:30:16 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 06:35:56 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 252 seconds) |
| 06:39:54 | → | caubert joins (~caubert@user/caubert) |
| 06:42:46 | × | tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Quit: zzz) |
| 06:50:46 | × | ft quits (~ft@p508db189.dip0.t-ipconnect.de) (Quit: leaving) |
| 06:52:36 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 06:59:16 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 07:00:00 | × | caconym74 quits (~caconym@user/caconym) (Quit: bye) |
| 07:00:22 | → | chele joins (~chele@user/chele) |
| 07:00:39 | → | caconym74 joins (~caconym@user/caconym) |
| 07:02:36 | → | sus0 joins (zero@user/zeromomentum) |
| 07:02:52 | × | fp quits (~Thunderbi@2001-14bb-ce-ec18-dea2-5cd-93cc-55e7.rev.dnainternet.fi) (Ping timeout: 276 seconds) |
| 07:10:26 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 07:12:39 | → | califax joins (~califax@user/califx) |
| 07:17:05 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 248 seconds) |
| 07:22:12 | × | jreicher quits (~user@user/jreicher) (Read error: Connection reset by peer) |
| 07:22:48 | → | caubert joins (~caubert@user/caubert) |
| 07:22:56 | → | jreicher joins (~user@user/jreicher) |
| 07:23:19 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 07:25:00 | → | califax joins (~califax@user/califx) |
| 07:25:10 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 07:26:43 | → | acidjnk joins (~acidjnk@p200300d6e70b66275c5612394638f67e.dip0.t-ipconnect.de) |
| 07:28:15 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 07:29:54 | → | califax joins (~califax@user/califx) |
| 07:32:04 | × | dhil quits (~dhil@5.151.29.141) (Ping timeout: 260 seconds) |
| 07:43:05 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 07:47:26 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 272 seconds) |
| 07:48:04 | → | fp joins (~Thunderbi@wireless-86-50-140-9.open.aalto.fi) |
| 07:48:27 | × | emmanuelux quits (~emmanuelu@user/emmanuelux) (Quit: Leaving) |
| 07:50:17 | → | caubert joins (~caubert@user/caubert) |
| 07:51:24 | → | sord937 joins (~sord937@gateway/tor-sasl/sord937) |
| 07:55:52 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 252 seconds) |
| 07:59:58 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 08:02:23 | → | merijn joins (~merijn@77.242.116.146) |
| 08:02:40 | → | califax joins (~califax@user/califx) |
| 08:04:55 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 08:04:58 | × | werneta quits (~werneta@syn-071-083-160-242.res.spectrum.com) (Ping timeout: 245 seconds) |
| 08:06:08 | → | califax joins (~califax@user/califx) |
| 08:08:31 | × | jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 276 seconds) |
| 08:10:45 | × | weary-traveler quits (~user@user/user363627) (Remote host closed the connection) |
| 08:22:25 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 08:26:01 | → | califax joins (~califax@user/califx) |
| 08:31:01 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 08:31:28 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 08:32:15 | → | califax joins (~califax@user/califx) |
| 08:34:00 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 08:35:23 | → | merijn joins (~merijn@77.242.116.146) |
| 08:35:35 | → | califax joins (~califax@user/califx) |
| 08:35:57 | × | prdak quits (~Thunderbi@user/prdak) (Read error: Connection reset by peer) |
| 08:36:28 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 08:39:00 | × | pabs3 quits (~pabs3@user/pabs3) (Read error: Connection reset by peer) |
| 08:39:50 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 08:41:07 | → | califax joins (~califax@user/califx) |
| 08:42:00 | → | pabs3 joins (~pabs3@user/pabs3) |
| 08:42:25 | → | caubert joins (~caubert@user/caubert) |
| 08:48:56 | → | prdak joins (~Thunderbi@user/prdak) |
| 08:53:34 | × | prdak quits (~Thunderbi@user/prdak) (Ping timeout: 260 seconds) |
| 08:54:07 | → | prdak joins (~Thunderbi@user/prdak) |
| 08:54:10 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 08:55:24 | → | merijn joins (~merijn@77.242.116.146) |
| 09:08:06 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 09:22:03 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 268 seconds) |
| 09:28:45 | → | tcard__ joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 09:31:48 | × | tcard_ quits (~tcard@2400:4051:5801:7500:1e90:74c3:2754:ce8a) (Ping timeout: 276 seconds) |
| 09:35:34 | × | prdak quits (~Thunderbi@user/prdak) (Ping timeout: 260 seconds) |
| 09:35:55 | → | caubert joins (~caubert@user/caubert) |
| 09:36:32 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Remote host closed the connection) |
| 09:40:01 | × | bcksl quits (~bcksl@user/bcksl) (Ping timeout: 248 seconds) |
| 09:40:59 | × | end quits (~end@user/end/x-0094621) (Ping timeout: 260 seconds) |
| 09:41:47 | × | sus0 quits (zero@user/zeromomentum) (Ping timeout: 268 seconds) |
| 09:43:49 | × | fp quits (~Thunderbi@wireless-86-50-140-9.open.aalto.fi) (Ping timeout: 248 seconds) |
| 09:52:25 | → | Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
| 09:56:07 | → | sus0 joins (zero@user/zeromomentum) |
| 10:03:14 | × | poscat quits (~poscat@user/poscat) (Remote host closed the connection) |
| 10:06:23 | → | poscat joins (~poscat@user/poscat) |
| 10:11:59 | → | bcksl joins (~bcksl@user/bcksl) |
| 10:12:28 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 10:16:39 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 276 seconds) |
| 10:17:01 | → | end joins (~end@user/end/x-0094621) |
| 10:20:55 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 10:23:18 | → | fp joins (~Thunderbi@2001:708:20:1406::10c5) |
| 10:23:50 | → | merijn joins (~merijn@77.242.116.146) |
| 10:24:01 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 10:24:30 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 10:25:09 | → | __monty__ joins (~toonn@user/toonn) |
| 10:26:16 | → | sprotte24 joins (~sprotte24@p200300d16f31a300ed9da74e99aa1092.dip0.t-ipconnect.de) |
| 10:26:29 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Ping timeout: 248 seconds) |
| 10:27:30 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 10:28:39 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 260 seconds) |
| 10:34:22 | × | trickard quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 10:34:36 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 10:34:58 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 10:36:16 | → | caubert joins (~caubert@user/caubert) |
| 10:37:26 | → | merijn joins (~merijn@77.242.116.146) |
| 10:50:38 | → | prdak joins (~Thunderbi@user/prdak) |
| 10:58:40 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 11:00:18 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 11:02:59 | → | merijn joins (~merijn@77.242.116.146) |
| 11:03:58 | × | machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 240 seconds) |
| 11:08:54 | → | arandombit joins (~arandombi@37.120.80.229) |
| 11:08:54 | × | arandombit quits (~arandombi@37.120.80.229) (Changing host) |
| 11:08:54 | → | arandombit joins (~arandombi@user/arandombit) |
| 11:12:08 | → | lortabac joins (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) |
| 11:18:01 | → | Lord_of_Life_ joins (~Lord@user/lord-of-life/x-2819915) |
| 11:18:28 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 240 seconds) |
| 11:20:54 | Lord_of_Life_ | is now known as Lord_of_Life |
| 11:23:26 | → | m1dnight_ joins (~m1dnight@185.245.255.97) |
| 11:24:03 | × | m1dnight quits (~m1dnight@d8D861A17.access.telenet.be) (Ping timeout: 252 seconds) |
| 11:24:05 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 11:24:18 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 11:26:19 | → | m1dnight joins (~m1dnight@45.155.43.16) |
| 11:29:27 | × | m1dnight_ quits (~m1dnight@185.245.255.97) (Ping timeout: 276 seconds) |
| 11:34:39 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 276 seconds) |
| 11:37:25 | × | acidjnk quits (~acidjnk@p200300d6e70b66275c5612394638f67e.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 11:47:47 | → | caubert joins (~caubert@user/caubert) |
| 11:51:51 | × | Digit quits (~user@user/digit) (Read error: Connection reset by peer) |
| 11:53:22 | → | Digit joins (~user@user/digit) |
| 11:59:49 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 12:00:02 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 12:09:21 | → | Razn0r joins (~quassel@94.142.208.170) |
| 12:12:01 | × | prdak quits (~Thunderbi@user/prdak) (Ping timeout: 248 seconds) |
| 12:15:46 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 12:18:54 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 12:20:14 | → | prdak joins (~Thunderbi@user/prdak) |
| 12:21:24 | → | chele joins (~chele@user/chele) |
| 12:24:19 | × | prdak quits (~Thunderbi@user/prdak) (Remote host closed the connection) |
| 12:24:25 | × | pabs3 quits (~pabs3@user/pabs3) (Read error: Connection reset by peer) |
| 12:24:37 | → | prdak joins (~Thunderbi@user/prdak) |
| 12:32:09 | → | jespada joins (~jespada@2800:a4:2242:c500:c3f:3826:75da:364f) |
| 12:32:28 | → | ttybitnik joins (~ttybitnik@user/wolper) |
| 12:34:58 | × | arandombit quits (~arandombi@user/arandombit) (Remote host closed the connection) |
| 12:39:31 | × | sprotte24 quits (~sprotte24@p200300d16f31a300ed9da74e99aa1092.dip0.t-ipconnect.de) (Quit: Leaving) |
| 12:41:33 | → | Square3 joins (~Square4@user/square) |
| 12:41:57 | → | acidjnk joins (~acidjnk@p200300d6e70b66275008fd72822e7c06.dip0.t-ipconnect.de) |
| 12:45:39 | → | pabs3 joins (~pabs3@user/pabs3) |
| 12:52:38 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 12:52:52 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 12:56:20 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 265 seconds) |
| 13:01:09 | → | notzmv joins (~umar@user/notzmv) |
| 13:04:16 | × | amadaluzia quits (~amadaluzi@user/amadaluzia) (Quit: ZNC 1.10.0 - https://znc.in) |
| 13:04:19 | × | pabs3 quits (~pabs3@user/pabs3) (Quit: Don't rest until all the world is paved in moss and greenery.) |
| 13:04:31 | → | amadaluzia joins (~amadaluzi@user/amadaluzia) |
| 13:07:17 | → | pabs3 joins (~pabs3@user/pabs3) |
| 13:07:17 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 13:14:32 | × | myme quits (~myme@2a01:799:d5e:5f00:e1d5:164a:ea:c48) (Ping timeout: 268 seconds) |
| 13:15:10 | → | myme joins (~myme@2a01:799:d5e:5f00:7f02:95a9:7b47:a0d4) |
| 13:16:52 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 13:17:04 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 13:19:55 | <haskellbridge> | <magic_rb> im trying to make a haskell WS <-> UDP proxy and the server side seems to work fine, but my client is getting stuck, it is able to receive one UDP datagram, sends it over the WS connection and then hangs, see https://paste.tomsmeding.com/tFghrTMr |
| 13:20:26 | <haskellbridge> | <magic_rb> it manages to get push the "recvFrom" once, it sends the data over the WS and then once it reaches "recvFrom" again it gets stuck there forever |
| 13:20:39 | <haskellbridge> | <magic_rb> doesnt matterh how much data i send it, no clue why |
| 13:23:17 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 13:24:21 | <haskellbridge> | <magic_rb> óh wait |
| 13:24:25 | <haskellbridge> | <magic_rb> its thi fucking mvar, nevermind |
| 13:26:35 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 13:26:49 | <haskellbridge> | <magic_rb> lol |
| 13:27:24 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 13:38:18 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Ping timeout: 245 seconds) |
| 13:38:58 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 13:41:13 | × | vanishingideal quits (~vanishing@user/vanishingideal) (Remote host closed the connection) |
| 13:45:03 | → | vanishingideal joins (~vanishing@user/vanishingideal) |
| 13:45:14 | × | inline quits (~inline@ip-005-146-196-034.um05.pools.vodafone-ip.de) (Quit: Leaving) |
| 13:49:50 | → | ccapndave joins (~ccapndave@213.55.244.222) |
| 13:58:31 | → | ystael joins (~ystael@user/ystael) |
| 14:03:07 | × | Leary quits (~Leary@user/Leary/x-0910699) (Remote host closed the connection) |
| 14:04:28 | → | Smiles joins (uid551636@id-551636.lymington.irccloud.com) |
| 14:06:22 | → | Leary joins (~Leary@user/Leary/x-0910699) |
| 14:08:39 | → | r-sta joins (~r-sta@cpc142694-benw13-2-0-cust901.16-2.cable.virginm.net) |
| 14:08:45 | <r-sta> | i have a really bad bug |
| 14:08:59 | <r-sta> | i compile it again and it works |
| 14:09:06 | <r-sta> | sometimes it does and sometimes it doesnt |
| 14:09:10 | <r-sta> | its a <<loop>> |
| 14:09:23 | <r-sta> | i have no idea how this can depend on different recompilations |
| 14:09:24 | <r-sta> | !"!!! |
| 14:09:40 | × | Digit quits (~user@user/digit) (Read error: Connection reset by peer) |
| 14:09:48 | <r-sta> | there are some parts of the code that use random numbers |
| 14:10:16 | <r-sta> | but i cant see how using a different random seed could result in it going into a <<loop>> only sometimes |
| 14:10:36 | <r-sta> | is there something like, how many times it does something that depends on if it detects a loop? |
| 14:10:44 | → | Digit joins (~user@user/digit) |
| 14:10:57 | <r-sta> | like, if some of the data results in a longer sequence of computations, and its just thinking its a loop but it isnt? |
| 14:11:16 | <mauke> | <<loop>> isn't a loop detector |
| 14:11:37 | <mauke> | it's an exception thrown when a computation depends (directly or indirectly) on itself |
| 14:11:55 | <mauke> | > let x = x + 1 in x |
| 14:11:57 | <lambdabot> | *Exception: <<loop>> |
| 14:12:05 | <r-sta> | this cant be the case |
| 14:12:18 | <r-sta> | i change nothing between compilations, sometimes it does not give a loop, sometimes it does |
| 14:12:24 | <r-sta> | it cant be the semantics of the code |
| 14:12:36 | × | Razn0r quits (~quassel@94.142.208.170) (Ping timeout: 276 seconds) |
| 14:12:37 | <r-sta> | im thinking it might be a case of how many evals |
| 14:12:42 | <r-sta> | can i turn this off somehow? |
| 14:12:59 | <r-sta> | :set f-number-of-loop-detection-evals=0 |
| 14:13:21 | <mauke> | it doesn't count things |
| 14:13:36 | <r-sta> | i cant see how else i could get this nodeterministic behaviour |
| 14:13:46 | × | jreicher quits (~user@user/jreicher) (Ping timeout: 272 seconds) |
| 14:13:49 | <r-sta> | unless the compiler is really messed up |
| 14:14:18 | <mauke> | IIRC the threaded runtime works differently |
| 14:14:28 | <mauke> | but that might just turn <<loop>> into a hanging thread |
| 14:14:50 | <r-sta> | ok so how do i have it not break in a crazy way |
| 14:15:00 | <r-sta> | im getting a sore neck from this |
| 14:15:19 | × | ccapndave quits (~ccapndave@213.55.244.222) (Quit: Textual IRC Client: www.textualapp.com) |
| 14:15:23 | <r-sta> | iv never had such a rediculous bug, its taken me like 20hrs to debug its driving me mad |
| 14:15:41 | <r-sta> | i have checked the code over and over, there are no forward references |
| 14:15:52 | <r-sta> | and this non-determinism seems to convince me that its not my code |
| 14:16:04 | <r-sta> | its something really seriously broken |
| 14:16:38 | <r-sta> | there is no way i can reproduce it in a smaller code block |
| 14:16:43 | <r-sta> | i have no idea whats causing it |
| 14:16:50 | <__monty__> | Have you tried setting the seeds for all the RNGs? |
| 14:17:22 | <r-sta> | there is one unsafeperformIO that gets a randomRIO into a pure form which i could turn off |
| 14:17:43 | <r-sta> | i really fail to see how that could result in the loop though, but its the only way it could opperate differently between compilations |
| 14:18:44 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 14:18:58 | <r-sta> | and even if that were the case, how can that result in a <<loop>> *sometimes* !? |
| 14:19:36 | <mauke> | let x = if coinFlip then x + 1 else 42 |
| 14:19:58 | <int-e> | mauke: good one |
| 14:21:01 | <r-sta> | ah fair |
| 14:21:20 | <r-sta> | ok, so with some choice of seed it works and with one choice i found it hits the loop |
| 14:21:27 | <r-sta> | so at least its reproducable now |
| 14:21:35 | <int-e> | Yeah wrapping randomRIO in unsafePerformIO sounds like a terrible idea. Because the compiler *will* treat it as a pure function whenever it recognizes that you call it several times with the same arguments. |
| 14:21:36 | <r-sta> | that should at least help my debugging |
| 14:21:40 | <r-sta> | *sheesh* |
| 14:21:45 | <r-sta> | it was driving me *crazy* |
| 14:22:03 | × | YoungFrog quits (~youngfrog@39.129-180-91.adsl-dyn.isp.belgacom.be) (Quit: ZNC 1.7.x-git-3-96481995 - https://znc.in) |
| 14:22:06 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 14:22:26 | <int-e> | mauke's example is better though in that it doesn't even need the compiler to do that |
| 14:22:43 | <r-sta> | yeah, i can see how it could hit a looping branch on a data dependant way |
| 14:22:45 | <r-sta> | thanks |
| 14:23:17 | <r-sta> | are there any fancy ways i can locate the point in the code where the loop is though? |
| 14:24:09 | → | YoungFrog joins (~youngfrog@2a02:a03f:ca07:f900:370f:ab1f:208a:3fc) |
| 14:26:28 | × | Square3 quits (~Square4@user/square) (Ping timeout: 240 seconds) |
| 14:26:31 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 14:27:52 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 14:30:33 | <r-sta> | rrg, it seems to depend on the parametrization |
| 14:30:35 | <__monty__> | Whenever it's hard to find a minimal reproducer it's usually a safe bet that your code's the issue and not the compiler. |
| 14:30:37 | <r-sta> | this is totally hopeless |
| 14:30:56 | <r-sta> | yeah, sure, i didnt realise it was some random number |
| 14:31:17 | <r-sta> | the codebase is huge, i cant get it to behave deterministically, there must be unsafe random seeds all over the place |
| 14:31:27 | <r-sta> | im on windows so i dont have an easy way to grep the bug |
| 14:31:47 | <r-sta> | i just want it to point to where the <<loop>> is |
| 14:31:51 | <EvanR> | kids this is why we use purely functional programming |
| 14:32:23 | <EvanR> | instead of expressions whose value is random each time you look at it |
| 14:32:43 | <r-sta> | yeah, but still, there is not great support for this *runtime* error |
| 14:32:58 | <r-sta> | i should be able to get my code to be nondeterministic without it ruining my life |
| 14:33:45 | <r-sta> | it takes like 5 minutes to compile! |
| 14:33:50 | <EvanR> | if you disregard the most basic assumptions of haskell I don't expect good things to happen |
| 14:33:57 | <int-e> | well, randomness is a type of state. |
| 14:34:39 | <EvanR> | yeah, there are more or less painful ways to properly include "non-determinism" in the program |
| 14:34:43 | <r-sta> | i thought i might happen uppon a nice initialization by chance... *sigh* |
| 14:34:44 | <int-e> | So... you gotta bite some bullet. A monad, or careful manual passing of a splittable RNG into your pure functions. Or, in easy cases, just an infinite list of generated vlaues. |
| 14:35:12 | <int-e> | But "I have this pure code, now I want to make a part of it random" just is a no-go in Haskell. |
| 14:35:16 | <r-sta> | ok, iv recompiled so i can run it in ghci to try and use break-on-error |
| 14:35:49 | <EvanR> | when you try to make pure code act non-purely, the debugging is hellish, as you are discovering |
| 14:36:06 | <r-sta> | ghci> :trace main |
| 14:36:06 | <r-sta> | Stopped in <exception thrown>, <unknown> |
| 14:36:07 | <r-sta> | _exception :: e = _ |
| 14:36:16 | <r-sta> | such informative! |
| 14:36:42 | <mauke> | hah |
| 14:36:51 | <r-sta> | ... [<unknown>] ghci> :back |
| 14:36:51 | <r-sta> | no more logged breakpoints |
| 14:37:24 | <r-sta> | idk wtf im doing im going spare |
| 14:37:36 | int-e | would probably just comment out the problematic randomRIO-wrapping function to collect a list of uses. Maybe rename it so if a call site looks uncritical, it can be "fixed" by adding a TODO using the replacement. |
| 14:37:40 | <mauke> | I've never used this stuff. can you print _exception? |
| 14:38:18 | <int-e> | adding a TODO *and* using the replacement (renamed function) |
| 14:38:47 | <mauke> | actually, ':force _exception' and ':show context' may be relevant? |
| 14:38:53 | <r-sta> | yeah, if i could even find where the damn unsafePerformIO calls are being made! |
| 14:39:00 | <int-e> | grep? |
| 14:39:05 | <r-sta> | windows... |
| 14:39:23 | <EvanR> | may all your functions be total, either explicitly or because of certain inputs or states of your algorithm are provably impossible |
| 14:39:32 | <r-sta> | id rather just keep all the nondeterminism and actually locate where the loop occurs |
| 14:39:34 | <int-e> | grep for windows then ;-) |
| 14:39:42 | <mauke> | findstr? |
| 14:40:07 | <int-e> | . o O ( git grep :-P ) |
| 14:40:09 | <__monty__> | Can't you grep from Windows' Linux shell? |
| 14:40:26 | <EvanR> | search your code using the IDE |
| 14:40:33 | <r-sta> | i use wordpad |
| 14:40:43 | <EvanR> | are we trying to make this as hard as possible |
| 14:40:44 | <int-e> | to me string finding is such a fundamental (even though crude and basic) developer tool... |
| 14:40:56 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 14:41:02 | <r-sta> | EvanR it has never failed me in the last 18 years |
| 14:41:03 | <mauke> | wordpad?! |
| 14:41:09 | <mauke> | real programmers use powerpoint |
| 14:41:10 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 14:41:11 | <EvanR> | haskell with unsafe randomness + windows + no programming editor |
| 14:41:22 | <EvanR> | sounds like a recipe for success |
| 14:41:24 | <r-sta> | >:-| |
| 14:41:42 | <r-sta> | not the ghc teams fault for not giving loop breakpoint lines or anything |
| 14:41:55 | <__monty__> | No need for jokes at anyone's expense. Let's brainstorm a way forward. |
| 14:42:02 | <EvanR> | you think debugging is hard right now, don't look at older versions of GHC |
| 14:42:22 | <EvanR> | you didn't even have HasCallstack |
| 14:42:23 | <int-e> | r-sta: the RTS is entering a black hole that basically has no info about how it was initially created |
| 14:42:40 | <r-sta> | so what do i do? |
| 14:42:48 | <r-sta> | can i step through line by line? |
| 14:42:53 | <int-e> | despair, but you're already doing that |
| 14:42:59 | <r-sta> | quite adeptly |
| 14:43:08 | <EvanR> | haskell doesn't evaluate line by line, it's lazy |
| 14:43:11 | <__monty__> | I think int-e's suggestion is the most promising so far. Rename the function and the compiler will complain about where it's used. |
| 14:43:30 | <EvanR> | which means even more importance on pure functional techniques |
| 14:43:31 | <r-sta> | i dont know which function it is |
| 14:43:40 | <r-sta> | all i was saying is that there was a RIO |
| 14:43:43 | <int-e> | well, neither does ghci |
| 14:43:56 | <__monty__> | r-sta: The one(s) you use unsafePerformIO in. |
| 14:44:08 | <r-sta> | it breaks deterministically *enough* now iv found *most* of the unsafe randomRIO seeds |
| 14:44:16 | <mauke> | we're debugging <<loop>> now |
| 14:44:21 | <r-sta> | sry |
| 14:44:32 | <r-sta> | i would share my code but its HUGE |
| 14:44:34 | <__monty__> | r-sta: Ripgrep claims to support Windows FWIW. |
| 14:45:13 | <r-sta> | installation via chocolatey |
| 14:45:26 | <int-e> | I'm serious. You can maybe figure out who forced the closure that results in <<loop>>. There are profiling info based stack traces that should tell you that. But figuring out where that closure was created... well if you're lucky it's nearby the use. But it may be somewhere entirely different. Lazy evaluation *is* tricky. |
| 14:45:45 | <r-sta> | okok |
| 14:45:58 | <r-sta> | "profiling info based stack traces" |
| 14:46:00 | <r-sta> | sounds good |
| 14:46:36 | <int-e> | My personal approach to debugging <<loop>>-s is to test thoroughly so that I find them early enough that I can blame my most recently added code for going wrong. (Doesn't always work, of course, and if it doesn't it's kind of painful.) |
| 14:46:47 | <r-sta> | looping function is called, program breaks, identify looping function, fix badly named variable, sorted |
| 14:47:15 | <EvanR> | variable shadowing |
| 14:47:17 | <r-sta> | int-e: i spent hours adding Show instances all over the place last night |
| 14:47:30 | <r-sta> | i can kind of almost see where it was going wrong |
| 14:47:42 | <r-sta> | and then the non-determinism came along and ruined everything |
| 14:47:55 | <r-sta> | i was like, commenting out stuff or putting undefineds |
| 14:48:07 | <r-sta> | and then it was like, presumably, not breaking just by random |
| 14:48:09 | <r-sta> | :-( |
| 14:48:15 | <r-sta> | i didnt know what was happening!! |
| 14:48:27 | <r-sta> | at least now i *know* there was non-determinism |
| 14:48:49 | <int-e> | My favorite <<loop>> was somewhere on haskell-cafe ages ago where somebody had code that used r,s,t as variables, and r,g,b as color values... and failed to spot the overlap :-) |
| 14:48:50 | <EvanR> | this is why haskell is pure, because they predicted that debugging a combination of lazy and effectful would be insane |
| 14:49:02 | <EvanR> | though that doesn't help with <<loop>> |
| 14:49:06 | <r-sta> | i think i might just throw my computer out the window, move to a new country, learn meditation techniques, invent some paradoxical SSRIs and start afresh |
| 14:49:43 | <r-sta> | EvarR: thats actually quite interesting |
| 14:50:04 | <EvanR> | colliding or shadowing variables names defeats one of the best ways the compiler can tell you about your nonsense code: variable name goes nowhere or has wrong type |
| 14:50:13 | <r-sta> | (anyone know the difference between an sNRI and an SNRI ?) |
| 14:50:22 | <r-sta> | because my GP didnt! |
| 14:50:39 | <r-sta> | im gona take a break before my computer loops itself down the stairs |
| 14:50:59 | <r-sta> | thanks for the tips. i might return for tips on stack tracing |
| 14:51:01 | × | r-sta quits (~r-sta@cpc142694-benw13-2-0-cust901.16-2.cable.virginm.net) (Quit: Client closed) |
| 14:51:07 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 14:54:52 | × | EvanR quits (~EvanR@user/evanr) (Quit: Leaving) |
| 14:57:36 | <merijn> | int-e: This is why I started using shadow warnings everywhere |
| 14:57:43 | <merijn> | Shadowing is just never worth it |
| 14:59:08 | <int-e> | this is why I actually use the foo x | x <- x+1 = x style (in moderation) |
| 14:59:26 | <int-e> | the problem with just disallowing shadowing is that it doesn't prevent you from using the old value |
| 15:00:11 | × | ttybitnik quits (~ttybitnik@user/wolper) (Remote host closed the connection) |
| 15:01:53 | → | EvanR joins (~EvanR@user/evanr) |
| 15:02:07 | <int-e> | (it's not without downsides; most notable, it doesn't work well together with `where`) |
| 15:03:41 | <sprout> | > let 2 + 2 = 5 in 2 + 2 |
| 15:03:42 | <lambdabot> | 5 |
| 15:04:13 | <int-e> | sprout: with great power comes great responsibility |
| 15:04:23 | <EvanR> | there are 4 lights |
| 15:04:37 | <sprout> | code was never meant to be executed anyway |
| 15:05:58 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 240 seconds) |
| 15:15:51 | <EvanR> | that code wasn't meant to be executed. The AST for that code we never meant to be compiled. The string containing the raw code characters was never meant to be parsed |
| 15:18:04 | → | merijn joins (~merijn@77.242.116.146) |
| 15:18:40 | → | SlackCoder joins (~SlackCode@remote.nationalgallery.org.ky) |
| 15:20:20 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 15:23:19 | <int-e> | EvanR: I see you're embracing pure laziness. |
| 15:24:18 | × | simplystuart quits (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) (Ping timeout: 252 seconds) |
| 15:24:37 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 15:24:52 | → | simplystuart joins (~simplystu@c-75-75-152-164.hsd1.pa.comcast.net) |
| 15:25:13 | → | tromp joins (~textual@2001:1c00:3487:1b00:e568:6986:f662:22ea) |
| 15:25:40 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 15:26:27 | → | WorldControl joins (~juan@121.sub-75-246-203.myvzw.com) |
| 15:26:52 | × | WorldControl quits (~juan@121.sub-75-246-203.myvzw.com) (Client Quit) |
| 15:26:52 | × | Lycurgus quits (~juan@user/Lycurgus) (Client Quit) |
| 15:27:16 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 15:27:25 | → | Square2 joins (~Square@user/square) |
| 15:33:07 | × | lortabac quits (~lortabac@2a01:e0a:541:b8f0:55ab:e185:7f81:54a4) (Quit: WeeChat 4.5.2) |
| 15:37:52 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 15:38:06 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 15:40:16 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: irc.renjuan.org (juan@acm.org)) |
| 15:40:42 | → | gmg joins (~user@user/gehmehgeh) |
| 15:42:59 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 15:43:47 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 15:44:23 | → | cashew joins (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 15:45:15 | × | cashew quits (~cashewsta@pool-71-169-14-231.pghkny.fios.verizon.net) (Client Quit) |
| 15:50:09 | → | athan joins (~athan@syn-047-132-161-157.res.spectrum.com) |
| 15:56:17 | × | athan quits (~athan@syn-047-132-161-157.res.spectrum.com) (Quit: Konversation terminated!) |
| 15:56:29 | × | biberu quits (~biberu@user/biberu) (Read error: Connection reset by peer) |
| 15:57:05 | → | jespada_ joins (~jespada@2800:a4:2242:c500:5440:52e2:f14f:ac13) |
| 15:57:08 | × | SlackCoder quits (~SlackCode@remote.nationalgallery.org.ky) (Read error: Connection reset by peer) |
| 15:58:04 | × | jespada quits (~jespada@2800:a4:2242:c500:c3f:3826:75da:364f) (Ping timeout: 265 seconds) |
| 15:58:33 | → | jespada joins (~jespada@2800:a4:2242:c500:b1df:e407:a7ed:59f6) |
| 16:01:56 | × | jespada_ quits (~jespada@2800:a4:2242:c500:5440:52e2:f14f:ac13) (Ping timeout: 265 seconds) |
| 16:06:26 | → | comerijn joins (~merijn@77.242.116.146) |
| 16:07:19 | → | athan joins (~athan@syn-047-132-161-157.res.spectrum.com) |
| 16:08:40 | × | merijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 16:08:55 | × | athan quits (~athan@syn-047-132-161-157.res.spectrum.com) (Client Quit) |
| 16:09:54 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 248 seconds) |
| 16:10:52 | × | comerijn quits (~merijn@77.242.116.146) (Ping timeout: 252 seconds) |
| 16:11:02 | → | caubert joins (~caubert@user/caubert) |
| 16:13:29 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 16:16:31 | → | ft joins (~ft@p508db189.dip0.t-ipconnect.de) |
| 16:16:55 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 16:18:34 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 16:18:48 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 16:21:19 | → | ttybitnik joins (~ttybitnik@user/wolper) |
| 16:22:29 | → | weary-traveler joins (~user@user/user363627) |
| 16:22:45 | × | fp quits (~Thunderbi@2001:708:20:1406::10c5) (Ping timeout: 248 seconds) |
| 16:30:56 | × | sp1ff quits (~user@c-67-160-173-55.hsd1.wa.comcast.net) (Remote host closed the connection) |
| 16:31:56 | × | hololeap quits (~quassel@user/hololeap) (Quit: Bye) |
| 16:32:30 | → | hololeap joins (~quassel@user/hololeap) |
| 16:33:30 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 16:33:31 | × | tromp quits (~textual@2001:1c00:3487:1b00:e568:6986:f662:22ea) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 16:33:43 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 16:35:57 | → | euphores joins (~SASL_euph@user/euphores) |
| 16:46:55 | × | tv quits (~tv@user/tv) (Quit: derp) |
| 16:47:03 | × | chele quits (~chele@user/chele) (Remote host closed the connection) |
| 16:47:22 | → | tv joins (~tv@user/tv) |
| 16:49:55 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 16:53:31 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 16:55:24 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 16:56:02 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 16:58:23 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 268 seconds) |
| 16:59:00 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 17:03:00 | → | tromp joins (~textual@2001:1c00:3487:1b00:e568:6986:f662:22ea) |
| 17:09:55 | → | jespada_ joins (~jespada@2800:a4:2242:c500:50f:4d6c:d22f:958c) |
| 17:11:32 | × | jespada quits (~jespada@2800:a4:2242:c500:b1df:e407:a7ed:59f6) (Ping timeout: 265 seconds) |
| 17:14:10 | → | sprotte24 joins (~sprotte24@p200300d16f31a3008991520c06abff4a.dip0.t-ipconnect.de) |
| 17:16:08 | → | inline joins (~inline@ip-005-146-196-034.um05.pools.vodafone-ip.de) |
| 17:23:14 | × | tromp quits (~textual@2001:1c00:3487:1b00:e568:6986:f662:22ea) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:24:39 | → | machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net) |
| 17:26:34 | → | uncletim13[m] joins (~uncletim1@static.102.80.201.138.clients.your-server.de) |
| 17:28:06 | → | falafel joins (~falafel@2a0c:5a87:3104:8f01::f709) |
| 17:33:05 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 248 seconds) |
| 17:33:35 | → | tromp joins (~textual@2001:1c00:3487:1b00:e568:6986:f662:22ea) |
| 17:35:48 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 17:40:42 | × | sord937 quits (~sord937@gateway/tor-sasl/sord937) (Quit: sord937) |
| 17:42:04 | × | prdak quits (~Thunderbi@user/prdak) (Quit: prdak) |
| 17:42:22 | → | prdak joins (~Thunderbi@user/prdak) |
| 17:43:12 | × | m1dnight quits (~m1dnight@45.155.43.16) (Ping timeout: 276 seconds) |
| 17:43:46 | → | tzh joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 17:45:46 | trickard_ | is now known as trickard |
| 17:48:09 | → | myfirstname joins (~myfirstna@user/myfirstname) |
| 17:49:36 | × | Square2 quits (~Square@user/square) (Read error: Connection reset by peer) |
| 17:50:15 | → | tzh_ joins (~tzh@c-76-115-131-146.hsd1.or.comcast.net) |
| 17:50:22 | → | sp1ff joins (~user@c-67-160-173-55.hsd1.wa.comcast.net) |
| 17:50:29 | × | tzh quits (~tzh@c-76-115-131-146.hsd1.or.comcast.net) (Read error: Connection reset by peer) |
| 17:50:53 | → | Square2 joins (~Square@user/square) |
| 17:51:58 | × | uncletim13[m] quits (~uncletim1@static.102.80.201.138.clients.your-server.de) (Ping timeout: 240 seconds) |
| 17:51:58 | × | Tuplanolla quits (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) (Ping timeout: 240 seconds) |
| 17:52:12 | → | uncletim13[m] joins (~uncletim1@static.102.80.201.138.clients.your-server.de) |
| 17:52:36 | → | Tuplanolla joins (~Tuplanoll@91-159-69-59.elisa-laajakaista.fi) |
| 17:52:48 | × | ciadsyyyl^ quits (~ciadsyyyl@99-73-20-238.lightspeed.tukrga.sbcglobal.net) (Ping timeout: 252 seconds) |
| 18:00:44 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 260 seconds) |
| 18:01:58 | × | AlexZenon quits (~alzenon@5.139.233.5) (Ping timeout: 240 seconds) |
| 18:02:42 | → | r-sta joins (~r-sta@cpc142694-benw13-2-0-cust901.16-2.cable.virginm.net) |
| 18:03:10 | <r-sta> | hi, im wondering about how to do stack traces for profiling a <<loop>> error that im stuck trying to find in a large illegible piece of code |
| 18:03:22 | → | caubert joins (~caubert@user/caubert) |
| 18:03:49 | × | AlexNoo quits (~AlexNoo@5.139.233.5) (Ping timeout: 260 seconds) |
| 18:03:56 | <r-sta> | it is part of a machine learning experiment which retrains a parametric opperator by stochastic methods |
| 18:04:18 | <r-sta> | i have turned off random number random entropy source so that the error is reproducable |
| 18:04:31 | <r-sta> | but it only occurs under some certain parametrizations |
| 18:04:45 | <r-sta> | i cannot understand how this causes it to go down a looping branch of code |
| 18:04:58 | <r-sta> | but there must be some value dependant branching that i cant locate |
| 18:05:22 | <r-sta> | im looking for methods to step through subsequent function calls, so i can see the name of the function that is entering into a loop |
| 18:09:29 | × | falafel quits (~falafel@2a0c:5a87:3104:8f01::f709) (Remote host closed the connection) |
| 18:10:08 | → | jmcantrell joins (~weechat@user/jmcantrell) |
| 18:10:17 | <r-sta> | also, is there any way that a function can "seem" to loop, but actually not |
| 18:10:50 | <r-sta> | like, how far down an infine list would it evaluate before determining it was looping? |
| 18:11:34 | <myfirstname> | All I know if is using ghci's debugger and stepping thru it |
| 18:11:34 | <r-sta> | the reason for asking is because the error appeared after i added this; |
| 18:11:34 | <r-sta> | https://paste.tomsmeding.com/3NOfOw98 |
| 18:11:48 | <myfirstname> | know of* |
| 18:11:49 | <r-sta> | myfirstname: how is this done? |
| 18:12:05 | <myfirstname> | https://downloads.haskell.org/~ghc/7.4.1/docs/html/users_guide/ghci-debugger.html |
| 18:12:10 | <r-sta> | the above code i cant see how it could have an error, so i guess it must be somewhere else |
| 18:12:47 | <myfirstname> | The <<loop>> error is very frustrating and helpful though. would love a better method of handling it |
| 18:12:53 | <myfirstname> | unhelpful >_> |
| 18:13:09 | <r-sta> | ditto |
| 18:13:22 | <r-sta> | ok, so i just put like :break 2, and then :continue |
| 18:13:30 | <r-sta> | until i see something looping? |
| 18:15:21 | <r-sta> | hmm, if i do :break main |
| 18:15:26 | <r-sta> | it just says; |
| 18:15:50 | <r-sta> | ... [<unknown>] ghci> main |
| 18:15:51 | <r-sta> | Stopped in <exception thrown>, <unknown> |
| 18:15:51 | <r-sta> | _exception :: e = _ |
| 18:16:03 | <r-sta> | and then :continue gives; |
| 18:16:04 | <r-sta> | ... [<unknown>] ghci> :continue |
| 18:16:05 | <r-sta> | Stopped in <exception thrown>, <unknown> |
| 18:16:05 | <r-sta> | _exception :: e = _ |
| 18:16:06 | <r-sta> | ... [<unknown>] ghci> |
| 18:16:15 | <myfirstname> | I haven't used it much, and don't remember precisely how things work. I do remember getting it to work tho, just takes a bit of getting used to. |
| 18:16:39 | <r-sta> | this is utterly hopeless, i give up |
| 18:18:11 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 18:18:15 | × | r-sta quits (~r-sta@cpc142694-benw13-2-0-cust901.16-2.cable.virginm.net) (Quit: Client closed) |
| 18:19:22 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 18:23:10 | → | target_i joins (~target_i@user/target-i/x-6023099) |
| 18:23:27 | <int-e> | Oh, bye. Maybe this is a problem: https://paste.tomsmeding.com/AFAPO6lK |
| 18:25:19 | <int-e> | . o O ( most horrible zipper ) |
| 18:26:24 | × | myfirstname quits (~myfirstna@user/myfirstname) (Remote host closed the connection) |
| 18:27:20 | → | b7r6 joins (~b7r6@139.60.180.49) |
| 18:32:28 | → | haritz joins (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) |
| 18:32:28 | × | haritz quits (~hrtz@2a01:4b00:bc2e:7000:d5af:a266:ca31:5ef8) (Changing host) |
| 18:32:28 | → | haritz joins (~hrtz@user/haritz) |
| 18:34:29 | × | p3n quits (~p3n@217.198.124.246) (Ping timeout: 240 seconds) |
| 18:34:57 | → | p3n joins (~p3n@217.198.124.246) |
| 18:38:10 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 18:43:22 | <[exa]> | evenin' |
| 18:45:36 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
| 18:48:25 | <[exa]> | oh wow <<loop>> again :D apparently LLMs don't see any issue with doing `do {let x = f ( ... x ... ); ... }` because it works everywhere else |
| 18:49:22 | <int-e> | And it works in Haskell too ;-) |
| 18:49:33 | <[exa]> | :] |
| 18:50:02 | × | b7r6 quits (~b7r6@139.60.180.49) (Changing host) |
| 18:50:02 | → | b7r6 joins (~b7r6@user/b7r6) |
| 18:55:36 | → | takuan joins (~takuan@d8D86B9E9.access.telenet.be) |
| 18:57:48 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 19:00:02 | × | caconym74 quits (~caconym@user/caconym) (Quit: bye) |
| 19:00:42 | → | caconym74 joins (~caconym@user/caconym) |
| 19:02:09 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 248 seconds) |
| 19:02:12 | ← | uncletim13[m] parts (~uncletim1@static.102.80.201.138.clients.your-server.de) (User left) |
| 19:08:21 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 276 seconds) |
| 19:09:28 | × | ft quits (~ft@p508db189.dip0.t-ipconnect.de) (Ping timeout: 240 seconds) |
| 19:09:38 | → | ft joins (~ft@p508db189.dip0.t-ipconnect.de) |
| 19:12:32 | → | AlexNoo joins (~AlexNoo@5.139.233.5) |
| 19:13:14 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 19:17:10 | → | be8bcca2f3 joins (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 19:17:28 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 19:18:35 | → | ljdarj joins (~Thunderbi@user/ljdarj) |
| 19:19:26 | → | AlexZenon joins (~alzenon@5.139.233.5) |
| 19:21:24 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 260 seconds) |
| 19:22:10 | be8bcca2f3 | is now known as cashew |
| 19:22:21 | cashew | is now known as cashewstart |
| 19:22:27 | cashewstart | is now known as cashewstar |
| 19:22:58 | → | CiaoSen joins (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) |
| 19:26:17 | → | [b7r6] joins (~user@user/b7r6) |
| 19:26:38 | → | caubert joins (~caubert@user/caubert) |
| 19:27:02 | ← | cashewstar parts (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) (#haskell-beginners ) |
| 19:28:59 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 19:31:03 | → | be8bcca2f3 joins (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 19:31:03 | × | be8bcca2f3 quits (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) (Client Quit) |
| 19:31:48 | → | be8bcca2f3 joins (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 19:32:28 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 19:33:29 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 19:35:04 | → | caubert joins (~caubert@user/caubert) |
| 19:37:00 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 19:41:20 | × | Digit quits (~user@user/digit) (Ping timeout: 252 seconds) |
| 19:43:07 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: irc.renjuan.org (juan@acm.org)) |
| 19:43:59 | → | Digit joins (~user@user/digit) |
| 19:44:26 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 19:46:11 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 19:47:08 | × | inline quits (~inline@ip-005-146-196-034.um05.pools.vodafone-ip.de) (Quit: Leaving) |
| 19:48:58 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 19:51:43 | <dminuoso> | [exa]: It absolutely does, the <<loop>> detection is just broken. Disable it and just wait a while, it will get the right response, I promise. |
| 19:51:55 | <dminuoso> | Good luck proving me wrong! |
| 19:54:00 | × | takuan quits (~takuan@d8D86B9E9.access.telenet.be) (Remote host closed the connection) |
| 19:54:54 | [exa] | dramatically collapses the arithmetic hierarchy! dminuoso's arguments are squished under the weight of Π₄ Σ₅ and higher orders! enumerated! |
| 19:56:54 | × | be8bcca2f3 quits (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) (Quit: leaving) |
| 19:57:35 | <dminuoso> | I feel eternal, somehow. |
| 19:57:47 | <probie> | Apart from easy to find typos and LLM generated code, how often do people encounter <<loop>> in practice? It just doesn't seem like something that comes up particularly often, and most other languages just actually loop if you have a similar mistake |
| 19:58:31 | × | noctuks quits (~noctux@user/noctux) (Quit: WeeChat 4.6.2) |
| 19:58:31 | × | yushyin quits (zv27G51Tbg@mail.karif.server-speed.net) (Quit: WeeChat 4.6.2) |
| 19:58:31 | × | s4msung quits (~s4msung@user/s4msung) (Quit: s4msung) |
| 19:58:39 | <dminuoso> | probie: Mostly during my beginner time. Nowadays? Havent had one in years, but thats probably because I also avoid writing non-trivial algorithms in all pure code for a bunch of reasons |
| 19:59:07 | → | noctuks joins (aVjnm6iDRi@user/noctux) |
| 19:59:11 | → | yushyin joins (rAA5wfgz8R@mail.karif.server-speed.net) |
| 19:59:11 | → | s4msung joins (gjllrwEMMC@user/s4msung) |
| 20:00:01 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:00:18 | <[exa]> | probie: in the several occasions I saw here it was always the case of `let x = something x` accident |
| 20:00:41 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 20:00:44 | <dminuoso> | It happens more often in Haskell because our loops do not use structured primitives, in say C++ you would rarely use a jmp/goto but rather a for loop |
| 20:01:30 | <[exa]> | (to me it looks like that the coding style of haskellers seems to somehow adjust itself towards very distinguishable identifiers with time, thus preventing the accident) |
| 20:01:56 | <dminuoso> | Now of course, if most loop-like structured were replaced by recursion schemes, its very conceivable that code producing <<loop>> errors would fail to pass the type checker |
| 20:02:31 | → | ndudaev joins (~ndudaev@user/ndudaev) |
| 20:02:41 | × | weary-traveler quits (~user@user/user363627) (Remote host closed the connection) |
| 20:03:14 | <[exa]> | yeah recursion schemes help |
| 20:03:52 | <EvanR> | probie, when you're writing a algorithm by hand and don't have a proof it terminates, it might loop kind of easily |
| 20:04:05 | <dminuoso> | Most of my bugs in recent years were all because of misused unsafePerformIO or careless explicit IO unwrapping... |
| 20:04:09 | <dminuoso> | I sense a pattern emerging... |
| 20:04:11 | <EvanR> | using canned recursion combinators helps avoid it |
| 20:04:21 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 20:05:08 | <dminuoso> | EvanR: I like debugging my algorithms, so slapping IO onto them is fine by me. :p |
| 20:05:28 | × | ndudaev quits (~ndudaev@user/ndudaev) (Client Quit) |
| 20:05:30 | <[exa]> | also the point-les^H^H^Hfree golfing competition contributes indirectly a lot (hard to re-use the loop you can't name it) |
| 20:05:53 | → | ndudaev joins (~ndudaev@user/ndudaev) |
| 20:06:22 | <haskellbridge> | <magic_rb> tomsmeding remember the weird TH code you helped me with? i fiinshed it up, it works: https://paste.tomsmeding.com/7OrbW5rC |
| 20:06:42 | <__monty__> | dminuoso: Non-trivial algorithms still in Haskell or something else? |
| 20:06:51 | <dminuoso> | __monty__: In Haskell. |
| 20:07:22 | × | ndudaev quits (~ndudaev@user/ndudaev) (Client Quit) |
| 20:07:42 | × | trickard quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 20:07:54 | → | ndudaev joins (~ndudaev@user/ndudaev) |
| 20:07:55 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 20:08:43 | <tomsmeding> | magic_rb: if you do `storeName = pure . ConT . mkNameS $ baseName ++ "Store"` then you can write `$storeName` instead of `$(pure (ConT storeName))` |
| 20:09:02 | <haskellbridge> | <magic_rb> yeah i need to clean it up |
| 20:09:06 | <haskellbridge> | <magic_rb> im a bit tired for that lol |
| 20:09:07 | <tomsmeding> | (`$x` is sugar for `$(pure x)`) |
| 20:09:14 | <haskellbridge> | <magic_rb> oh |
| 20:09:17 | <haskellbridge> | <magic_rb> okay that i didnt know |
| 20:09:19 | <haskellbridge> | <magic_rb> thanks |
| 20:09:34 | <tomsmeding> | questionable if it's worth it here |
| 20:10:05 | <dminuoso> | Well you could define a `contT = pure . ContT` helper that might reduce a lot of clutter |
| 20:10:12 | × | ndudaev quits (~ndudaev@user/ndudaev) (Client Quit) |
| 20:10:26 | <tomsmeding> | dminuoso: you made the same typo twice in a row |
| 20:10:35 | <tomsmeding> | (it's ConT) |
| 20:10:46 | <dminuoso> | What can I say, Im mtl damaged goods. |
| 20:10:52 | <dminuoso> | Or transformers, whatever. |
| 20:10:56 | <tomsmeding> | magic_rb: are you happy with your first real TH code |
| 20:10:58 | <tomsmeding> | dminuoso: heh |
| 20:11:27 | → | pavonia joins (~user@user/siracusa) |
| 20:11:35 | <haskellbridge> | <magic_rb> im happy it works, but uh |
| 20:11:41 | <tomsmeding> | turns out conT already exists https://hackage.haskell.org/package/template-haskell-2.18.0.0/docs/Language-Haskell-TH-Lib-Internal.html#v:conT |
| 20:11:52 | <haskellbridge> | <magic_rb> iif youre asking whether i want to write more TH code, the answer is _yesn't_ |
| 20:11:56 | <tomsmeding> | :) |
| 20:12:10 | <dminuoso> | I wonder, why use caseE rather than CaseE here? |
| 20:12:11 | <tomsmeding> | it's not super pleasant, no |
| 20:12:16 | <haskellbridge> | <magic_rb> yes because its extremely powerful and the problem it solved for me is wonderful |
| 20:12:21 | <haskellbridge> | <magic_rb> but no because its horrible |
| 20:12:21 | <tomsmeding> | dminuoso: avoid a `pure` |
| 20:12:22 | <dminuoso> | It seems like there's a lot of monadic helper usages without any effects |
| 20:12:27 | <tomsmeding> | yes |
| 20:12:43 | <tomsmeding> | and they also take monadic arguments that they just execute once |
| 20:12:45 | <dminuoso> | tomsmeding: How does caseE avoid a pure? |
| 20:12:54 | <dminuoso> | There's quite a few unnecessary pure that would disappear with CaseE |
| 20:12:56 | <dminuoso> | For instance |
| 20:13:00 | <tomsmeding> | no the other way round |
| 20:13:09 | <tomsmeding> | in a splice $(x), the x needs to be of type Q Exp |
| 20:13:25 | <tomsmeding> | so if you want to generate a case expression to splice in, you'd write $(pure (CaseE .....)) |
| 20:13:31 | <glguy> | dminuoso: The whole of the template haskell API is set up to make it possible to use it without explicit binds. Lots of the things are just trivially wrapped to reduce monad noise |
| 20:13:36 | <tomsmeding> | caseE is convenience |
| 20:13:43 | × | b7r6 quits (~b7r6@user/b7r6) (Quit: Client closed) |
| 20:13:44 | <tomsmeding> | that ^ |
| 20:13:58 | <haskellbridge> | <magic_rb> oh im missing an instance still, grr |
| 20:14:06 | <tomsmeding> | more TH! :D |
| 20:14:08 | × | jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 272 seconds) |
| 20:14:23 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Quit: Leaving...) |
| 20:14:31 | <haskellbridge> | <magic_rb> ! D: |
| 20:14:33 | <dminuoso> | Im just not happy with TH at all. :( |
| 20:14:54 | <tomsmeding> | magic_rb: wait you can use a splice in a pattern position? |
| 20:14:59 | <haskellbridge> | <magic_rb> its hard to write these instances normally, TH makes it harder |
| 20:15:11 | <haskellbridge> | <magic_rb> tomsmeding idk youre the expert |
| 20:15:18 | <haskellbridge> | <magic_rb> it works, so i guess so lmao |
| 20:15:23 | <dminuoso> | tomsmeding: You mean quotation, no? |
| 20:15:24 | <tomsmeding> | then you can simplify the caseE code |
| 20:15:30 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:15:33 | <tomsmeding> | dminuoso: quotes are [| |], splices are $( ) |
| 20:15:38 | <tomsmeding> | quotes produce monadic values too, by the way |
| 20:15:46 | <dminuoso> | tomsmeding: Maybe we're looking at different parts then. What are you staring at? |
| 20:16:07 | <tomsmeding> | dminuoso: you were asking about 'caseE'; there are only two occurrences of 'caseE', and they are in a splice |
| 20:16:23 | <dminuoso> | tomsmeding: No I meant regarding quotation, I was looking at the [| val |] parts |
| 20:16:28 | <tomsmeding> | ah |
| 20:16:33 | <tomsmeding> | well [| |] returns a Q Exp |
| 20:16:35 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 20:16:51 | <tomsmeding> | so with CaseE, that would need to be [| val |] >>= \exp -> pure (CaseE exp ....) |
| 20:17:03 | <tomsmeding> | which is unwieldy, so caseE exists |
| 20:17:04 | <dminuoso> | Nevermind, we've got our wires crossed. |
| 20:17:12 | → | jmcantrell joins (~weechat@user/jmcantrell) |
| 20:17:30 | <glguy> | It's often much more pleasant to use th-abstraction instead of using `reify` directly https://hackage.haskell.org/package/th-abstraction-0.7.1.0/docs/Language-Haskell-TH-Datatype.html |
| 20:19:07 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 20:19:09 | <haskellbridge> | <magic_rb> i just want to state, you guys have completely lost me :) but no worries, ill bother you some other when im not falling asleep |
| 20:19:58 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 20:20:00 | → | ndudaev joins (~ndudaev@user/ndudaev) |
| 20:20:32 | <tomsmeding> | magic_rb: I think this should work too (but untested) https://paste.tomsmeding.com/N9x3Eopo |
| 20:20:47 | <tomsmeding> | only difference is in the generated ExplGet instance methods, I'm using a normal case expression instead of caseE |
| 20:21:11 | <tomsmeding> | I used caseE before because I thought that $() splices could only appear in expression position, not in pattern position, but you're using them in pattern position in the arguments to explExists and explGet |
| 20:21:18 | <tomsmeding> | so apparently this is allowed :p |
| 20:24:41 | × | ndudaev quits (~ndudaev@user/ndudaev) (Client Quit) |
| 20:27:28 | × | euphores quits (~SASL_euph@user/euphores) (Ping timeout: 240 seconds) |
| 20:28:08 | × | jespada_ quits (~jespada@2800:a4:2242:c500:50f:4d6c:d22f:958c) (Quit: My Mac has gone to sleep. ZZZzzz…) |
| 20:29:22 | × | machinedgod quits (~machinedg@d75-159-126-101.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 20:30:04 | <haskellbridge> | <magic_rb> tomsmeding yeah that works too, thanks :) |
| 20:30:21 | → | b7r6 joins (~b7r6@139.60.180.49) |
| 20:30:42 | × | b7r6 quits (~b7r6@139.60.180.49) (Client Quit) |
| 20:31:03 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:32:19 | <glguy> | https://paste.tomsmeding.com/Amxhzbyc |
| 20:33:27 | <glguy> | It's easier to read if you name a few things and use the monad helpers ^ |
| 20:35:20 | → | be8bcca2f3 joins (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) |
| 20:35:28 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 20:35:51 | <haskellbridge> | <magic_rb> glguy yeah im working on that |
| 20:35:54 | × | be8bcca2f3 quits (~be8bcca2f@pool-71-169-14-231.pghkny.fios.verizon.net) (Changing host) |
| 20:35:54 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 20:35:54 | <haskellbridge> | <magic_rb> i came up with https://paste.tomsmeding.com/mukbO2zZ |
| 20:36:06 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Client Quit) |
| 20:36:24 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 20:38:02 | <haskellbridge> | <magic_rb> applied your changes too, thanks |
| 20:38:14 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 260 seconds) |
| 20:41:34 | <haskellbridge> | <magic_rb> works like a charm, thanks a lot everyone, i can continue with the combat system |
| 20:46:26 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 20:46:45 | → | gehmehgeh joins (~user@user/gehmehgeh) |
| 20:47:10 | × | gmg quits (~user@user/gehmehgeh) (Ping timeout: 244 seconds) |
| 20:48:12 | gehmehgeh | is now known as gmg |
| 20:51:04 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 20:53:34 | × | jmcantrell quits (~weechat@user/jmcantrell) (Ping timeout: 260 seconds) |
| 20:55:31 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Read error: Connection reset by peer) |
| 20:56:23 | → | Square3 joins (~Square4@user/square) |
| 20:59:21 | × | Square2 quits (~Square@user/square) (Ping timeout: 252 seconds) |
| 20:59:40 | trickard_ | is now known as trickard |
| 21:01:25 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 21:01:49 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:03:07 | → | caubert joins (~caubert@user/caubert) |
| 21:03:57 | → | Frostillicus joins (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) |
| 21:04:49 | → | jmcantrell joins (~weechat@user/jmcantrell) |
| 21:06:14 | × | prdak quits (~Thunderbi@user/prdak) (Ping timeout: 260 seconds) |
| 21:06:39 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 276 seconds) |
| 21:08:36 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 276 seconds) |
| 21:10:05 | × | trickard quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 21:10:19 | → | trickard joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 21:11:13 | × | Raito_Bezarius quits (~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) (Ping timeout: 245 seconds) |
| 21:13:48 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 276 seconds) |
| 21:16:06 | × | notzmv quits (~umar@user/notzmv) (Remote host closed the connection) |
| 21:17:11 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:22:50 | × | Spawns_Carpeting quits (~mobile@user/spawns-carpeting/x-6969421) (Quit: ZNC 1.8.2+deb3.1+deb12u1 - https://znc.in) |
| 21:23:58 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 21:24:21 | × | CiaoSen quits (~Jura@2a02:8071:64e1:da0:5a47:caff:fe78:33db) (Ping timeout: 252 seconds) |
| 21:24:55 | → | Raito_Bezarius joins (~Raito@libera/contributor/wireguard.tunneler.raito-bezarius) |
| 21:26:08 | → | Spawns_Carpeting joins (~mobile@user/spawns-carpeting/x-6969421) |
| 21:27:07 | → | prdak joins (~Thunderbi@user/prdak) |
| 21:33:04 | × | prdak quits (~Thunderbi@user/prdak) (Remote host closed the connection) |
| 21:35:13 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 21:35:14 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:36:03 | → | caubert joins (~caubert@user/caubert) |
| 21:37:24 | × | michalz quits (~michalz@185.246.207.205) (Remote host closed the connection) |
| 21:39:47 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 21:40:58 | × | caubert quits (~caubert@user/caubert) (Ping timeout: 240 seconds) |
| 21:46:48 | → | nebular joins (~nebular@104.28.228.94) |
| 21:48:35 | × | nebular quits (~nebular@104.28.228.94) (Remote host closed the connection) |
| 21:49:03 | → | nebular joins (~nebular@104.28.228.94) |
| 21:50:04 | × | target_i quits (~target_i@user/target-i/x-6023099) (Quit: leaving) |
| 21:50:38 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 21:53:03 | × | tromp quits (~textual@2001:1c00:3487:1b00:e568:6986:f662:22ea) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 21:55:10 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 252 seconds) |
| 21:55:58 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Ping timeout: 240 seconds) |
| 22:04:09 | → | Guest93 joins (~Guest93@29.28.219.201.static.anycast.cnt-grms.ec) |
| 22:05:06 | × | nebular quits (~nebular@104.28.228.94) (Remote host closed the connection) |
| 22:06:10 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:10:39 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 22:11:18 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 272 seconds) |
| 22:12:59 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Client Quit) |
| 22:13:32 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 22:14:34 | → | jreicher joins (~user@user/jreicher) |
| 22:16:16 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Client Quit) |
| 22:16:31 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 22:16:45 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 22:21:09 | × | trickard quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 22:21:23 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 22:21:33 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:21:37 | → | caubert joins (~caubert@user/caubert) |
| 22:22:42 | → | ss4 joins (~wootehfoo@user/wootehfoot) |
| 22:22:49 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Ping timeout: 260 seconds) |
| 22:23:54 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 22:26:19 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 22:28:48 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 22:30:00 | × | amadaluzia quits (~amadaluzi@user/amadaluzia) (Quit: ZNC 1.10.0 - https://znc.in) |
| 22:33:32 | × | Smiles quits (uid551636@id-551636.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 22:34:28 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Ping timeout: 240 seconds) |
| 22:37:03 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:38:59 | × | ystael quits (~ystael@user/ystael) (Ping timeout: 260 seconds) |
| 22:41:28 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 22:47:35 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 22:52:26 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 22:53:20 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 22:54:12 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Ping timeout: 252 seconds) |
| 22:58:58 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 23:00:25 | × | rvalue quits (~rvalue@about/hackers/rvalue) (Remote host closed the connection) |
| 23:00:56 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 23:05:46 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 23:10:19 | × | acidjnk quits (~acidjnk@p200300d6e70b66275008fd72822e7c06.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 23:10:30 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:11:14 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 260 seconds) |
| 23:15:09 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 260 seconds) |
| 23:25:22 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Ping timeout: 252 seconds) |
| 23:25:58 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:28:24 | × | trickard_ quits (~trickard@cpe-62-98-47-163.wireline.com.au) (Read error: Connection reset by peer) |
| 23:28:38 | → | trickard_ joins (~trickard@cpe-62-98-47-163.wireline.com.au) |
| 23:30:57 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 265 seconds) |
| 23:33:01 | → | machinedgod joins (~machinedg@d75-159-126-101.abhsia.telus.net) |
| 23:35:30 | × | Frostillicus quits (~Frostilli@pool-71-174-119-69.bstnma.fios.verizon.net) (Ping timeout: 276 seconds) |
| 23:40:31 | → | peterbecich joins (~Thunderbi@syn-047-229-123-186.res.spectrum.com) |
| 23:40:34 | × | humasect quits (~humasect@dyn-192-249-132-90.nexicom.net) (Remote host closed the connection) |
| 23:41:20 | × | sprotte24 quits (~sprotte24@p200300d16f31a3008991520c06abff4a.dip0.t-ipconnect.de) (Quit: Leaving) |
| 23:41:21 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:43:18 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 23:45:28 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 240 seconds) |
| 23:47:56 | → | ljdarj1 joins (~Thunderbi@user/ljdarj) |
| 23:47:58 | × | be8bcca2f3 quits (~be8bcca2f@user/be8bcca2f3) (Ping timeout: 240 seconds) |
| 23:49:05 | × | peterbecich quits (~Thunderbi@syn-047-229-123-186.res.spectrum.com) (Ping timeout: 248 seconds) |
| 23:51:44 | × | ljdarj quits (~Thunderbi@user/ljdarj) (Ping timeout: 265 seconds) |
| 23:51:44 | ljdarj1 | is now known as ljdarj |
| 23:51:49 | → | humasect joins (~humasect@dyn-192-249-132-90.nexicom.net) |
| 23:53:15 | → | be8bcca2f3 joins (~be8bcca2f@user/be8bcca2f3) |
| 23:55:02 | → | merijn joins (~merijn@host-vr.cgnat-g.v4.dfn.nl) |
| 23:59:26 | × | merijn quits (~merijn@host-vr.cgnat-g.v4.dfn.nl) (Ping timeout: 244 seconds) |
| 23:59:29 | × | ss4 quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 23:59:33 | → | metabulation joins (~wootehfoo@user/wootehfoot) |
All times are in UTC on 2025-07-21.