Logs on 2023-07-29 (liberachat/#haskell)
| 00:00:17 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 00:02:20 | × | oo_miguel quits (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 244 seconds) |
| 00:03:17 | × | forell quits (~forell@user/forell) (Ping timeout: 245 seconds) |
| 00:04:10 | → | forell joins (~forell@user/forell) |
| 00:04:32 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 00:08:58 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 00:09:39 | × | lyxia quits (~lyxia@poisson.chat) (Quit: WeeChat 4.0.2) |
| 00:12:17 | × | travisb_ quits (~travisb@2600:1700:7990:24e0:a3e2:8ce:b0a3:7ccb) (Remote host closed the connection) |
| 00:12:30 | → | travisb_ joins (~travisb@2600:1700:7990:24e0:1a06:df99:987c:76cd) |
| 00:15:01 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 245 seconds) |
| 00:15:15 | × | mima quits (~mmh@ppp-212-114-180-85.dynamic.mnet-online.de) (Ping timeout: 244 seconds) |
| 00:23:10 | → | thegeekinside joins (~thegeekin@189.217.90.138) |
| 00:28:19 | × | thegeekinside quits (~thegeekin@189.217.90.138) (Remote host closed the connection) |
| 00:32:28 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 00:32:48 | × | byte quits (~byte@user/byte) (Quit: Quitting...) |
| 00:33:08 | → | byte joins (~byte@user/byte) |
| 00:33:16 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 00:37:47 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 264 seconds) |
| 00:49:32 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 00:49:32 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 00:49:32 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:50:49 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 00:53:46 | × | Natch quits (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) (Ping timeout: 245 seconds) |
| 00:56:27 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 00:57:19 | → | Natch joins (~natch@c-9e07225c.038-60-73746f7.bbcust.telenor.se) |
| 01:02:06 | → | cstm[m] joins (~cstmmatri@2001:470:69fc:105::2:f76f) |
| 01:02:33 | cstm[m] | is now known as cstml[m] |
| 01:02:37 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 260 seconds) |
| 01:08:30 | × | forell quits (~forell@user/forell) (Quit: ZNC - https://znc.in) |
| 01:11:05 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:12:11 | → | forell joins (~forell@user/forell) |
| 01:13:30 | → | qqq joins (~qqq@92.43.167.61) |
| 01:17:12 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:24:29 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 244 seconds) |
| 01:30:35 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 264 seconds) |
| 01:37:26 | → | merijn joins (~merijn@088-129-128-083.dynamic.caiway.nl) |
| 01:41:00 | → | jsomedon joins (uid606872@id-606872.hampstead.irccloud.com) |
| 01:42:03 | × | merijn quits (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 244 seconds) |
| 01:42:08 | ← | jsomedon parts (uid606872@id-606872.hampstead.irccloud.com) () |
| 01:49:48 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 244 seconds) |
| 01:54:58 | × | aforemny_ quits (~aforemny@2001:9e8:6ce2:4f00:57f9:d120:56d4:9724) (Ping timeout: 244 seconds) |
| 01:55:13 | → | aforemny joins (~aforemny@i59F516EC.versanet.de) |
| 02:03:06 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 02:07:56 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 02:11:56 | × | jero98772 quits (~jero98772@2800:484:1d7f:5d36::1) (Ping timeout: 246 seconds) |
| 02:11:58 | × | forell quits (~forell@user/forell) (Quit: ZNC - https://znc.in) |
| 02:15:26 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 02:16:41 | × | td_ quits (~td@i53870935.versanet.de) (Ping timeout: 245 seconds) |
| 02:18:47 | → | td_ joins (~td@i5387090D.versanet.de) |
| 02:18:49 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 02:18:49 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 02:18:49 | finn_elija | is now known as FinnElija |
| 02:25:09 | → | jero98772 joins (~jero98772@2800:484:1d7f:5d36::1) |
| 02:35:36 | → | idgaen joins (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 02:35:54 | × | bratwurst quits (~dfadsva@2604:3d09:207f:f650::c3b) (Ping timeout: 260 seconds) |
| 02:37:18 | → | bratwurst joins (~dfadsva@2604:3d09:207f:f650::c3b) |
| 02:37:24 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 02:39:23 | → | razetime joins (~quassel@117.193.5.197) |
| 02:39:41 | → | forell joins (~forell@user/forell) |
| 02:39:42 | × | bratwurst quits (~dfadsva@2604:3d09:207f:f650::c3b) (Client Quit) |
| 02:42:42 | × | terrorjack quits (~terrorjac@2a01:4f8:c17:87f8::) (Quit: The Lounge - https://thelounge.chat) |
| 02:44:06 | → | terrorjack joins (~terrorjac@2a01:4f8:c17:87f8::) |
| 02:45:46 | × | forell quits (~forell@user/forell) (Quit: ZNC - https://znc.in) |
| 02:47:11 | → | seeg123456 joins (~seeg12345@64.176.64.83) |
| 02:55:53 | × | ft quits (~ft@p3e9bc61e.dip0.t-ipconnect.de) (Ping timeout: 258 seconds) |
| 02:57:28 | → | ft joins (~ft@p4fc2a59a.dip0.t-ipconnect.de) |
| 03:05:22 | → | forell joins (~forell@user/forell) |
| 03:12:14 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 03:17:38 | × | mvk quits (~mvk@2607:fea8:5c9a:a600::1c6d) (Ping timeout: 244 seconds) |
| 03:17:59 | × | L29Ah quits (~L29Ah@wikipedia/L29Ah) (Ping timeout: 264 seconds) |
| 03:18:56 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 250 seconds) |
| 03:21:03 | → | talismanick joins (~user@76.133.152.122) |
| 03:21:46 | × | jero98772 quits (~jero98772@2800:484:1d7f:5d36::1) (Ping timeout: 244 seconds) |
| 03:32:23 | → | aforemny_ joins (~aforemny@i59F516E5.versanet.de) |
| 03:32:48 | × | aforemny quits (~aforemny@i59F516EC.versanet.de) (Ping timeout: 250 seconds) |
| 03:32:58 | × | razetime quits (~quassel@117.193.5.197) (Remote host closed the connection) |
| 03:33:13 | → | jero98772 joins (~jero98772@2800:484:1d7f:5d36::1) |
| 03:35:57 | × | szkl quits (uid110435@id-110435.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 03:37:28 | × | sm[i] quits (~sm@2601:196:4b80:3a40:65:7c1f:38cd:576) (Quit: sm[i]) |
| 03:40:49 | × | travisb_ quits (~travisb@2600:1700:7990:24e0:1a06:df99:987c:76cd) (Remote host closed the connection) |
| 03:41:06 | → | travisb_ joins (~travisb@2600:1700:7990:24e0:1a06:df99:987c:76cd) |
| 03:41:53 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 258 seconds) |
| 03:43:38 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
| 03:44:40 | → | hughjfchen92 joins (~hughjfche@104.208.72.114) |
| 03:46:39 | × | hughjfchen92 quits (~hughjfche@104.208.72.114) (Client Quit) |
| 03:48:22 | → | hughjfchen55 joins (~hughjfche@104.208.72.114) |
| 03:50:01 | × | byte quits (~byte@user/byte) (Quit: Quitting...) |
| 03:50:39 | × | hughjfchen55 quits (~hughjfche@104.208.72.114) (Client Quit) |
| 03:51:34 | × | hughjfchen quits (~hughjfche@vmi556545.contaboserver.net) (Quit: WeeChat 3.7.1) |
| 03:51:53 | → | hughjfchen joins (~hughjfche@vmi556545.contaboserver.net) |
| 03:54:04 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 03:57:52 | × | forell quits (~forell@user/forell) (Ping timeout: 245 seconds) |
| 03:58:47 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 264 seconds) |
| 04:05:23 | × | xff0x quits (~xff0x@2405:6580:b080:900:f296:7c8e:ce20:8b85) (Ping timeout: 264 seconds) |
| 04:05:47 | → | xff0x joins (~xff0x@178.255.149.135) |
| 04:11:43 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 04:13:09 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 04:16:16 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 04:17:34 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 244 seconds) |
| 04:30:34 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 04:31:18 | × | xff0x quits (~xff0x@178.255.149.135) (Ping timeout: 250 seconds) |
| 04:32:19 | → | codaraxis__ joins (~codaraxis@user/codaraxis) |
| 04:33:01 | → | xff0x joins (~xff0x@2405:6580:b080:900:3719:1952:9146:1372) |
| 04:35:31 | × | codaraxis quits (~codaraxis@user/codaraxis) (Ping timeout: 246 seconds) |
| 04:37:14 | → | lambdap237 joins (~lambdap@static.167.190.119.168.clients.your-server.de) |
| 04:37:26 | → | notzmv joins (~zmv@user/notzmv) |
| 04:39:21 | → | byte joins (~byte@user/byte) |
| 04:40:13 | × | lambdap237 quits (~lambdap@static.167.190.119.168.clients.your-server.de) (Client Quit) |
| 04:40:34 | → | lambdap237 joins (~lambdap@static.167.190.119.168.clients.your-server.de) |
| 04:49:30 | <hgolden> | hi byorgey: do you recommend a particular editor or IDE for doing CIS 194? I have tried VS Code, but it doesn't handle .lhs very well. |
| 04:51:12 | → | trev joins (~trev@user/trev) |
| 04:58:36 | → | internatetional joins (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 04:58:49 | × | internatetional quits (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Client Quit) |
| 05:00:41 | → | internatetional joins (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 05:01:53 | → | Tuplanolla joins (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) |
| 05:04:56 | → | Pickchea joins (~private@user/pickchea) |
| 05:08:30 | → | flounders joins (~flounders@24.246.133.1) |
| 05:12:54 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 250 seconds) |
| 05:15:56 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 05:20:14 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 246 seconds) |
| 05:28:50 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 05:32:41 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 05:34:16 | → | cjb joins (~cjb@user/cjb) |
| 05:34:35 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 258 seconds) |
| 05:36:10 | → | simikando joins (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 05:38:04 | ← | seeg123456 parts (~seeg12345@64.176.64.83) () |
| 05:46:11 | × | cjb quits (~cjb@user/cjb) (Quit: rcirc on GNU Emacs 28.2) |
| 05:48:00 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 05:48:38 | → | lisbeths joins (uid135845@id-135845.lymington.irccloud.com) |
| 05:52:36 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 258 seconds) |
| 06:00:47 | × | maerwald quits (~maerwald@user/maerwald) (Quit: gone) |
| 06:03:48 | ← | maerwald[m] parts (~maerwaldm@2001:470:69fc:105::1ee) () |
| 06:08:48 | × | simikando quits (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Ping timeout: 250 seconds) |
| 06:17:27 | × | idgaen quits (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2) |
| 06:20:01 | × | shapr quits (~user@2600:1700:c640:3100:54fd:7954:acad:5050) (Ping timeout: 244 seconds) |
| 06:21:16 | → | oneeyedalien joins (~oneeyedal@user/oneeyedalien) |
| 06:26:01 | → | merijn joins (~merijn@088-129-128-083.dynamic.caiway.nl) |
| 06:27:58 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 06:30:33 | × | merijn quits (~merijn@088-129-128-083.dynamic.caiway.nl) (Ping timeout: 258 seconds) |
| 06:30:40 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Read error: Connection reset by peer) |
| 06:37:59 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 06:41:41 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 06:46:55 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 06:47:55 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 244 seconds) |
| 07:02:01 | → | oo_miguel joins (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
| 07:02:13 | → | acidjnk joins (~acidjnk@p200300d6e7072f7488c486b520f19958.dip0.t-ipconnect.de) |
| 07:05:59 | → | simikando joins (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 07:07:33 | × | darchitect quits (~darchitec@2a00:23c6:3584:df01:ace3:21db:4a0c:96b1) (Ping timeout: 244 seconds) |
| 07:07:41 | × | flounders quits (~flounders@24.246.133.1) (Ping timeout: 246 seconds) |
| 07:09:42 | → | darchitect joins (~darchitec@2a00:23c6:3584:df01:eb12:93bf:8333:4511) |
| 07:11:07 | → | dobblego joins (~dibblego@116-255-1-151.ip4.superloop.au) |
| 07:11:07 | × | dobblego quits (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 07:11:07 | → | dobblego joins (~dibblego@haskell/developer/dibblego) |
| 07:11:40 | dobblego | is now known as dibblego |
| 07:19:09 | → | forell joins (~forell@user/forell) |
| 07:22:32 | × | oo_miguel quits (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 244 seconds) |
| 07:28:26 | → | mima joins (~mmh@ppp-212-114-180-15.dynamic.mnet-online.de) |
| 07:30:42 | × | dibblego quits (~dibblego@haskell/developer/dibblego) (Ping timeout: 250 seconds) |
| 07:31:02 | → | dibblego joins (~dibblego@116-255-1-151.ip4.superloop.au) |
| 07:31:02 | × | dibblego quits (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 07:31:02 | → | dibblego joins (~dibblego@haskell/developer/dibblego) |
| 07:32:31 | → | sm[i] joins (~sm@2601:196:4b80:3a40:65:7c1f:38cd:576) |
| 07:37:51 | → | misterfish joins (~misterfis@178.228.71.213) |
| 07:39:57 | × | mima quits (~mmh@ppp-212-114-180-15.dynamic.mnet-online.de) (Ping timeout: 245 seconds) |
| 07:45:07 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 07:48:22 | × | acidjnk quits (~acidjnk@p200300d6e7072f7488c486b520f19958.dip0.t-ipconnect.de) (Ping timeout: 244 seconds) |
| 07:50:05 | → | mima joins (~mmh@ppp-212-114-180-15.dynamic.mnet-online.de) |
| 07:53:30 | → | mango joins (~finn@2001:861:5863:3d50:4ca1:d4a3:9017:987c) |
| 07:54:15 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 07:56:14 | → | gmg joins (~user@user/gehmehgeh) |
| 07:57:16 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 07:58:46 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 245 seconds) |
| 08:00:07 | <sm> | ghcid I'd guess |
| 08:00:09 | × | econo_ quits (uid147250@id-147250.tinside.irccloud.com) (Quit: Connection closed for inactivity) |
| 08:01:28 | → | _ht joins (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) |
| 08:01:47 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 258 seconds) |
| 08:02:24 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 08:03:08 | × | simikando quits (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Quit: Leaving) |
| 08:04:15 | × | gmg quits (~user@user/gehmehgeh) (Remote host closed the connection) |
| 08:04:19 | × | mima quits (~mmh@ppp-212-114-180-15.dynamic.mnet-online.de) (Ping timeout: 260 seconds) |
| 08:04:57 | → | gmg joins (~user@user/gehmehgeh) |
| 08:05:14 | × | oneeyedalien quits (~oneeyedal@user/oneeyedalien) (Quit: Leaving) |
| 08:05:40 | → | acidjnk joins (~acidjnk@p200300d6e7072f74a48c7e6a1dd36c06.dip0.t-ipconnect.de) |
| 08:05:51 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.or.comcast.net) (Quit: zzz) |
| 08:05:56 | × | ubert quits (~Thunderbi@178.165.173.150.wireless.dyn.drei.com) (Ping timeout: 244 seconds) |
| 08:12:58 | → | flounders joins (~flounders@24.246.133.1) |
| 08:14:04 | → | fendor joins (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) |
| 08:14:35 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 08:19:02 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:d004:e151:c029:6b7c) (Remote host closed the connection) |
| 08:19:07 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 245 seconds) |
| 08:20:24 | × | hrberg quits (~quassel@171.79-160-161.customer.lyse.net) (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) |
| 08:20:50 | → | hrberg joins (~quassel@171.79-160-161.customer.lyse.net) |
| 08:24:49 | × | yangby quits (~secret@183.128.108.131) (Quit: Go out for a walk and buy a drink.) |
| 08:24:56 | × | hrberg quits (~quassel@171.79-160-161.customer.lyse.net) (Client Quit) |
| 08:25:17 | → | yangby joins (~secret@183.128.108.131) |
| 08:25:57 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Read error: Connection reset by peer) |
| 08:27:12 | → | hrberg joins (~quassel@171.79-160-161.customer.lyse.net) |
| 08:39:48 | <Hecate> | tomsmeding: 9.8.1-alpha1 is released :) |
| 08:41:04 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 08:45:19 | <talismanick> | Why is Haskell the only (major/living) language with typeclasses? Why do most other functional languages opt for ML-style modules? |
| 08:45:53 | <talismanick> | What alternatives are there? Generalizations/modifications of multiple dispatch? |
| 08:46:57 | <talismanick> | (well, Clean has typeclasses too, and it appears to be alive and well, living on quietly) |
| 08:47:21 | <talismanick> | And Purescript too, that's right |
| 08:47:32 | <ncf> | agda, idris and lean have typeclasses |
| 08:49:02 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 08:49:33 | → | zmt00 joins (~zmt00@user/zmt00) |
| 08:49:36 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 245 seconds) |
| 08:49:51 | × | mango quits (~finn@2001:861:5863:3d50:4ca1:d4a3:9017:987c) (Ping timeout: 244 seconds) |
| 08:50:40 | × | zmt01 quits (~zmt00@user/zmt00) (Ping timeout: 246 seconds) |
| 08:50:49 | → | mango joins (~finn@2001:861:5863:3d50:b609:8a33:4e07:703d) |
| 08:53:21 | × | misterfish quits (~misterfis@178.228.71.213) (Ping timeout: 245 seconds) |
| 08:58:50 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 09:00:13 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 09:00:13 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Remote host closed the connection) |
| 09:00:13 | × | jpds quits (~jpds@gateway/tor-sasl/jpds) (Read error: Connection reset by peer) |
| 09:00:13 | × | califax quits (~califax@user/califx) (Read error: Connection reset by peer) |
| 09:00:14 | × | ec quits (~ec@gateway/tor-sasl/ec) (Read error: Connection reset by peer) |
| 09:00:31 | × | end^ quits (~end^@user/end/x-0094621) (Quit: You have been kicked for being idle) |
| 09:00:39 | → | califax joins (~califax@user/califx) |
| 09:00:40 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 09:00:43 | → | jpds joins (~jpds@gateway/tor-sasl/jpds) |
| 09:00:47 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 09:01:05 | → | FinnElija joins (~finn_elij@user/finn-elija/x-0085643) |
| 09:01:05 | → | idgaen joins (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 09:01:07 | × | LenaDresner[m] quits (~lenadresn@2001:470:69fc:105::3:3c53) (Remote host closed the connection) |
| 09:01:25 | → | ec joins (~ec@gateway/tor-sasl/ec) |
| 09:02:09 | × | rubin55 quits (sid175221@id-175221.hampstead.irccloud.com) () |
| 09:02:35 | → | rubin55 joins (sid175221@id-175221.hampstead.irccloud.com) |
| 09:03:53 | × | sm[i] quits (~sm@2601:196:4b80:3a40:65:7c1f:38cd:576) (Ping timeout: 258 seconds) |
| 09:04:02 | × | mango quits (~finn@2001:861:5863:3d50:b609:8a33:4e07:703d) (Ping timeout: 246 seconds) |
| 09:11:14 | → | Guest6684 joins (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) |
| 09:11:34 | × | yangby quits (~secret@183.128.108.131) (Quit: Go out for a walk and buy a drink.) |
| 09:16:08 | × | flounders quits (~flounders@24.246.133.1) (Ping timeout: 246 seconds) |
| 09:17:01 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 09:17:58 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 09:18:21 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 09:19:32 | → | eggplantade joins (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) |
| 09:20:22 | <probie> | Sometimes I wish that Haskell didn't have typeclasses. They're convenient, but they're also annoyingly global |
| 09:21:54 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
| 09:22:14 | <probie> | and you can't easily convert between them (e.g. if you have two dependencies that both define what is effectively the same typeclass) |
| 09:24:14 | × | eggplantade quits (~Eggplanta@104-55-37-220.lightspeed.sntcca.sbcglobal.net) (Ping timeout: 260 seconds) |
| 09:25:09 | <probie> | so if I want something like comonads, I can roll my own definition, but it will annoy everyone who wants to use my code, or I can use the definition from the comonads package (because that's what everyone uses), and now I've added a dependency on 10-15 packages when all I wanted was `class Functor w => Comonad w where { extend :: w a -> w (w a); extract :: w a -> a }` |
| 09:26:03 | <jackdk> | just make sure the dictionaries get laid out the same and do horrid reflection-style hacks |
| 09:33:46 | → | boxscape_ joins (~boxscape_@81.191.27.107) |
| 09:34:39 | <Hecate> | probie: we need this https://idris2.readthedocs.io/en/latest/tutorial/interfaces.html#named-implementations |
| 09:37:53 | <sm> | happy for 9.8.1a1, but I don't see anything obvious I can use - how about you ? |
| 09:37:54 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 244 seconds) |
| 09:38:17 | <probie> | Hecate: That can cause headaches. If you've got something like `data BinarySearchTree a = Null | Node a (BinarySearchTree a) a` and `insert :: Ord a => a -> BinarySearchTree a -> BinarySearchTree a`, someone might call `insert @{foo} x (insert y someTree)` |
| 09:39:17 | <probie> | (this was the example given to me when I went on a rant ~10 years ago in this channel about how we don't need typeclasses) |
| 09:40:26 | → | misterfish joins (~misterfis@84-53-85-146.bbserv.nl) |
| 09:40:46 | <boxscape_> | hmm with dependent types you could have the compare function as index of the Set type |
| 09:42:36 | <Hecate> | probie: so… the problem is that someone may call insert with a specific implementation? Or that the implementation name is a variable? |
| 09:44:13 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 246 seconds) |
| 09:44:37 | <probie> | Hecate: the problem is that you don't have a guarantee that the same ordering is used for all inserts (of course, you can fix this by bundling the ordering function with the tree, but at that point you don't need typeclasses any more) |
| 09:44:53 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 09:45:46 | <Hecate> | probie: well, if you call a specific implementation that's because you don't care too much about cross-implementation guarantees, do you? |
| 09:46:11 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 09:46:27 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 09:46:51 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 09:47:12 | <probie> | It introduces a chance for a bug that could be annoying to track down (i.e what happens if I simply forgot to write `@{foo}` on the other insert) |
| 09:47:17 | <apache> | if the ordering is important wouldn't that warrant having it explicit in the type signature? |
| 09:47:50 | <boxscape_> | I feel like named instances don't really give you very much over newtypes though? it's a bit noisier syntactically, although the applying-via proposal would have helped |
| 09:48:10 | <boxscape_> | (I mean newtypes are noisier syntactically) |
| 09:52:47 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 264 seconds) |
| 09:55:25 | → | acidjnk_new joins (~acidjnk@p200300d6e7072f742c3c839711257708.dip0.t-ipconnect.de) |
| 09:56:59 | × | acidjnk quits (~acidjnk@p200300d6e7072f74a48c7e6a1dd36c06.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
| 09:57:37 | <ncf> | int-e: what's lambdabot's trustedPackages list? i'm getting "-XGeneralizedNewtypeDeriving is not allowed in Safe Haskell" when trying to import Control.Lens on my own instance |
| 09:58:23 | <ncf> | wait i asked you this a year ago let me grep my logs |
| 09:59:17 | <Hecate> | I need to deprecate Safe Haskell |
| 10:00:50 | <ncf> | oh, there wasn't a simple answer... |
| 10:02:15 | <Rembane> | ncf: This makes me curious, what's the complex answer? |
| 10:02:20 | × | Guest6684 quits (~finn@rul16-h01-176-151-21-224.dsl.sta.abo.bbox.fr) (Ping timeout: 246 seconds) |
| 10:03:09 | <int-e> | ncf: I also haven't actually gone through this process... in several years by now. I should do that again. But it's always been a mix of identifying a minimal set of packages to trust and patching those packages to actually use the right annotations. |
| 10:05:52 | <ncf> | Rembane: careful investigating and patching |
| 10:06:20 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 10:06:38 | <ncf> | maybe i'll try |
| 10:08:01 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 10:10:58 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 258 seconds) |
| 10:12:00 | <Rembane> | ncf: That sounds way too much like software development. Thanks. |
| 10:14:44 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 10:27:38 | → | danza joins (~francesco@151.37.214.222) |
| 10:29:21 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 10:38:15 | × | danza quits (~francesco@151.37.214.222) (Remote host closed the connection) |
| 10:38:34 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 10:38:56 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 10:39:33 | → | img joins (~img@user/img) |
| 10:39:49 | → | gurkenglas joins (~gurkengla@dynamic-046-114-092-082.46.114.pool.telefonica.de) |
| 10:40:35 | → | danza joins (~francesco@151.37.214.222) |
| 10:43:17 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 10:47:04 | × | codaraxis__ quits (~codaraxis@user/codaraxis) (Quit: Leaving) |
| 10:56:42 | × | boxscape_ quits (~boxscape_@81.191.27.107) (Quit: Connection closed) |
| 10:58:11 | → | boxscape_ joins (~boxscape_@81.191.27.107) |
| 10:58:34 | × | acidjnk_new quits (~acidjnk@p200300d6e7072f742c3c839711257708.dip0.t-ipconnect.de) (Read error: Connection reset by peer) |
| 10:59:16 | → | danza_ joins (~francesco@151.37.188.85) |
| 10:59:32 | × | danza quits (~francesco@151.37.214.222) (Read error: Connection reset by peer) |
| 10:59:56 | → | acidjnk joins (~acidjnk@p200300d6e7072f74a4887092d5a58bfa.dip0.t-ipconnect.de) |
| 11:08:15 | → | fweht joins (uid404746@id-404746.lymington.irccloud.com) |
| 11:12:29 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 246 seconds) |
| 11:13:49 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 11:14:13 | × | danza_ quits (~francesco@151.37.188.85) (Ping timeout: 258 seconds) |
| 11:14:32 | → | yangby joins (~secret@183.128.108.131) |
| 11:18:34 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 11:19:59 | → | arahael_ joins (~arahael@115-64-199-191.tpgi.com.au) |
| 11:27:32 | × | arahael quits (~arahael@115-64-199-191.tpgi.com.au) (Remote host closed the connection) |
| 11:32:26 | × | yangby quits (~secret@183.128.108.131) (Quit: Go out for a walk and buy a drink.) |
| 11:33:09 | → | yangby joins (~secret@183.128.108.131) |
| 11:35:17 | → | razetime joins (~quassel@117.193.5.197) |
| 11:38:13 | → | mango joins (~finn@2001:861:5863:3d50:ec89:52d:e5c5:704d) |
| 11:38:16 | × | lisbeths quits (uid135845@id-135845.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 11:42:09 | × | pandeyan quits (~pandeyan@135-180-53-157.fiber.dynamic.sonic.net) (Quit: ZNC 1.8.2 - https://znc.in) |
| 11:44:09 | → | anpad joins (~pandeyan@user/anpad) |
| 11:50:31 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 11:51:43 | <ncf> | int-e: lol so the issue was that i'm using GHC 9.2 which enables GHC2021 by default which implies GeneralizedNewtypeDeriving which raises a warning which turns into an error because of -Werror |
| 11:52:14 | <int-e> | nshepperd2: |
| 11:52:16 | <ncf> | which raises a warning [when used with Safe] |
| 11:52:24 | <int-e> | ncf: Ah the wonder of unintended side effects. |
| 11:52:52 | <int-e> | I can already see the ticket: "GHC2021 breaks SafeHaskell", highest priority, stop the presses. |
| 11:53:13 | <ncf> | :') |
| 11:53:26 | <ncf> | i'll open it anyway |
| 11:53:55 | <ncf> | ha https://gitlab.haskell.org/ghc/ghc/-/issues/19605 |
| 11:54:07 | <ncf> | > I thought we decided in another ticket (I forget which) to allow this one to slip through, just to see if anyone notices. |
| 11:54:09 | <lambdabot> | <hint>:1:22: error: parse error on input ‘in’ |
| 11:54:09 | <ncf> | rofl |
| 11:55:06 | <int-e> | Hecate: As the sole user of SafeHaskell, on behalf of the lambdabot community, I'd like to protest that deprecation. ("sole user" is probably inaccurate... but it's really hard to find convincing use cases for it. It's a cute idea, but it only ever covers a single notion of safety... which is way weaker than whatever people need in most contexts.) |
| 11:55:17 | <int-e> | Hecate: ;-) |
| 11:55:19 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 11:55:56 | <boxscape_> | How well does it fit what lambdabot needs? |
| 11:56:00 | <int-e> | (I've pondered generlizing SafeHaskell so that you could distinguish several notions of safety but that would only lead to fragmentation in the ecosystem.) |
| 11:57:28 | <int-e> | boxscape_: pretty well, it does deliver on the "well-typed programs don't go wrong" (where going wrong means dumping core because control flow went out of bounds) promise by locking out the nasty functions that break it (unsafeCoerce, unsafePerformIO). |
| 11:57:42 | <boxscape_> | I see |
| 11:57:55 | × | alpm quits (~alp@user/alp) (Ping timeout: 258 seconds) |
| 11:58:10 | <int-e> | And the "pure values don't perform arbitrary IO" promise. |
| 12:00:08 | <int-e> | There may be holes in this somewhere but I'm not currently aware of any, except that somebody might brute force an MD5 collision for Typeable. (Sounds scary, but the special collision attacks don't apply so for all I know it's the full 2^64 operations for a birthday attack... doable but actually a sizeable chunk of money.) |
| 12:03:26 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 12:04:36 | <int-e> | ncf: You can actually see (mostly) how I used to do this: https://github.com/lambdabot/lambdabot/issues/186 (The last time I did this was for GHC 8.10 but that was surprisingly painless.) |
| 12:05:26 | <int-e> | And 8.8 was probably the most painful of them all. |
| 12:08:21 | <ncf> | i didn't have to do anything else, actually |
| 12:08:41 | <int-e> | Nice. |
| 12:09:29 | <ncf> | well, aside from trustedPackages but i had that figured out last year |
| 12:11:48 | <int-e> | boxscape_: But people want more, of course... lock out internal APIs (possible, but this is the kind of thing that leads to fragmention over which functions should be safely importable and which not), lock out non-total functions (you can always write those), prevent unlawful class instances (GHC is not a theorem prover)... |
| 12:12:11 | <boxscape_> | yeah makes sense |
| 12:12:43 | <int-e> | So it never grew beyond this small sandboxing niche that is exemplified by lambdabot. |
| 12:13:08 | <boxscape_> | I guess Type : Type could also be a problem, although I haven't seen anyone actually demonstrate it being a problem *in haskell* yet |
| 12:13:09 | <int-e> | meh, spelling .examplified. |
| 12:13:47 | <int-e> | boxscape_: I /believe/ Haskell is barely safe because you get non-termination instead of contradictions. Not sure though. |
| 12:14:04 | <boxscape_> | hm okay |
| 12:14:10 | <int-e> | (Haskell's types aren't theorems.) |
| 12:14:24 | <int-e> | :t undefined |
| 12:14:25 | <lambdabot> | a |
| 12:14:51 | <int-e> | Or, at least, not very interesting theorems. |
| 12:15:29 | <boxscape_> | yeah you have to actually evaluate an expression (and wait for it to terminate) to prove the theorem its type represents, at which point you can't prove anything that's universally quantified |
| 12:15:37 | × | califax quits (~califax@user/califx) (Remote host closed the connection) |
| 12:15:38 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 12:15:51 | → | L29Ah joins (~L29Ah@wikipedia/L29Ah) |
| 12:16:02 | → | califax joins (~califax@user/califx) |
| 12:16:08 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 12:22:29 | × | mango quits (~finn@2001:861:5863:3d50:ec89:52d:e5c5:704d) (Ping timeout: 246 seconds) |
| 12:23:28 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 12:24:32 | → | mango joins (~finn@2001:861:5863:3d50:90c4:4ba:6297:e0c1) |
| 12:31:58 | × | idgaen quits (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2) |
| 12:33:31 | × | fendor quits (~fendor@2a02:8388:1640:be00:1f28:32b1:54ac:a932) (Remote host closed the connection) |
| 12:37:54 | × | mango quits (~finn@2001:861:5863:3d50:90c4:4ba:6297:e0c1) (Ping timeout: 260 seconds) |
| 12:39:10 | <Hecate> | int-e: https://discourse.haskell.org/t/deprecating-safe-haskell-or-heavily-investing-in-it/5489 |
| 12:42:18 | → | bontaq joins (~user@ool-45779b84.dyn.optonline.net) |
| 12:44:00 | <int-e> | Hecate: I actually participated in the mailing list discussion in April 2022... I don't think that I have much to add to that. |
| 12:44:11 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 12:46:02 | <int-e> | But I don't have a better use case than lambdabot and the loss is basically losing work that has already been done in GHC and by annotating certain libraries (including lens) to work within the SafeHaskell setting... and of course sunsetting lambdabot's evaluation model. |
| 12:46:19 | <int-e> | I do not know how much maintenance burden this causes inside GHC. |
| 12:46:24 | int-e | shrugs. |
| 12:46:52 | <int-e> | April 2021 actually. |
| 12:49:07 | <Hecate> | int-e: would something like bubblewrap & nsjail help for lambdabot? |
| 12:49:13 | <Hecate> | like it works for the haskell playground |
| 12:50:15 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 12:51:08 | × | gurkenglas quits (~gurkengla@dynamic-046-114-092-082.46.114.pool.telefonica.de) (Ping timeout: 244 seconds) |
| 12:53:09 | <int-e> | Hecate: are you prepared for the horror that is http://paste.debian.net/1287297/ |
| 12:53:48 | <int-e> | But I really prefer this kind of thing to be the second line of defence rather than the first. |
| 12:54:28 | → | simulacrum joins (~sp0ok@2603-8000-d201-0802-ac46-3011-06e6-d2f2.res6.spectrum.com) |
| 12:59:41 | <Hecate> | int-e: frankly I'd rather we improve the status quo on these 52 lines of C |
| 12:59:56 | <Hecate> | LambdaBot certainly deserves better |
| 13:00:11 | <Hecate> | int-e: I'm not saying you're not doing anything, what I'm saying is that you deserve help and support |
| 13:00:43 | <int-e> | Mostly... the way I recall it, this idea of preventing the use of IO by only evaluating pure values and restricting imports is what sparked lambdabot's development. I don't want to lose it, it's nostalgic. |
| 13:02:02 | <int-e> | And losing SafeHaskell is a severe regression from that perspective. Back to manually vetting imports... |
| 13:02:35 | <int-e> | If you want plain sandboxing, there's yahb. |
| 13:03:41 | <int-e> | Note that I'm not saying that you shouldn't deprecate SafeHaskell; it's probably not worth the cost, overall. |
| 13:03:50 | <int-e> | But I *am* saddened by this. |
| 13:04:03 | <Hecate> | int-e: I understand |
| 13:18:17 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 13:23:10 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 244 seconds) |
| 13:27:56 | × | fweht quits (uid404746@id-404746.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 13:28:04 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 13:31:38 | → | Guest6684 joins (~finn@176-151-21-224.abo.bbox.fr) |
| 13:32:10 | × | res0nat0r0844909 quits (~Fletch@fenrir.whatbox.ca) (Quit: Ping timeout (120 seconds)) |
| 13:33:10 | × | simulacrum quits (~sp0ok@2603-8000-d201-0802-ac46-3011-06e6-d2f2.res6.spectrum.com) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 13:34:53 | <EvanR> | Inst__, all the funny remarks in that list I immediately learned over 10 years ago are wrong, like the monad endofunctor thing and the point free thing and the we don't need documentation or tests thing |
| 13:35:04 | → | res0nat0r0844909 joins (~Fletch@fenrir.whatbox.ca) |
| 13:35:23 | <EvanR> | such insight should be in haskell 101 so this haskeller answers repo is valuable xD |
| 13:36:16 | <EvanR> | maybe most importantly, you need to know category theory before using haskell thing is wrong |
| 13:37:02 | × | res0nat0r0844909 quits (~Fletch@fenrir.whatbox.ca) (Client Quit) |
| 13:37:46 | → | res0nat0r0844909 joins (~Fletch@fenrir.whatbox.ca) |
| 13:39:39 | × | res0nat0r0844909 quits (~Fletch@fenrir.whatbox.ca) (Client Quit) |
| 13:40:29 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 13:48:21 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 245 seconds) |
| 13:48:35 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 264 seconds) |
| 13:50:31 | → | seeg123456 joins (~seeg12345@64.176.64.83) |
| 13:55:36 | ← | seeg123456 parts (~seeg12345@64.176.64.83) () |
| 13:56:57 | → | gugu256 joins (~gugu256@38.18.23.93.rev.sfr.net) |
| 13:57:41 | → | Guest89 joins (~Guest89@ip4d1480a4.dynamic.kabel-deutschland.de) |
| 13:58:33 | → | seeg123456 joins (~seeg12345@64.176.64.83) |
| 14:01:22 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 14:04:07 | → | econo_ joins (uid147250@id-147250.tinside.irccloud.com) |
| 14:04:38 | × | Guest89 quits (~Guest89@ip4d1480a4.dynamic.kabel-deutschland.de) (Quit: Client closed) |
| 14:05:40 | <juri_> | i still don't know category theory, but i have to admit, i accidentally learned to use monods sometime in the last decade. |
| 14:07:39 | ← | seeg123456 parts (~seeg12345@64.176.64.83) () |
| 14:12:52 | × | tomboy64 quits (~tomboy64@user/tomboy64) (Ping timeout: 245 seconds) |
| 14:15:51 | × | gugu256 quits (~gugu256@38.18.23.93.rev.sfr.net) (Ping timeout: 245 seconds) |
| 14:15:56 | → | tomboy64 joins (~tomboy64@user/tomboy64) |
| 14:19:19 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 14:23:55 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:a1c1:2fae:d038:32df) |
| 14:24:48 | <probie> | Now that we have linear types, we should ditch monadic IO, because monads are scary |
| 14:27:13 | <probie> | and just go with things like `putChar :: Char -> State# Realworld %1 -> State# Realworld` and `getChar :: State# Realworld %1 -> (State# Realworld, UR Char)` |
| 14:27:23 | <probie> | s/UR/Ur/ |
| 14:27:49 | <probie> | since monads are what scare newcomers away |
| 14:28:08 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:a1c1:2fae:d038:32df) (Ping timeout: 246 seconds) |
| 14:29:34 | <boxscape_> | we probably need linear constraints first |
| 14:29:48 | <EvanR> | linear IO |
| 14:30:17 | <EvanR> | ds9 sisko would object |
| 14:30:52 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 252 seconds) |
| 14:35:07 | → | fweht joins (uid404746@id-404746.lymington.irccloud.com) |
| 14:44:23 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 264 seconds) |
| 14:53:00 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 14:53:21 | → | raehik joins (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) |
| 14:54:57 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) |
| 14:57:57 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 15:01:38 | × | perrierjouet quits (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 15:03:15 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 15:05:22 | → | gugu256 joins (~gugu256@180.18.23.93.rev.sfr.net) |
| 15:07:04 | × | phma quits (phma@2001:5b0:211c:f748:3478:76f9:d3a9:cc0a) (Read error: Connection reset by peer) |
| 15:07:32 | → | phma joins (~phma@host-67-44-208-109.hnremote.net) |
| 15:13:58 | → | bitmapper joins (uid464869@id-464869.lymington.irccloud.com) |
| 15:20:18 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Ping timeout: 240 seconds) |
| 15:20:45 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 15:24:40 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:c986:e1bf:9d12:c3e0) |
| 15:27:50 | × | ystael quits (~ystael@user/ystael) (Ping timeout: 246 seconds) |
| 15:28:36 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 15:29:14 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:c986:e1bf:9d12:c3e0) (Ping timeout: 246 seconds) |
| 15:29:27 | → | prateem joins (~user@2a02:c7c:a440:2900:9aa1:484a:8f82:e5f4) |
| 15:30:07 | → | perrierjouet joins (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 15:33:04 | → | seeg123456 joins (~seeg12345@64.176.64.83) |
| 15:34:07 | × | raehik quits (~raehik@cpc95906-rdng25-2-0-cust156.15-3.cable.virginm.net) (Ping timeout: 260 seconds) |
| 15:37:29 | × | qqq quits (~qqq@92.43.167.61) (Quit: leaving) |
| 15:38:31 | → | hovsater joins (sid499516@id-499516.lymington.irccloud.com) |
| 15:39:16 | ← | prateem parts (~user@2a02:c7c:a440:2900:9aa1:484a:8f82:e5f4) (ERC 5.4 (IRC client for GNU Emacs 28.2)) |
| 15:39:51 | <ncf> | is there any work on Monad m => LensLike m s t a b ? what do we know about those? |
| 15:40:13 | <ncf> | (that is, Monad m => (a -> m b) -> s -> m t) |
| 15:40:59 | <glguy> | ncf: sounds like what was split out of lens called Action |
| 15:41:27 | <ncf> | hmmmmm |
| 15:41:41 | <glguy> | https://hackage.haskell.org/package/lens-action-0.2.6/docs/Control-Lens-Action.html |
| 15:41:53 | <ncf> | context: i'm trying to model some kind of traversal with possibly duplicate targets. supercontext: i'm trying to implement jq in haskell for fun |
| 15:42:07 | <ncf> | i'll look at that thx |
| 15:42:18 | × | pavonia quits (~user@user/siracusa) (Quit: Bye!) |
| 15:53:49 | <ncf> | glguy: ah, this is subtly different from what i'm looking for |
| 15:54:11 | <ncf> | this would be (a -> m r) -> s -> m t, not (a -> m b) |
| 15:54:51 | <ncf> | wait no |
| 15:55:07 | <ncf> | this would be (a -> m r) -> s -> f t, not (a -> f b) -> s -> f t |
| 15:56:04 | <ncf> | anyway the type of thing i'm trying to construct is fstTwice :: Thing (a, b) a; fstTwice k (a, b) = k a >>= \ a' -> k a' >>= \ a'' -> return (a'', b) |
| 15:56:33 | → | notzmv joins (~zmv@user/notzmv) |
| 15:56:57 | <ncf> | :t \ k (a, b) -> k a >>= \ a' -> k a' >>= \ a'' -> return (a'', b) |
| 15:56:58 | <lambdabot> | Monad m => (a -> m a) -> (a, b) -> m (a, b) |
| 15:58:31 | <ncf> | by instantiating that at Identity you get a Setter that modifies fst twice, and by instantiating it at Writer [whatever] you get something like a Fold that returns fst twice |
| 16:00:06 | <ncf> | but the goal is also to be able to merge two `Thing`s into one, like `adjoin` except safe. i don't know if this allows that |
| 16:00:11 | <ncf> | sorry, thinking out loud |
| 16:00:52 | <EvanR> | jq = jQuery? The famous monad? xD |
| 16:01:24 | <ncf> | jq is googleable by now |
| 16:01:47 | <EvanR> | ducked it |
| 16:09:38 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 16:14:36 | → | Sciencentistguy8 joins (~sciencent@hacksoc/ordinary-member) |
| 16:17:14 | × | Sciencentistguy quits (~sciencent@hacksoc/ordinary-member) (Ping timeout: 260 seconds) |
| 16:17:14 | Sciencentistguy8 | is now known as Sciencentistguy |
| 16:25:00 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 16:35:28 | <ncf> | oh, duh: adjoin :: Thing a b -> Thing a b -> Thing a b; adjoin p q f a = p f a >>= q f |
| 16:36:30 | <ncf> | Thing crucially has to be monomorphic, so no s t a b |
| 16:37:58 | <ncf> | edwardk: have you ever thought about Monad m => (a -> m a) -> s -> m s ? |
| 16:39:59 | × | ddellacosta quits (~ddellacos@146.70.168.156) (Ping timeout: 260 seconds) |
| 16:40:28 | → | ddellacosta joins (~ddellacos@146.70.168.156) |
| 16:40:42 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 16:54:14 | × | stiell_ quits (~stiell@gateway/tor-sasl/stiell) (Remote host closed the connection) |
| 16:54:35 | × | Guest6684 quits (~finn@176-151-21-224.abo.bbox.fr) (Ping timeout: 264 seconds) |
| 16:54:41 | → | stiell_ joins (~stiell@gateway/tor-sasl/stiell) |
| 16:55:37 | → | gurkenglas joins (~gurkengla@dynamic-046-114-092-082.46.114.pool.telefonica.de) |
| 16:57:30 | × | fbytez quits (~uid@user/fbytez) (Quit: byte byte) |
| 16:58:38 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
| 16:59:11 | → | fbytez joins (~uid@user/fbytez) |
| 17:03:08 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 17:04:21 | → | idgaen joins (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 17:05:52 | → | bratwurst joins (~dfadsva@2604:3d09:207f:f650::c3b) |
| 17:06:10 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 17:07:09 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 17:07:50 | ← | seeg123456 parts (~seeg12345@64.176.64.83) () |
| 17:12:58 | × | chiselfuse quits (~chiselfus@user/chiselfuse) (Ping timeout: 240 seconds) |
| 17:13:33 | → | chiselfuse joins (~chiselfus@user/chiselfuse) |
| 17:19:58 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 17:20:52 | × | lbseale quits (~quassel@user/ep1ctetus) (Ping timeout: 260 seconds) |
| 17:23:42 | × | bitmapper quits (uid464869@id-464869.lymington.irccloud.com) (Quit: Connection closed for inactivity) |
| 17:24:21 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 17:24:36 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 245 seconds) |
| 17:25:20 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 17:26:29 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 246 seconds) |
| 17:28:02 | × | razetime quits (~quassel@117.193.5.197) (Remote host closed the connection) |
| 17:34:35 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 17:34:45 | → | simikando joins (~simikando@adsl-dyn-104.95-102-88.t-com.sk) |
| 17:34:55 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 17:35:29 | → | razetime joins (~quassel@117.193.5.198) |
| 17:42:32 | × | razetime quits (~quassel@117.193.5.198) (Ping timeout: 244 seconds) |
| 17:43:21 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 245 seconds) |
| 17:45:35 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 264 seconds) |
| 17:52:02 | × | jespada quits (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) (Ping timeout: 245 seconds) |
| 17:53:35 | × | bontaq quits (~user@ool-45779b84.dyn.optonline.net) (Ping timeout: 246 seconds) |
| 17:58:00 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 18:02:32 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 18:13:00 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 18:16:40 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 18:18:20 | × | APic quits (apic@apic.name) (Quit: Lost terminal) |
| 18:18:23 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 18:18:58 | → | APic joins (apic@apic.name) |
| 18:19:12 | × | notzmv quits (~zmv@user/notzmv) (Ping timeout: 260 seconds) |
| 18:25:18 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 18:30:18 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 18:30:49 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 18:31:57 | <[exa]> | STG question: where is the exact trick that allows looooooong foldl calls (without ') to _not_ run out of (argument) stack? And was it argument stack? |
| 18:32:39 | <[exa]> | (I'm trying to find the difference between the old STG paper and the new STG representation that doesn't have this issue and I can't find this written explicitly anywhere) |
| 18:33:16 | ← | Lycurgus parts (~juan@user/Lycurgus) () |
| 18:39:02 | <dolio> | I'm not sure what you're talking about. |
| 18:39:32 | <dolio> | Like, do you have a particular example? |
| 18:40:16 | <monochrom> | I don't think it exists. |
| 18:41:04 | <geekosaur> | I was surprised to hear this because of things like the recent change to `sum` to use `foldl'` which shouldn't have been necessary if such a trick existed? |
| 18:41:38 | <geekosaur> | otherwise all I can think of is update frames but I don't think this is their use case |
| 18:41:53 | <geekosaur> | (and squeezing update frames in particular) |
| 18:42:04 | <monochrom> | Stack overflow is much less frequent in non-old GHC because non-old GHC sets stack size to be proportional to memory size, not because STG changed this. |
| 18:42:21 | <[exa]> | ok maybe it was not foldl but scanl. I recall something caused older ghci to die with some stack overflow (but that's not the case for like 15 years now at least) |
| 18:42:31 | <dolio> | Squeezing update frames is in old papers, though. |
| 18:43:14 | × | gugu256 quits (~gugu256@180.18.23.93.rev.sfr.net) (Read error: Connection reset by peer) |
| 18:43:45 | <[exa]> | hm update frames... will check, thanks for the pointer |
| 18:43:56 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 18:44:26 | <[exa]> | anyway yeah the "exact trick" I meant is likely something that was implemented into haskells like 20 years ago :D |
| 18:45:25 | <[exa]> | the one which does not have the trick is the 1989 paper on STG from SPJ and Jon Salkild |
| 18:46:23 | <[exa]> | (all arguments are collected on a stack, so if you happen to jump to a sufficiently long application "spine", it should imo die. |
| 18:46:40 | <monochrom> | `recursive_split xs = let (y, z) = splitAt 5 xs in y : recursive_split z` would be one that held up linear heap space a long long time ago but since then GC smartened up and crunched it down back to constant space. |
| 18:46:49 | <monochrom> | But then that's heap not stack. |
| 18:46:57 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Read error: Connection reset by peer) |
| 18:47:19 | <monochrom> | And it was in the GCer not in STG. |
| 18:47:48 | <[exa]> | yeah |
| 18:48:10 | → | Guest6684 joins (~finn@81-67-22-3.rev.numericable.fr) |
| 18:48:21 | <monochrom> | Automagically improving foldl would belong to strictness analysis and optimization, still not in STG. |
| 18:48:34 | <monochrom> | epic insane strictness analysis. |
| 18:49:39 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 18:50:06 | × | lbseale quits (~quassel@user/ep1ctetus) (Ping timeout: 260 seconds) |
| 18:50:53 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 18:51:44 | × | trev quits (~trev@user/trev) (Quit: trev) |
| 18:52:47 | × | kristjansson_ quits (sid126207@id-126207.tinside.irccloud.com) () |
| 18:53:06 | [exa] | remembers there's stgi |
| 18:57:07 | × | lbseale quits (~quassel@user/ep1ctetus) (Ping timeout: 260 seconds) |
| 18:57:30 | → | pavonia joins (~user@user/siracusa) |
| 18:58:01 | → | bontaq joins (~user@ool-45779b84.dyn.optonline.net) |
| 18:59:34 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 19:00:46 | <[exa]> | ok yeah the link all the way down at stgi page helped |
| 19:01:06 | <dolio> | The 89 paper you're talking about is apparently 'The Spineless G-Machine'. That predates Haskell, even. |
| 19:01:17 | <[exa]> | it's in "Making a Fast Curry: Push/Enter vs. Eval/Apply for Higher-order Languages" |
| 19:01:39 | <[exa]> | dolio: I meant this one, sorry for not posting the link, there's apparently more from 89 https://dl.acm.org/doi/pdf/10.1145/99370.99385 |
| 19:01:48 | → | oo_miguel joins (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) |
| 19:02:45 | <[exa]> | aaaaanyway in the eval/apply they can relatively cheaply push the arguments directly to the closures, which eliminates the need for stack and falls back to allocating more closures in case there isn't enough space and stuff can't get evaluated more |
| 19:02:48 | × | lbseale quits (~quassel@user/ep1ctetus) (Client Quit) |
| 19:03:12 | <[exa]> | thanks for the pointers everyone |
| 19:03:30 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 19:04:14 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 19:04:47 | <dolio> | Oh, did this have to do with compiling to C? |
| 19:05:01 | <[exa]> | no, more likely how stg stores the stuff in memory |
| 19:05:52 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 19:06:37 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 245 seconds) |
| 19:08:42 | → | waleee joins (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) |
| 19:09:41 | × | perrierjouet quits (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) (Quit: WeeChat 4.0.2) |
| 19:10:08 | → | perrierjouet joins (~perrierjo@modemcable048.127-56-74.mc.videotron.ca) |
| 19:12:51 | <byorgey> | hgolden: I do usually recommend VS Code to my students. I'm aware the .lhs support is not the best (for example, when VS Code tries to automatically add imports it often screws up the formatting), I don't know of anything better though. |
| 19:20:00 | × | chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection) |
| 19:20:40 | → | chiselfuse joins (~chiselfus@user/chiselfuse) |
| 19:29:59 | × | simikando quits (~simikando@adsl-dyn-104.95-102-88.t-com.sk) (Quit: Leaving) |
| 19:31:54 | × | lbseale quits (~quassel@user/ep1ctetus) (Ping timeout: 252 seconds) |
| 19:34:02 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 19:34:25 | × | vgtw quits (~vgtw@user/vgtw) (Ping timeout: 240 seconds) |
| 19:34:26 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 260 seconds) |
| 19:37:24 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 252 seconds) |
| 19:44:28 | × | Guest6684 quits (~finn@81-67-22-3.rev.numericable.fr) (Ping timeout: 244 seconds) |
| 19:47:41 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 19:51:06 | → | segfaultfizzbuzz joins (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) |
| 19:51:57 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 19:54:55 | → | ubert joins (~Thunderbi@178.115.51.82.wireless.dyn.drei.com) |
| 19:58:10 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 19:59:01 | → | phma_ joins (phma@2001:5b0:211c:f748:3478:76f9:d3a9:cc0a) |
| 20:02:06 | × | phma quits (~phma@host-67-44-208-109.hnremote.net) (Ping timeout: 245 seconds) |
| 20:03:37 | <hgolden> | byorgey: ty! |
| 20:03:41 | → | wroathe joins (~wroathe@50.205.197.50) |
| 20:03:42 | × | wroathe quits (~wroathe@50.205.197.50) (Changing host) |
| 20:03:42 | → | wroathe joins (~wroathe@user/wroathe) |
| 20:09:20 | → | jespada joins (~jespada@cpc121308-nmal25-2-0-cust15.19-2.cable.virginm.net) |
| 20:10:26 | → | shapr joins (~user@2600:1700:c640:3100:3262:7ed5:7:9da3) |
| 20:10:42 | → | Guest5438 joins (~finn@81-67-22-3.rev.numericable.fr) |
| 20:13:37 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 20:18:04 | × | _ht quits (~Thunderbi@28-52-174-82.ftth.glasoperator.nl) (Remote host closed the connection) |
| 20:18:26 | × | chiselfuse quits (~chiselfus@user/chiselfuse) (Remote host closed the connection) |
| 20:19:14 | → | Pickchea joins (~private@user/pickchea) |
| 20:19:52 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 20:20:49 | → | lbseale joins (~quassel@user/ep1ctetus) |
| 20:20:59 | × | waleee quits (~waleee@2001:9b0:21c:4000:5bf9:6515:c030:57b7) (Ping timeout: 264 seconds) |
| 20:21:51 | → | notzmv joins (~zmv@user/notzmv) |
| 20:22:44 | → | waleee joins (~waleee@h-176-10-137-138.NA.cust.bahnhof.se) |
| 20:32:26 | × | gurkenglas quits (~gurkengla@dynamic-046-114-092-082.46.114.pool.telefonica.de) (Ping timeout: 250 seconds) |
| 20:35:02 | → | chiselfuse joins (~chiselfus@user/chiselfuse) |
| 20:36:14 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 20:42:24 | → | dcoutts joins (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) |
| 20:43:10 | → | coot joins (~coot@89-69-206-216.dynamic.chello.pl) |
| 20:43:11 | × | acidjnk quits (~acidjnk@p200300d6e7072f74a4887092d5a58bfa.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
| 20:43:27 | → | prateem joins (~user@2a02:c7c:a440:2900:9aa1:484a:8f82:e5f4) |
| 20:44:36 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 20:46:32 | → | ubert1 joins (~Thunderbi@178.115.51.82.wireless.dyn.drei.com) |
| 20:51:26 | × | Pickchea quits (~private@user/pickchea) (Quit: Leaving) |
| 21:02:33 | → | acidjnk joins (~acidjnk@p200300d6e7072f74dd20c62d1ea21df4.dip0.t-ipconnect.de) |
| 21:05:26 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
| 21:14:02 | → | wroathe joins (~wroathe@50.205.197.50) |
| 21:14:02 | × | wroathe quits (~wroathe@50.205.197.50) (Changing host) |
| 21:14:02 | → | wroathe joins (~wroathe@user/wroathe) |
| 21:15:19 | <EvanR> | i've updated my cargo cult understanding of ghc's update frames to cargo cult understanding of ghc's selector thunks, for explaining how scanl doesn't blow the stack/heap |
| 21:15:49 | <EvanR> | I guess 20 years ago there was another story |
| 21:16:23 | <EvanR> | 14 years ago I decidedly remember stack overflowing all the time |
| 21:17:38 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 246 seconds) |
| 21:17:40 | × | prateem quits (~user@2a02:c7c:a440:2900:9aa1:484a:8f82:e5f4) (Read error: Connection reset by peer) |
| 21:17:54 | → | prateem joins (~user@2a02:c7c:a440:2900:9aa1:484a:8f82:e5f4) |
| 21:19:38 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 240 seconds) |
| 21:20:25 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 21:20:58 | <geekosaur> | as monochrom mentioned, since then ghc has changed to assign stack based on available memory instead of a fixed 8k(iirc) |
| 21:21:12 | <geekosaur> | 8k is really easy to overflow |
| 21:21:29 | → | nate2 joins (~nate@c-98-45-169-16.hsd1.ca.comcast.net) |
| 21:22:48 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 21:24:46 | <dolio> | Yeah. Nowadays you only stack overflow if your stack takes up like 80% of memory. And you probably have more memory than 14 years ago. |
| 21:26:10 | × | nate2 quits (~nate@c-98-45-169-16.hsd1.ca.comcast.net) (Ping timeout: 250 seconds) |
| 21:27:14 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 21:31:12 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 21:35:19 | × | inedia quits (~irc@2600:3c00:e000:287::1) (Quit: WeeChat 3.7.1) |
| 21:35:33 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 244 seconds) |
| 21:36:23 | → | gurkenglas joins (~gurkengla@dynamic-046-114-092-082.46.114.pool.telefonica.de) |
| 21:39:07 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 21:39:40 | × | internatetional quits (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Quit: WeeChat 4.0.2) |
| 21:40:06 | → | internatetional joins (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) |
| 21:40:23 | → | dove joins (~irc@2600:3c00:e000:287::1) |
| 21:43:53 | → | Tlsx joins (~rscastilh@187.40.124.54) |
| 21:45:06 | → | tan00kee joins (~paul@pauloliver.dev) |
| 21:45:44 | × | tan00kee quits (~paul@pauloliver.dev) (Client Quit) |
| 21:47:05 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 21:47:22 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 21:47:59 | × | idgaen quits (~idgaen@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 4.0.2) |
| 21:48:03 | × | ubert1 quits (~Thunderbi@178.115.51.82.wireless.dyn.drei.com) (Quit: ubert1) |
| 21:48:49 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 21:48:50 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Remote host closed the connection) |
| 21:49:18 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 21:49:22 | × | Tlsx quits (~rscastilh@187.40.124.54) () |
| 21:49:41 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 21:51:12 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 245 seconds) |
| 21:53:24 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:07:42 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 22:07:42 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 22:07:42 | → | wroathe joins (~wroathe@user/wroathe) |
| 22:07:44 | phma_ | is now known as phma |
| 22:08:13 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 22:09:56 | × | oo_miguel quits (~Thunderbi@78-11-179-96.static.ip.netia.com.pl) (Ping timeout: 252 seconds) |
| 22:10:24 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 22:10:32 | × | kilolympus quits (~kilolympu@cpc105064-sgyl40-2-0-cust46.18-2.cable.virginm.net) (Quit: See you later! :)) |
| 22:16:22 | × | dcoutts quits (~duncan@cpc69402-oxfd27-2-0-cust903.4-3.cable.virginm.net) (Ping timeout: 244 seconds) |
| 22:18:10 | × | segfaultfizzbuzz quits (~segfaultf@23-93-74-212.fiber.dynamic.sonic.net) (Ping timeout: 250 seconds) |
| 22:19:36 | × | Tuplanolla quits (~Tuplanoll@91-159-68-236.elisa-laajakaista.fi) (Quit: Leaving.) |
| 22:20:21 | × | internatetional quits (~nate@2001:448a:20a3:c2e5:71b9:a710:2866:667f) (Quit: WeeChat 4.0.2) |
| 22:21:43 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 22:22:58 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 22:24:35 | × | acidjnk quits (~acidjnk@p200300d6e7072f74dd20c62d1ea21df4.dip0.t-ipconnect.de) (Ping timeout: 264 seconds) |
| 22:25:55 | → | flounders joins (~flounders@24.246.133.1) |
| 22:30:00 | → | justsomeguy joins (~justsomeg@user/justsomeguy) |
| 22:33:00 | → | titibandit joins (~titibandi@user/titibandit) |
| 22:40:47 | × | Cale quits (~cale@cpe80d04ade0a03-cm80d04ade0a01.cpe.net.cable.rogers.com) (Ping timeout: 264 seconds) |
| 22:46:43 | × | coot quits (~coot@89-69-206-216.dynamic.chello.pl) (Quit: coot) |
| 22:50:12 | → | dobblego joins (~dibblego@116-255-1-151.ip4.superloop.au) |
| 22:50:12 | × | dobblego quits (~dibblego@116-255-1-151.ip4.superloop.au) (Changing host) |
| 22:50:12 | → | dobblego joins (~dibblego@haskell/developer/dibblego) |
| 22:50:27 | × | dibblego quits (~dibblego@haskell/developer/dibblego) (Ping timeout: 260 seconds) |
| 22:50:42 | dobblego | is now known as dibblego |
| 22:52:12 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 260 seconds) |
| 22:55:22 | × | titibandit quits (~titibandi@user/titibandit) (Ping timeout: 245 seconds) |
| 22:55:28 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 22:57:14 | → | titibandit joins (~titibandi@user/titibandit) |
| 22:58:04 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 22:58:36 | × | prateem quits (~user@2a02:c7c:a440:2900:9aa1:484a:8f82:e5f4) (Ping timeout: 260 seconds) |
| 22:59:46 | × | nick4 quits (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) (Ping timeout: 244 seconds) |
| 23:00:12 | × | Guest5438 quits (~finn@81-67-22-3.rev.numericable.fr) (Ping timeout: 250 seconds) |
| 23:11:12 | × | arahael_ quits (~arahael@115-64-199-191.tpgi.com.au) (Ping timeout: 245 seconds) |
| 23:11:18 | × | gry quits (quasselcor@botters/gry) (Ping timeout: 240 seconds) |
| 23:14:19 | × | phma quits (phma@2001:5b0:211c:f748:3478:76f9:d3a9:cc0a) (Read error: Connection reset by peer) |
| 23:16:16 | → | nick4 joins (~nick@2600:8807:9084:7800:d53:c5f4:7789:80aa) |
| 23:24:40 | → | mauke_ joins (~mauke@user/mauke) |
| 23:25:54 | → | phma joins (~phma@2001:5b0:210f:59e8:555:41f7:811f:ab7b) |
| 23:26:16 | × | mauke quits (~mauke@user/mauke) (Ping timeout: 245 seconds) |
| 23:26:16 | mauke_ | is now known as mauke |
| 23:29:24 | → | gry joins (quasselcor@botters/gry) |
| 23:38:05 | <wroathe> | Hmm, I tried using Beam like 4 years ago and the documentation site was more or less in the same state as it's in now: https://haskell-beam.github.io/beam/schema-guide/migrations/. Am I missing something or did this guy build a whole library and then just go "fuck it" and give up on filling out the documentation? |
| 23:38:35 | <wroathe> | I'm trying to find some examples of his migrations framework |
| 23:38:37 | × | titibandit quits (~titibandi@user/titibandit) (Remote host closed the connection) |
| 23:42:13 | × | hiredman quits (~hiredman@frontier1.downey.family) (Remote host closed the connection) |
| 23:42:21 | <dolio> | Does anyone remember seeing an encoding of real numbers using streams of 0, 1 and -1, which has the right computability properties to actually match (some subinterval of) the real numbers? |
| 23:43:52 | → | mima joins (~mmh@ppp-212-114-180-70.dynamic.mnet-online.de) |
| 23:44:19 | × | Nosrep quits (~Nosrep@user/nosrep) (Remote host closed the connection) |
| 23:45:05 | → | Nosrep joins (~Nosrep@user/nosrep) |
| 23:50:13 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 23:52:27 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) (Remote host closed the connection) |
| 23:54:39 | <c_wraith> | -1, 0, 1 sounds like balanced ternary representation. but I'm not sure what the latter part means. |
| 23:54:49 | × | gry quits (quasselcor@botters/gry) (Ping timeout: 250 seconds) |
| 23:55:09 | <dolio> | Well, for instance, if you only use 0 and 1, addition is uncomputable. |
| 23:55:53 | <dolio> | Even for numbers that should able to be added, if your bit streams are limited to representing [0,1]. |
| 23:56:13 | <c_wraith> | ah. You're going for a representation which allows more operations to be closed under the set of computable reals? |
| 23:56:54 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:18db:fb53:1602:b933) |
| 23:57:09 | <dolio> | Yeah, I want something that is equivalent to the 'normal' computable reals, but has a relatively simple definition (no rational arithmetic and δ-ε approximation and stuff). |
All times are in UTC on 2023-07-29.