Logs on 2023-01-06 (liberachat/#haskell)
| 00:00:14 | × | CoolMa7 quits (~CoolMa7@31.6.21.153) (Quit: Textual IRC Client: www.textualapp.com) |
| 00:03:39 | × | dgb8 quits (~dgb@astra4961.startdedicated.net) (Quit: The Lounge - https://thelounge.github.io) |
| 00:03:57 | → | dgb8 joins (~dgb@astra4961.startdedicated.net) |
| 00:05:23 | → | catern joins (~sbaugh@2604:2000:8fc0:b:a9c7:866a:bf36:3407) |
| 00:05:34 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 00:06:09 | → | CoolMa7 joins (~CoolMa7@2a02:8109:9d40:14ea:6588:63e9:ef6c:3ec6) |
| 00:09:04 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1) |
| 00:11:44 | × | CoolMa7 quits (~CoolMa7@2a02:8109:9d40:14ea:6588:63e9:ef6c:3ec6) (Quit: Textual IRC Client: www.textualapp.com) |
| 00:12:02 | → | CoolMa7 joins (~CoolMa7@2a02:8109:9d40:14ea:6588:63e9:ef6c:3ec6) |
| 00:13:29 | → | freeside joins (~mengwong@103.252.202.159) |
| 00:14:53 | × | CoolMa7 quits (~CoolMa7@2a02:8109:9d40:14ea:6588:63e9:ef6c:3ec6) (Client Quit) |
| 00:16:12 | → | xff0x joins (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
| 00:18:18 | × | tremon quits (~tremon@83-85-213-108.cable.dynamic.v4.ziggo.nl) (Quit: getting boxed in) |
| 00:20:05 | × | simple quits (skralg@user/simple) (Ping timeout: 252 seconds) |
| 00:22:17 | × | justsomeguy quits (~justsomeg@user/justsomeguy) (Ping timeout: 246 seconds) |
| 00:24:20 | × | azimut_ quits (~azimut@gateway/tor-sasl/azimut) (Ping timeout: 255 seconds) |
| 00:27:20 | → | elatedpixel joins (~user@162.207.115.213) |
| 00:29:31 | × | acidjnk quits (~acidjnk@p200300d6e7137a857c27d2eace8e6a0b.dip0.t-ipconnect.de) (Ping timeout: 248 seconds) |
| 00:31:17 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 00:31:28 | → | thongpv joins (~thongpv87@103.199.69.186) |
| 00:37:26 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 00:37:26 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 00:37:26 | → | wroathe joins (~wroathe@user/wroathe) |
| 00:37:46 | × | elevenkb quits (~elevenkb@105.226.98.103) (Quit: Client closed) |
| 00:38:01 | → | elevenkb joins (~elevenkb@105.226.98.103) |
| 00:38:05 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 268 seconds) |
| 00:41:11 | → | simple joins (skralg@user/simple) |
| 00:48:20 | → | fizbin joins (~fizbin@user/fizbin) |
| 00:58:42 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 272 seconds) |
| 01:03:09 | → | thongpv87 joins (~thongpv87@123.31.184.215) |
| 01:03:19 | × | crazazy`` quits (~user@130.89.171.62) (Ping timeout: 252 seconds) |
| 01:06:04 | × | thongpv quits (~thongpv87@103.199.69.186) (Ping timeout: 252 seconds) |
| 01:07:52 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 01:08:47 | × | elatedpixel quits (~user@162.207.115.213) (Remote host closed the connection) |
| 01:09:01 | → | elatedpixel joins (~user@162.207.115.213) |
| 01:10:20 | × | albet70 quits (~xxx@2400:8902::f03c:92ff:fe60:98d8) (Remote host closed the connection) |
| 01:11:54 | × | elatedpixel quits (~user@162.207.115.213) (Remote host closed the connection) |
| 01:12:05 | → | hashn3rd joins (~hashn3rd@ip72-221-42-80.ks.ks.cox.net) |
| 01:16:09 | × | fizbin quits (~fizbin@user/fizbin) (Ping timeout: 260 seconds) |
| 01:16:27 | → | albet70 joins (~xxx@2400:8902::f03c:92ff:fe60:98d8) |
| 01:20:23 | → | ryanbooker joins (uid4340@id-4340.hampstead.irccloud.com) |
| 01:23:09 | → | king_gs joins (~Thunderbi@187.201.110.169) |
| 01:24:00 | × | kenaryn quits (~aurele@89-88-44-27.abo.bbox.fr) (Quit: leaving) |
| 01:27:49 | × | thegeekinside quits (~thegeekin@189.217.82.244) (Remote host closed the connection) |
| 01:27:50 | × | xff0x quits (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 272 seconds) |
| 01:30:58 | × | elevenkb quits (~elevenkb@105.226.98.103) (Ping timeout: 260 seconds) |
| 01:32:21 | × | Ranhir quits (~Ranhir@157.97.53.139) (Read error: Connection reset by peer) |
| 01:32:24 | × | jmorris quits (uid537181@id-537181.uxbridge.irccloud.com) (Quit: Connection closed for inactivity) |
| 01:32:29 | → | Ranhir joins (~Ranhir@157.97.53.139) |
| 01:32:32 | × | Tuplanolla quits (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) (Quit: Leaving.) |
| 01:41:32 | × | wootehfoot quits (~wootehfoo@user/wootehfoot) (Read error: Connection reset by peer) |
| 01:42:41 | → | fizbin joins (~fizbin@user/fizbin) |
| 01:43:02 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 01:48:06 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 272 seconds) |
| 01:55:39 | → | v0id_ptr joins (~adrift@user/ptr-frac7al/x-0038398) |
| 02:01:04 | × | Ram-Z quits (~Ram-Z@li1814-254.members.linode.com) (Ping timeout: 252 seconds) |
| 02:01:06 | → | king_gs1 joins (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
| 02:01:10 | × | king_gs quits (~Thunderbi@187.201.110.169) (Read error: Connection reset by peer) |
| 02:01:10 | king_gs1 | is now known as king_gs |
| 02:02:28 | → | Blightmain joins (~Blightmai@203.29.154.219) |
| 02:02:41 | × | Blightmain quits (~Blightmai@203.29.154.219) (Remote host closed the connection) |
| 02:03:07 | → | Ram-Z joins (~Ram-Z@li1814-254.members.linode.com) |
| 02:07:08 | → | [itchyjunk] joins (~itchyjunk@user/itchyjunk/x-7353470) |
| 02:07:56 | × | ulvarrefr quits (~user@188.124.56.153) (Read error: Connection reset by peer) |
| 02:12:10 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
| 02:12:47 | × | king_gs quits (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Ping timeout: 256 seconds) |
| 02:15:50 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 02:15:50 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 02:15:50 | → | wroathe joins (~wroathe@user/wroathe) |
| 02:22:59 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 264 seconds) |
| 02:23:06 | → | razetime joins (~Thunderbi@49.207.222.244) |
| 02:27:25 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 02:32:10 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 268 seconds) |
| 02:35:45 | → | freeside joins (~mengwong@103.252.202.159) |
| 02:36:19 | → | Blightmain joins (~Blightmai@203.29.154.219) |
| 02:41:24 | → | thongpv joins (~thongpv87@2402:9d80:3ca:5321:f609:86e9:b143:6b82) |
| 02:41:56 | → | king_gs joins (~Thunderbi@187.201.110.169) |
| 02:42:59 | × | thongpv87 quits (~thongpv87@123.31.184.215) (Ping timeout: 265 seconds) |
| 02:44:17 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 02:44:30 | → | acarrico joins (~acarrico@dhcp-68-142-49-163.greenmountainaccess.net) |
| 02:46:58 | × | wroathe quits (~wroathe@user/wroathe) (Ping timeout: 268 seconds) |
| 02:48:16 | × | razetime quits (~Thunderbi@49.207.222.244) (Quit: See You Space Cowboy) |
| 02:59:00 | → | harveypwca joins (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) |
| 03:04:12 | → | thegeekinside joins (~thegeekin@189.217.82.244) |
| 03:05:11 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:6169:588f:5c00:bfd8) |
| 03:05:43 | × | Blightmain quits (~Blightmai@203.29.154.219) (Quit: Leaving) |
| 03:06:25 | × | jero98772 quits (~jero98772@190.158.28.44) (Remote host closed the connection) |
| 03:09:30 | × | hgolden quits (~hgolden@cpe-172-251-233-141.socal.res.rr.com) (Remote host closed the connection) |
| 03:11:38 | × | td_ quits (~td@83.135.9.50) (Ping timeout: 268 seconds) |
| 03:13:16 | → | td_ joins (~td@83.135.9.2) |
| 03:15:55 | → | cheater_ joins (~Username@user/cheater) |
| 03:19:10 | × | cheater quits (~Username@user/cheater) (Ping timeout: 252 seconds) |
| 03:19:12 | cheater_ | is now known as cheater |
| 03:20:16 | × | king_gs quits (~Thunderbi@187.201.110.169) (Read error: Connection reset by peer) |
| 03:20:21 | × | shailangsa quits (~shailangs@host217-39-45-196.range217-39.btcentralplus.com) (Remote host closed the connection) |
| 03:21:31 | → | king_gs joins (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
| 03:23:53 | <sclv> | upgrading hackage-server |
| 03:23:56 | <sclv> | expect some bumps |
| 03:24:37 | → | gaff joins (~gaff@49.207.203.119) |
| 03:28:11 | × | waleee quits (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) (Ping timeout: 248 seconds) |
| 03:30:18 | → | razetime joins (~Thunderbi@49.207.222.244) |
| 03:36:49 | × | masterbuilder quits (~master@user/masterbuilder) (Quit: Lost terminal) |
| 03:37:19 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 03:39:07 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 03:42:44 | × | terrorjack quits (~terrorjac@2a01:4f8:1c1e:4e8c::) (Quit: The Lounge - https://thelounge.chat) |
| 03:43:38 | → | instantaphex joins (~jb@c-73-171-252-84.hsd1.fl.comcast.net) |
| 03:44:08 | → | terrorjack joins (~terrorjac@2a01:4f8:1c1e:4e8c::) |
| 03:44:11 | → | merijn joins (~merijn@86-86-29-250.fixed.kpn.net) |
| 03:46:48 | → | hgolden joins (~hgolden@cpe-172-251-233-141.socal.res.rr.com) |
| 03:49:04 | × | merijn quits (~merijn@86-86-29-250.fixed.kpn.net) (Ping timeout: 272 seconds) |
| 03:49:48 | → | wroathe joins (~wroathe@207-153-38-140.fttp.usinternet.com) |
| 03:49:48 | × | wroathe quits (~wroathe@207-153-38-140.fttp.usinternet.com) (Changing host) |
| 03:49:48 | → | wroathe joins (~wroathe@user/wroathe) |
| 04:00:38 | × | FinnElija quits (~finn_elij@user/finn-elija/x-0085643) (Killed (NickServ (Forcing logout FinnElija -> finn_elija))) |
| 04:00:38 | → | finn_elija joins (~finn_elij@user/finn-elija/x-0085643) |
| 04:00:38 | finn_elija | is now known as FinnElija |
| 04:02:05 | × | russruss quits (~russruss@my.russellmcc.com) (Quit: The Lounge - https://thelounge.chat) |
| 04:02:26 | → | russruss joins (~russruss@my.russellmcc.com) |
| 04:03:04 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 04:03:38 | × | fizbin quits (~fizbin@user/fizbin) (Ping timeout: 272 seconds) |
| 04:05:35 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 04:05:37 | → | cheater_ joins (~Username@user/cheater) |
| 04:08:35 | × | cheater quits (~Username@user/cheater) (Ping timeout: 260 seconds) |
| 04:08:44 | cheater_ | is now known as cheater |
| 04:10:32 | → | trev joins (~trev@user/trev) |
| 04:10:56 | <Inst> | hackage is down |
| 04:11:26 | <c_wraith> | yeah, sclv warned us they were going to be doing some upgrades and there might be some downtime |
| 04:11:31 | <jackdk> | Presumably because sclv is still doing upgrades |
| 04:11:55 | <sclv> | just came back up |
| 04:13:08 | <sclv> | check it out -- we have reverse dependencies!!! |
| 04:13:22 | <c_wraith> | oh, cool |
| 04:13:47 | <c_wraith> | 15359 direct, 75 indirect [details] |
| 04:14:10 | <c_wraith> | that details page could probably use some work for... extremes... like that |
| 04:14:11 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Ping timeout: 255 seconds) |
| 04:14:14 | <c_wraith> | but it loaded fast! |
| 04:15:53 | <Axman6> | sclv: I was literally just saying to jackdk I wish Hackagge had reverse deps! Whoohoo! |
| 04:16:10 | <jackdk> | as in literally yesterday. What a great release |
| 04:16:13 | <sclv> | this feature has been coming for like 10 years |
| 04:16:19 | <Axman6> | less than 12 hours ago |
| 04:16:22 | → | mbuf joins (~Shakthi@49.204.119.161) |
| 04:16:35 | <sclv> | it was in one of the earliest versions of hackage-server rewrite in haskell |
| 04:16:43 | <Axman6> | I'm going to take credit for it though, clearly my whinging caused this to happen =D |
| 04:16:43 | <sclv> | but we had to turn it off because the memory footprint was outlandish |
| 04:17:08 | <sclv> | one gsoc later and then another round of hacking later (from janus, who did a tremendous job) we simplified it enough to make it tractable |
| 04:17:56 | <sclv> | patches to make the revdeps ui not absurd for things way at the root are extremely welcome! (maybe, uh... paging? idk?) |
| 04:18:42 | <c_wraith> | I have no good ideas. Just that wow, the reverse deps of base result in a silly page. |
| 04:19:19 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 260 seconds) |
| 04:25:42 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 04:27:04 | × | ddellacosta quits (~ddellacos@143.244.47.100) (Ping timeout: 272 seconds) |
| 04:27:57 | <talismanick> | Is there a usable analogue to object capabilities in a library? Coeffects are in principle, but I don't see any libraries for them. |
| 04:29:59 | <Axman6> | What are object capabilities? |
| 04:32:44 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds) |
| 04:32:59 | → | cheater_ joins (~Username@user/cheater) |
| 04:33:37 | <talismanick> | Axman6: https://habitatchronicles.com/2017/05/what-are-capabilities/ |
| 04:34:16 | <talismanick> | In a nutshell, a way of controlling access to resources by reifying them into objects which can hand off tokens to another, giving it access permission |
| 04:35:09 | <sclv> | we have capability systems in haskell |
| 04:35:38 | <talismanick> | e.g. rather than "file is writable by user" and "user owns text editor process" => "editor can save to file", the file has to hand a token to the process |
| 04:35:48 | <talismanick> | sclv: What are some examples? |
| 04:36:13 | → | shailangsa joins (~shailangs@host165-120-169-78.range165-120.btcentralplus.com) |
| 04:36:25 | <sclv> | i'm trying to find the citation, hang on |
| 04:36:34 | × | cheater quits (~Username@user/cheater) (Ping timeout: 265 seconds) |
| 04:36:36 | cheater_ | is now known as cheater |
| 04:38:08 | <talismanick> | Axman6: I highly recommend the article that I linked, but if I had to summarize why it matters, it's the inversion of control: making authority explicitly handed off (as little as possible) rather than held ambiently (by the user, via permissions) reduces chances of screwups |
| 04:38:44 | <sclv> | the LIO monad of stefan et a is a good system for this stuff https://cseweb.ucsd.edu/~dstefan/pubs/stefan:2017:flexible.pdf |
| 04:39:04 | <sclv> | but just using capability tokens explicitly and handing them around is fine with nothing fancy at all |
| 04:39:28 | <sclv> | (the neat thing about the LIO system is it manages this stuff all with compile-time type checks!) |
| 04:40:05 | <talismanick> | sclv: Right, just chuck it into the State monad and reason about it as runtime objects passing messages |
| 04:40:07 | × | ryanbooker quits (uid4340@id-4340.hampstead.irccloud.com) (Quit: Connection closed for inactivity) |
| 04:40:13 | → | phma_ joins (phma@2001:5b0:210d:e648:536c:bd68:b90b:47da) |
| 04:40:17 | <sclv> | like there's nothing about capability tokens that requires objects |
| 04:40:29 | <Axman6> | linear haskell could be interesting with a token based system |
| 04:40:31 | <sclv> | you literally can just mint and pass tokens around -- arguably its simpler |
| 04:40:40 | <sclv> | you don't need a state monad or any monad |
| 04:41:01 | <talismanick> | Wasn't there a monad specifically for unique IDs? |
| 04:41:03 | <sclv> | the LIO stuff is about reflecting that to the types of the monads and using types to hold the capabilities |
| 04:41:09 | <Axman6> | talismanick: I can't open the URL you shared |
| 04:41:23 | × | thegeekinside quits (~thegeekin@189.217.82.244) (Read error: Connection reset by peer) |
| 04:41:24 | <sclv> | yeah, but that's just for id generation |
| 04:41:30 | <sclv> | there's a lot of ways to do that too |
| 04:41:49 | <Axman6> | Safari refuses, and Firefox gives "Error code: SSL_ERROR_RX_RECORD_TOO_LONG" |
| 04:41:58 | × | phma quits (phma@2001:5b0:2143:df48:fe85:bab7:d4d6:2e21) (Read error: Connection reset by peer) |
| 04:41:58 | <talismanick> | Axman6: Erm, try the Wayback Machine? |
| 04:42:09 | <Axman6> | works without https, all good |
| 04:42:15 | × | jao quits (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) (Ping timeout: 252 seconds) |
| 04:42:30 | × | caryhartline quits (~caryhartl@2600:1700:2d0:8d30:54e9:67d:a342:e67) (Quit: caryhartline) |
| 04:42:34 | × | [itchyjunk] quits (~itchyjunk@user/itchyjunk/x-7353470) (Remote host closed the connection) |
| 04:42:50 | × | rburkholder quits (~blurb@96.45.2.121) (Read error: Connection reset by peer) |
| 04:43:09 | → | rburkholder joins (~blurb@96.45.2.121) |
| 04:43:16 | × | rburkholder quits (~blurb@96.45.2.121) (Read error: Connection reset by peer) |
| 04:44:25 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 04:49:39 | <Axman6> | That sure is one big wall of text... |
| 04:49:54 | × | qy quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.7.1) |
| 04:51:40 | × | tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Remote host closed the connection) |
| 04:52:09 | → | tcard joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 04:54:56 | × | beefbambi quits (~beefbambi@183.82.178.13) (Ping timeout: 272 seconds) |
| 04:55:19 | → | beefbambi joins (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) |
| 04:55:54 | × | tcard quits (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) (Remote host closed the connection) |
| 05:02:40 | × | king_gs quits (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Ping timeout: 265 seconds) |
| 05:07:07 | <talismanick> | Fancy hearing that in the Haskell channel |
| 05:07:53 | × | beefbambi quits (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Read error: Connection reset by peer) |
| 05:10:31 | → | beefbambi joins (~beefbambi@183.82.24.61) |
| 05:11:06 | → | king_gs joins (~Thunderbi@187.201.110.169) |
| 05:13:28 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 05:15:52 | → | tcard joins (~tcard@2400:4051:5801:7500:cf17:befc:ff82:5303) |
| 05:17:26 | × | beefbambi quits (~beefbambi@183.82.24.61) (Ping timeout: 268 seconds) |
| 05:18:27 | → | beefbambi joins (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) |
| 05:27:34 | → | mikoto-chan joins (~mikoto-ch@2001:999:784:9369:4fc9:c760:85c5:e867) |
| 05:30:24 | × | instantaphex quits (~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 272 seconds) |
| 05:35:47 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 05:41:21 | → | instantaphex joins (~jb@c-73-171-252-84.hsd1.fl.comcast.net) |
| 05:45:17 | × | mikoto-chan quits (~mikoto-ch@2001:999:784:9369:4fc9:c760:85c5:e867) (Ping timeout: 256 seconds) |
| 05:45:43 | → | farmfrmjakestate joins (~farmfrmja@user/farmfrmjakestate) |
| 05:46:14 | × | instantaphex quits (~jb@c-73-171-252-84.hsd1.fl.comcast.net) (Ping timeout: 272 seconds) |
| 05:49:52 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 252 seconds) |
| 05:49:52 | × | king_gs quits (~Thunderbi@187.201.110.169) (Read error: Connection reset by peer) |
| 05:50:33 | → | king_gs joins (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
| 05:55:13 | × | wroathe quits (~wroathe@user/wroathe) (Quit: leaving) |
| 05:58:26 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Quit: Quit) |
| 06:06:11 | → | freemanX joins (~user@128.106.28.34) |
| 06:07:07 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.7.1) |
| 06:11:17 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 06:11:56 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 06:12:26 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Max SendQ exceeded) |
| 06:12:51 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 06:15:00 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 06:19:41 | → | freeside joins (~mengwong@122.11.214.82) |
| 06:22:45 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
| 06:27:57 | → | boxscape_ joins (~boxscape_@81.191.27.107) |
| 06:35:38 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 06:44:55 | × | king_gs quits (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Ping timeout: 260 seconds) |
| 06:45:09 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.7.1) |
| 06:55:56 | → | nut joins (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 06:55:59 | → | bgs joins (~bgs@212-85-160-171.dynamic.telemach.net) |
| 06:59:47 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Remote host closed the connection) |
| 07:00:37 | → | Feuermagier joins (~Feuermagi@user/feuermagier) |
| 07:00:59 | × | Feuermagier quits (~Feuermagi@user/feuermagier) (Max SendQ exceeded) |
| 07:07:00 | → | ix joins (~ix@82-71-2-184.dsl.in-addr.zen.co.uk) |
| 07:10:03 | × | ix quits (~ix@82-71-2-184.dsl.in-addr.zen.co.uk) (Client Quit) |
| 07:12:14 | → | xff0x joins (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
| 07:14:36 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Quit: Quit) |
| 07:15:17 | × | harveypwca quits (~harveypwc@2601:246:c180:a570:3828:d8:e523:3f67) (Quit: Leaving) |
| 07:15:21 | → | paulpaul1076 joins (~textual@95-29-5-111.broadband.corbina.ru) |
| 07:16:38 | × | Unicorn_Princess quits (~Unicorn_P@user/Unicorn-Princess/x-3540542) (Remote host closed the connection) |
| 07:21:20 | × | bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 07:30:56 | × | Sgeo quits (~Sgeo@user/sgeo) (Read error: Connection reset by peer) |
| 07:35:07 | × | lottaquestions quits (~nick@2607:fa49:503e:7100:a37:6c2e:5bc7:b05c) (Quit: Konversation terminated!) |
| 07:35:41 | → | lottaquestions_ joins (~nick@104.221.24.83) |
| 07:36:29 | × | dsrt^ quits (~dsrt@76.145.190.81) (Remote host closed the connection) |
| 07:40:46 | → | cheater_ joins (~Username@user/cheater) |
| 07:43:29 | × | cheater quits (~Username@user/cheater) (Ping timeout: 260 seconds) |
| 07:43:32 | cheater_ | is now known as cheater |
| 07:47:50 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
| 07:50:29 | × | boxscape_ quits (~boxscape_@81.191.27.107) (Ping timeout: 260 seconds) |
| 08:02:17 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 08:05:45 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Client Quit) |
| 08:09:11 | → | takuan joins (~takuan@178-116-218-225.access.telenet.be) |
| 08:09:23 | × | nut quits (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 260 seconds) |
| 08:09:28 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 08:09:31 | → | MajorBiscuit joins (~MajorBisc@83.22.42.172.ipv4.supernova.orange.pl) |
| 08:15:58 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 08:18:50 | × | beefbambi quits (~beefbambi@2401:4900:230d:f57c:538c:d7cc:50c0:e377) (Ping timeout: 260 seconds) |
| 08:20:43 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 08:21:59 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 08:22:02 | × | xff0x quits (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 272 seconds) |
| 08:24:52 | → | ix joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 08:25:55 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 08:26:57 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Quit: Client closed) |
| 08:28:06 | × | Vajb quits (~Vajb@2001:999:405:5eb2:8d39:b832:a9ee:9bdf) (Read error: Connection reset by peer) |
| 08:29:23 | → | Vajb joins (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) |
| 08:32:50 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 08:35:16 | <freeside> | ok, I have a new question. I'm working on an embedded DSL, grown from a MathLang exercise, where I want to "show my work" as my teacher in math class always used to insist. I want to construct a sort of Explainer monad, I think, which builds a Tree of commentary that parallels the evaluation of each expression. |
| 08:35:43 | <freeside> | I am wondering if I should write my own monad transformer, or somehow find a way to graft this kind of "meta-interpreter" behaviour on to some existing StateT-like monad |
| 08:37:08 | → | jwiegley joins (~jwiegley@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
| 08:37:15 | <freeside> | basically, when I go off and eval a "2 * (3 + 4)" I want it to produce commentary like "now we add two terms. The first term is a simple number. But the second term needs to itself be evaluated first. Entering the parentheses..." |
| 08:38:23 | <freeside> | constructing a tree-like structure feels like the right approach, though the tree will eventually be flattened to something that can be opened in Org-mode, so the depth of the node will be reflected in the number of *'s at the front of the putStrLn |
| 08:38:36 | <boxscape_> | isn't this more a Writer thing than a State thing? |
| 08:39:01 | <freeside> | yes, it is. I want to keep State because in the future I am expecting some computations to want to refer to the results of earlier statements. |
| 08:39:10 | <boxscape_> | ah |
| 08:39:11 | <freeside> | that allows me to maintain a symtab of vars |
| 08:40:56 | × | ix quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.7.1) |
| 08:41:11 | <freeside> | thinking of >>= as a "programmable semicolon" I would, naively, expect every bind to construct a new Node context for the subexpression, and then the monad would stitch together the returned nodes as children of the current node for the return. |
| 08:41:33 | × | talismanick quits (~talismani@76.133.152.122) (Ping timeout: 268 seconds) |
| 08:42:14 | <freeside> | or maybe that happens explicitly in the eval, hm |
| 08:42:34 | <jackdk> | I normally write small-step evaluation rules for this, and then a function `trace :: Expr -> NonEmpty Expr` that contains all the evaluation steps |
| 08:43:01 | <jackdk> | if you have a function `step :: Expr -> Maybe Expr` that composes all the evaluation rules. |
| 08:44:00 | → | zeenk joins (~zeenk@2a02:2f04:a110:ac00::7fe) |
| 08:44:29 | freeside | thinks about this |
| 08:46:24 | <freeside> | maybe i'm overthinking it; if step :: Expr -> Maybe (Expr, Commentary) then I suppose I could stitch the Commentary into a tree as part of the trace, without needing to set up a new monad explicitly |
| 08:46:53 | → | acidjnk joins (~acidjnk@p200300d6e7137a857c27d2eace8e6a0b.dip0.t-ipconnect.de) |
| 08:46:55 | <freeside> | then I can keep it simple with just a type Commentary = Data.Tree String |
| 08:47:07 | <mauke> | > 2 * (3 + 4) :: Expr |
| 08:47:10 | <lambdabot> | 2 * (3 + 4) |
| 08:48:40 | <freeside> | at the same time i feel like i'm reinventing Writer |
| 08:49:31 | → | kenran joins (~user@user/kenran) |
| 08:50:49 | → | avicenzi joins (~avicenzi@2a00:ca8:a1f:b004::c32) |
| 08:54:26 | × | mncheck-m quits (~mncheck@193.224.205.254) (Remote host closed the connection) |
| 08:54:36 | <freeside> | instead of step being in the Writer/State monad, maybe I want to construct a new Writer/State monadic context within step, and runState the sub-expr evalautions manually, so I have an opportunity to return a Tree Node |
| 08:57:37 | <jackdk> | I don't think you want to talk about "the" tree, because you will have a linear sequence of individual trees as you rewrite nodes. If each tree emitted the rule it applied and the location it was applied at (maybe using an ADT representing zipper operations or something), what you want turns into an unfoldm over some kind of writer |
| 09:00:05 | × | ericjmorey[m] quits (~ericjmore@2001:470:69fc:105::7afc) (Quit: You have been kicked for being idle) |
| 09:00:52 | → | nschoe joins (~q@2a01:e0a:8e:a190:3e45:2461:8514:e8d2) |
| 09:01:45 | → | merijn joins (~merijn@145.116.35.30) |
| 09:04:04 | freeside | thinks about this |
| 09:08:08 | → | fserucas joins (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) |
| 09:08:39 | × | merijn quits (~merijn@145.116.35.30) (Ping timeout: 260 seconds) |
| 09:09:04 | → | nut joins (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 09:13:08 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 09:13:21 | → | igghibu joins (~igghibu@178.249.211.75) |
| 09:14:24 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:6169:588f:5c00:bfd8) (Remote host closed the connection) |
| 09:17:01 | → | azimut joins (~azimut@gateway/tor-sasl/azimut) |
| 09:17:02 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 09:21:01 | × | paulpaul1076 quits (~textual@95-29-5-111.broadband.corbina.ru) (Ping timeout: 268 seconds) |
| 09:21:35 | → | chele joins (~chele@user/chele) |
| 09:22:32 | phma_ | is now known as phma |
| 09:31:10 | × | anthezium quits (~ted@75.164.54.59) (Ping timeout: 260 seconds) |
| 09:33:29 | → | merijn joins (~merijn@145.116.35.30) |
| 09:34:50 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 09:37:51 | × | chexum quits (~quassel@gateway/tor-sasl/chexum) (Remote host closed the connection) |
| 09:37:52 | → | anthezium joins (~ted@75.164.81.158) |
| 09:38:19 | → | chexum joins (~quassel@gateway/tor-sasl/chexum) |
| 09:39:11 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 09:42:47 | → | mei_ joins (~mei@user/mei) |
| 09:43:43 | × | mei quits (~mei@user/mei) (Killed (NickServ (GHOST command used by mei_))) |
| 09:43:46 | → | xff0x joins (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
| 09:50:02 | × | mei_ quits (~mei@user/mei) (Quit: mei_) |
| 09:54:11 | × | xff0x quits (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 264 seconds) |
| 09:55:42 | × | Vajb quits (~Vajb@hag-jnsbng11-58c3a5-27.dhcp.inet.fi) (Read error: Connection reset by peer) |
| 09:55:54 | → | Vajb joins (~Vajb@2001:999:405:5eb2:8d39:b832:a9ee:9bdf) |
| 09:59:34 | × | freeside quits (~mengwong@122.11.214.82) (Read error: Connection reset by peer) |
| 10:03:57 | → | teo joins (~teo@user/teo) |
| 10:06:08 | × | tzh quits (~tzh@c-24-21-73-154.hsd1.wa.comcast.net) (Quit: zzz) |
| 10:09:21 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 10:10:28 | → | coot joins (~coot@213.134.171.3) |
| 10:13:16 | × | kenran quits (~user@user/kenran) (Remote host closed the connection) |
| 10:13:24 | × | troydm quits (~troydm@user/troydm) (Quit: What is Hope? That all of your wishes and all of your dreams come true? To turn back time because things were not supposed to happen like that (C) Rau Le Creuset) |
| 10:14:03 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 268 seconds) |
| 10:14:13 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Ping timeout: 260 seconds) |
| 10:14:55 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:6169:588f:5c00:bfd8) |
| 10:17:15 | → | Tuplanolla joins (~Tuplanoll@91-159-68-152.elisa-laajakaista.fi) |
| 10:19:35 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:6169:588f:5c00:bfd8) (Ping timeout: 260 seconds) |
| 10:22:09 | × | gaff quits (~gaff@49.207.203.119) (Remote host closed the connection) |
| 10:23:08 | → | troydm joins (~troydm@user/troydm) |
| 10:23:13 | × | merijn quits (~merijn@145.116.35.30) (Ping timeout: 252 seconds) |
| 10:24:12 | → | mncheck joins (~mncheck@193.224.205.254) |
| 10:26:41 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 10:27:27 | × | nut quits (~nut@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Quit: WeeChat 3.5) |
| 10:37:10 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 10:37:41 | × | Lord_of_Life quits (~Lord@user/lord-of-life/x-2819915) (Ping timeout: 256 seconds) |
| 10:38:38 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 10:38:47 | → | Lord_of_Life joins (~Lord@user/lord-of-life/x-2819915) |
| 10:39:15 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1) |
| 10:45:39 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 10:47:53 | → | jinsun__ joins (~jinsun@user/jinsun) |
| 10:47:53 | jinsun | is now known as Guest157 |
| 10:47:53 | × | Guest157 quits (~jinsun@user/jinsun) (Killed (molybdenum.libera.chat (Nickname regained by services))) |
| 10:47:53 | jinsun__ | is now known as jinsun |
| 10:51:11 | → | merijn joins (~merijn@c-001-001-016.client.esciencecenter.eduvpn.nl) |
| 10:55:45 | → | gaff joins (~gaff@49.207.203.119) |
| 10:55:56 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 272 seconds) |
| 11:00:04 | × | merijn quits (~merijn@c-001-001-016.client.esciencecenter.eduvpn.nl) (Ping timeout: 260 seconds) |
| 11:04:19 | × | teddyc quits (theodorc@cassarossa.samfundet.no) (Ping timeout: 256 seconds) |
| 11:09:06 | × | jinsun quits (~jinsun@user/jinsun) (Ping timeout: 255 seconds) |
| 11:09:11 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 11:10:04 | → | jinsun joins (~jinsun@user/jinsun) |
| 11:10:39 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 11:15:08 | → | merijn joins (~merijn@c-001-001-016.client.esciencecenter.eduvpn.nl) |
| 11:15:34 | × | gaff quits (~gaff@49.207.203.119) (Ping timeout: 272 seconds) |
| 11:16:21 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) |
| 11:17:01 | → | teddyc joins (theodorc@cassarossa.samfundet.no) |
| 11:20:43 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) (Ping timeout: 248 seconds) |
| 11:20:51 | × | fr33domlover quits (~fr33domlo@towards.vision) (Quit: The Lounge - https://thelounge.chat) |
| 11:21:36 | × | cheater quits (~Username@user/cheater) (Read error: Connection reset by peer) |
| 11:22:04 | → | cheater joins (~Username@user/cheater) |
| 11:22:42 | → | thongpv87 joins (~thongpv87@2402:9d80:389:9e3a:bd66:3325:75a0:8382) |
| 11:23:27 | → | freeside joins (~mengwong@103.252.202.159) |
| 11:24:05 | → | fr33domlover joins (~fr33domlo@towards.vision) |
| 11:24:16 | × | merijn quits (~merijn@c-001-001-016.client.esciencecenter.eduvpn.nl) (Ping timeout: 252 seconds) |
| 11:24:28 | × | razetime quits (~Thunderbi@49.207.222.244) (Quit: See You Space Cowboy) |
| 11:25:30 | × | thongpv quits (~thongpv87@2402:9d80:3ca:5321:f609:86e9:b143:6b82) (Ping timeout: 260 seconds) |
| 11:25:55 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 11:28:03 | × | freemanX quits (~user@128.106.28.34) (Ping timeout: 268 seconds) |
| 11:28:03 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 260 seconds) |
| 11:30:57 | × | haskl quits (~haskl@user/haskl) (Read error: Connection reset by peer) |
| 11:33:16 | → | haskl joins (~haskl@user/haskl) |
| 11:34:30 | → | fizbin joins (~fizbin@user/fizbin) |
| 11:37:41 | × | econo quits (uid147250@user/econo) (Quit: Connection closed for inactivity) |
| 11:42:13 | → | freeside joins (~mengwong@103.252.202.159) |
| 11:45:17 | → | gaff joins (~gaff@49.207.203.119) |
| 11:47:54 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 260 seconds) |
| 11:48:04 | → | xff0x joins (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) |
| 11:48:29 | jinsun | is now known as Guest8141 |
| 11:48:29 | → | jinsun__ joins (~jinsun@user/jinsun) |
| 11:48:29 | × | Guest8141 quits (~jinsun@user/jinsun) (Killed (molybdenum.libera.chat (Nickname regained by services))) |
| 11:48:29 | jinsun__ | is now known as jinsun |
| 11:51:17 | → | CiaoSen joins (~Jura@p200300c9572e35002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 11:52:18 | × | gaff quits (~gaff@49.207.203.119) (Ping timeout: 272 seconds) |
| 11:56:48 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 11:57:47 | → | gaff joins (~gaff@49.207.203.119) |
| 12:02:38 | → | elevenkb joins (~elevenkb@105.226.98.103) |
| 12:02:39 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Quit: Client closed) |
| 12:02:53 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 12:05:10 | × | pyrex quits (~pyrex@user/pyrex) (Ping timeout: 260 seconds) |
| 12:06:42 | → | pyrex joins (~pyrex@user/pyrex) |
| 12:09:29 | × | CiaoSen quits (~Jura@p200300c9572e35002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 12:11:39 | × | pyrex quits (~pyrex@user/pyrex) (Ping timeout: 255 seconds) |
| 12:11:41 | <ncf> | can i find a non-van-Laarhoven presentation of traversals, folds etc. somewhere? |
| 12:12:03 | → | pyrex joins (~pyrex@user/pyrex) |
| 12:12:11 | <ncf> | (in the same spirit as Lens s t a b = { get :: s -> a, set :: b -> s -> t }) |
| 12:14:00 | <ncf> | i guess (s -> [a], [b] -> s -> t) + complicated laws would do for traversals |
| 12:16:38 | → | hashn3rd1 joins (~hashn3rd@ip72-221-42-80.ks.ks.cox.net) |
| 12:16:46 | × | v0id_ptr quits (~adrift@user/ptr-frac7al/x-0038398) (Ping timeout: 268 seconds) |
| 12:16:46 | × | hashn3rd quits (~hashn3rd@ip72-221-42-80.ks.ks.cox.net) (Read error: Connection reset by peer) |
| 12:16:51 | × | hashn3rd1 quits (~hashn3rd@ip72-221-42-80.ks.ks.cox.net) (Read error: Connection reset by peer) |
| 12:17:35 | → | hashn3rd joins (~hashn3rd@ip72-221-42-80.ks.ks.cox.net) |
| 12:18:00 | × | fizbin quits (~fizbin@user/fizbin) (Ping timeout: 260 seconds) |
| 12:19:24 | × | mechap quits (~mechap@user/mechap) (Ping timeout: 260 seconds) |
| 12:20:29 | → | mikoto-chan joins (~mikoto-ch@2001:999:780:d406:c4ad:401:15f7:47c7) |
| 12:20:57 | → | mechap joins (~mechap@user/mechap) |
| 12:23:54 | <Jadesheit[m]> | I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/2cd267800fbe9de7000e8c93f32c955d64593d78>) |
| 12:23:57 | → | Umeaboy joins (~Umeaboy@94-255-145-133.cust.bredband2.com) |
| 12:24:06 | <Jadesheit[m]> | s/```/`/, s/```/`/ |
| 12:24:17 | <Jadesheit[m]> | * I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/96525adab2ba4e965981e3426b9ec493a8d47993>) |
| 12:24:35 | <Jadesheit[m]> | * I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/96525adab2ba4e965981e3426b9ec493a8d47993>) |
| 12:25:04 | × | gaff quits (~gaff@49.207.203.119) (Quit: Bye ...) |
| 12:25:15 | <Umeaboy> | Uuuuhm. I've locally built ghc and it went fine. However I'm missing some deps to build rpm packages for Mageia...... They need ghc to be installed which I already have. |
| 12:25:24 | → | gaff joins (~gaff@49.207.203.119) |
| 12:25:29 | <Jadesheit[m]> | * I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/a267bdb1e4f21754f0115ff0e5150cc17ccc2fa2>) |
| 12:25:41 | <Jadesheit[m]> | * I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/c35c612ae5605671e7a75edc9c1962c3977d8dc1>) |
| 12:25:53 | <Jadesheit[m]> | * I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/df62d1b511a8d9bf15f537ef6cfba103b08ecb44>) |
| 12:26:22 | → | Orbstheorem joins (~orbstheor@2001:470:69fc:105::a56) |
| 12:26:59 | <Jadesheit[m]> | * I'm designing a haskell inspired language and wondered what you people think of this so far... (full message at <https://libera.ems.host/_matrix/media/v3/download/libera.chat/d76d0b7b9bc9374fee2b615920918377e7ebd599>) |
| 12:27:14 | <Umeaboy> | echo $PATH |
| 12:27:16 | <gaff> | if you define a flag in cabal, say Debug, then what does `-DDEBUG` do? |
| 12:27:43 | <Umeaboy> | That shows that I have ghc installed. |
| 12:28:10 | <Umeaboy> | It shouldn't matter that I used ghcup to install it, right? |
| 12:29:26 | <gaff> | you can see an example code here: https://cabal.readthedocs.io/en/3.4/cabal-package.html?highlight=cpp-options#id3 |
| 12:29:56 | <mauke> | Jade 🏳️⚧️ (she/it): I'm not a big fan of using nesting syntax for non-nestable constructs |
| 12:32:04 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 12:34:22 | <gaff> | appreciate any help |
| 12:37:16 | <boxscape_> | gaff: I haven't used it but I imagine it acts like a line that says `#define DEBUG` |
| 12:37:37 | <boxscape_> | in the source code |
| 12:37:52 | <gaff> | boxscape_: ok |
| 12:37:58 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 12:38:23 | <gaff> | what does `-` in front of `-DDEBUG` signify? |
| 12:39:02 | <boxscape_> | I believe -D is a flag for the C preprocessor, and DEBUG is the argument |
| 12:39:04 | → | freemanX joins (~user@14.100.44.229) |
| 12:39:17 | <boxscape_> | so it's just the usual command line tool flag syntax |
| 12:40:05 | × | elevenkb quits (~elevenkb@105.226.98.103) (Quit: Client closed) |
| 12:41:26 | <gaff> | boxscape_: the actual code in the link i pasted is something like this: `if flag(Debug) CPP-Options: -DDEBUG`. which reads to me as `if Debug is True, then set cpp-options as that value of Debug` |
| 12:42:21 | <boxscape_> | what do you mean by "that value of Debug"? |
| 12:43:17 | <gaff> | boxscape_: its current value, which is `True` -- the one that is in the `if` condition |
| 12:44:44 | <boxscape_> | gaff: no, DEBUG is different from Debug - `-DDEBUG` provided as flag to the C preprocessor should essentially mean that all `#ifdef DEBUG` pragras in the Haskell code will see `DEBUG` as being #define'd, and the code within the `#ifdef` will be included |
| 12:44:53 | <boxscape_> | s/pragras/pragmas |
| 12:45:25 | <boxscape_> | Debug is either true or false, but DEBUG is either defined or not defined |
| 12:45:44 | <boxscape_> | (and Debug is in cabal-land whereas DEBUG is in CPP-land) |
| 12:45:44 | → | wootehfoot joins (~wootehfoo@user/wootehfoot) |
| 12:45:54 | <gaff> | ok, got it. thanks so much |
| 12:45:59 | <boxscape_> | np |
| 12:45:59 | <mauke> | s/defined/defined to expand to a list of pp-tokens/ |
| 12:46:27 | <boxscape_> | right, though typically for DEBUG that'd be an empty list, I suppose |
| 12:46:41 | <mauke> | in the case of -DFOO, that list is 1 |
| 12:47:00 | <gaff> | mauke: what would that list be like? |
| 12:47:14 | <gaff> | for DFOO |
| 12:47:19 | <mauke> | what |
| 12:47:38 | <gaff> | oh, sorry |
| 12:48:08 | mauke | is confused |
| 12:48:14 | <gaff> | mauke: the problem i had was that the documentation on this is incomplete in the cabal docs |
| 12:48:35 | <boxscape_> | mauke I misread your comment as first as "that list has length 1", maybe that was the confusion |
| 12:48:46 | <gaff> | yep |
| 12:48:58 | <mauke> | ah. no, it is literally the integer constant "1" |
| 12:50:24 | <gaff> | mauke: could you explain that -- why is it the integer 1? |
| 12:50:28 | <mauke> | (which means #if DEBUG will work in addition to #ifdef DEBUG) |
| 12:50:50 | <gaff> | oh, ok |
| 12:51:03 | <boxscape_> | ah I didn't know that |
| 12:51:18 | <gaff> | by the way, i am using this stuff to test an internal function in a module |
| 12:51:19 | <mauke> | https://gcc.gnu.org/onlinedocs/gcc-12.2.0/gcc/Preprocessor-Options.html#Preprocessor-Options |
| 12:51:22 | <mauke> | that's just how it is |
| 12:52:07 | <boxscape_> | mauke so that means "#define DEBUG" is different from "-DDEBUG"? Or does an empty #define also make it 1? |
| 12:52:31 | <mauke> | I'm pretty sure it's the former |
| 12:52:37 | <boxscape_> | ok |
| 12:52:47 | <mauke> | you'd have to to -DDEBUG= to get the effect of #define DEBUG on the command line |
| 12:52:51 | <boxscape_> | I see |
| 12:53:02 | <mauke> | s/to to/to do/ |
| 12:53:07 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 256 seconds) |
| 12:54:18 | <gaff> | mauke: so just to be clear, what does `if flag(Debug) CPP-Options: -DDEBUG` do exactly? is it the same thing boxscape_ suggested? |
| 12:54:26 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 12:54:55 | → | img joins (~img@user/img) |
| 12:55:55 | <mauke> | uh, that looks like a cabal directive. if the "Debug" flag is active, it'll set the CPP-Options property |
| 12:56:20 | <boxscape_> | I said it acts as "#define DEBUG", but it actually acts as "#define DEBUG 1". So it predefines it as a macro with definition 1. No difference in how it interacts with #ifdef, but that means `#if DEBUG` also works |
| 12:56:21 | <mauke> | and we've been discussing the effect of that particular cpp option |
| 12:56:27 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 12:57:24 | <gaff> | boxscape_: yeah, thanks |
| 12:58:09 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 12:59:24 | <gaff> | mauke: thanks much |
| 13:00:19 | <gaff> | i came across this stuff for the first time so things were not clear ... thanks for your help |
| 13:01:28 | × | gaff quits (~gaff@49.207.203.119) () |
| 13:05:34 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 13:08:35 | → | img joins (~img@user/img) |
| 13:09:28 | × | igghibu quits (~igghibu@178.249.211.75) (Quit: igghibu) |
| 13:11:35 | → | hank_ joins (~hank@45-33-24-80.ip.linodeusercontent.com) |
| 13:12:06 | × | xff0x quits (~xff0x@p3326132-ipngn2103sapodori.hokkaido.ocn.ne.jp) (Ping timeout: 272 seconds) |
| 13:13:11 | → | `2jt joins (~jtomas@84.red-88-17-186.dynamicip.rima-tde.net) |
| 13:17:48 | × | freemanX quits (~user@14.100.44.229) (Ping timeout: 272 seconds) |
| 13:18:27 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 13:19:09 | → | freeside joins (~mengwong@103.252.202.159) |
| 13:19:46 | × | acidjnk quits (~acidjnk@p200300d6e7137a857c27d2eace8e6a0b.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 13:24:08 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 272 seconds) |
| 13:24:35 | × | panovia quits (~user@user/siracusa) (Quit: Bye!) |
| 13:26:49 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 13:27:16 | → | img joins (~img@user/img) |
| 13:30:16 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Quit: Client closed) |
| 13:31:26 | → | boxscape_ joins (~boxscape_@213.52.37.155) |
| 13:32:22 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 13:34:47 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 13:34:55 | × | thongpv87 quits (~thongpv87@2402:9d80:389:9e3a:bd66:3325:75a0:8382) (Remote host closed the connection) |
| 13:35:10 | → | thongpv87 joins (~thongpv87@2402:9d80:389:9e3a:648f:1ca5:2c13:2a3a) |
| 13:35:24 | → | elevenkb joins (~elevenkb@105.226.98.103) |
| 13:40:38 | → | mc47 joins (~mc47@xmonad/TheMC47) |
| 13:41:52 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
| 13:43:29 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 13:46:45 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Client Quit) |
| 13:49:30 | → | freeside joins (~mengwong@103.252.202.159) |
| 13:50:23 | → | sammelweis joins (~quassel@c-68-48-18-140.hsd1.mi.comcast.net) |
| 13:56:00 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 260 seconds) |
| 14:02:20 | × | isekaijin quits (~isekaijin@user/isekaijin) (Quit: WeeChat 3.7.1) |
| 14:03:57 | × | sammelweis quits (~quassel@c-68-48-18-140.hsd1.mi.comcast.net) (Quit: No Ping reply in 180 seconds.) |
| 14:05:27 | → | sammelweis joins (~quassel@c-68-48-18-140.hsd1.mi.comcast.net) |
| 14:08:44 | × | bitdex quits (~bitdex@gateway/tor-sasl/bitdex) (Ping timeout: 255 seconds) |
| 14:09:00 | → | freeside joins (~mengwong@103.252.202.159) |
| 14:09:19 | → | razetime joins (~Thunderbi@49.207.222.244) |
| 14:09:44 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 14:11:24 | → | bitdex joins (~bitdex@gateway/tor-sasl/bitdex) |
| 14:14:37 | → | shriekingnoise joins (~shrieking@186.137.175.87) |
| 14:15:28 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 14:17:53 | → | Unicorn_Princess joins (~Unicorn_P@user/Unicorn-Princess/x-3540542) |
| 14:20:50 | → | thegeekinside joins (~thegeekin@189.217.82.244) |
| 14:25:23 | → | Guest6255 joins (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) |
| 14:25:35 | <Inst> | https://www.reddit.com/r/haskell/comments/103v4hc/companies_abandoning_haskell/ |
| 14:25:36 | <Inst> | ;_; |
| 14:25:43 | <Inst> | at least they're ditching Haskell for Rust, most of the time |
| 14:26:08 | × | elevenkb quits (~elevenkb@105.226.98.103) (Quit: Client closed) |
| 14:26:21 | × | Guest6255 quits (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) (Client Quit) |
| 14:27:18 | → | Guest6244 joins (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) |
| 14:27:34 | × | Guest6244 quits (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) (Client Quit) |
| 14:29:15 | × | Kaipei quits (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) (Ping timeout: 260 seconds) |
| 14:29:19 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 14:30:28 | → | gaff joins (~gaff@49.207.203.119) |
| 14:31:47 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 14:31:49 | × | razetime quits (~Thunderbi@49.207.222.244) (Ping timeout: 268 seconds) |
| 14:31:53 | × | sammelweis quits (~quassel@c-68-48-18-140.hsd1.mi.comcast.net) (Quit: No Ping reply in 180 seconds.) |
| 14:33:17 | <Rembane> | I love this reply: "Also realize that companies make mistakes: poor decisions are made consistently, both for and against the use of Haskell." -- santiweight |
| 14:37:37 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 14:38:23 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 14:39:25 | → | Guest6215 joins (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) |
| 14:40:45 | × | Guest6215 quits (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) (Client Quit) |
| 14:42:19 | × | mikoto-chan quits (~mikoto-ch@2001:999:780:d406:c4ad:401:15f7:47c7) (Ping timeout: 248 seconds) |
| 14:49:19 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 14:50:07 | → | bontaq joins (~user@ool-45779fe5.dyn.optonline.net) |
| 14:58:54 | × | juri_ quits (~juri@84-19-175-179.pool.ovpn.com) (Ping timeout: 252 seconds) |
| 14:59:25 | × | MajorBiscuit quits (~MajorBisc@83.22.42.172.ipv4.supernova.orange.pl) (Quit: WeeChat 3.6) |
| 15:01:54 | → | CiaoSen joins (~Jura@p200300c9572e35002a3a4dfffe84dbd5.dip0.t-ipconnect.de) |
| 15:04:23 | → | mikoto-chan joins (~mikoto-ch@2001:999:504:b4d9:c06a:c7ee:34ce:3b73) |
| 15:08:31 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 15:09:10 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 15:10:02 | → | Sgeo joins (~Sgeo@user/sgeo) |
| 15:10:13 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 15:10:39 | × | coot quits (~coot@213.134.171.3) (Quit: coot) |
| 15:12:29 | <maerwald> | this type of FUD pops up every now and again |
| 15:12:34 | <maerwald> | "Haskell is dying" etc |
| 15:13:01 | <maerwald> | yes, the glory days of research are over and other languages are doing more radical stuff |
| 15:13:14 | <maerwald> | becoming mature is boring |
| 15:14:48 | → | Lycurgus joins (~juan@user/Lycurgus) |
| 15:15:48 | → | juri_ joins (~juri@84-19-175-179.pool.ovpn.com) |
| 15:16:11 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 246 seconds) |
| 15:16:34 | ← | jakalx parts (~jakalx@base.jakalx.net) (Error from remote client) |
| 15:18:02 | <Axman6> | Inst: I used to work at Tsuru Capital, and I was actually shocked how long they managed to keep using Haskell - their core business is high frequency trading, where nanoseconds matter, and the fact they could actually make money with a HFT system written in Haskell says a lot. I'm not at all surprised that they would move to Rust, being able to really control memory usage is vital for that sort of development |
| 15:19:05 | <Axman6> | maerwald: yeah pretty much, getting work done isn't very flashy. I would love it if we were a bit more vocal about cool stuff people were doing though, and had a few more large, open source projects with a reasonable community around them |
| 15:19:48 | <sm> | someone should track those |
| 15:20:03 | <sm> | ishaskellusefulyet.com |
| 15:20:19 | <maerwald> | Axman6: depends on the community... Go community is much more "getting it done" focussed |
| 15:20:27 | <maerwald> | maybe too much |
| 15:20:56 | <Axman6> | I love the Tsuru Capital's code challenge page, it still tells you to use GHC flags for your rust program =) |
| 15:21:08 | <sm> | agreed |
| 15:21:51 | <Axman6> | maerwald: yeah, there's a lot of stuff being written in Go, but knowing the language even a little is enough to make me want to run far, far away from it |
| 15:22:09 | <Axman6> | Kubernetes is Go right? |
| 15:22:09 | <sm> | agreed |
| 15:23:27 | <Axman6> | I feel like that had a lot to do with people deciding it was a good choice to write network things in - their HTTP library is pretty bulletproof from what I've heard, so writing APIs is relatively safe and performs well |
| 15:23:52 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 15:25:18 | <Axman6> | Also, fun fact about the Tsuru Capital code sample, I'm pretty sure the background picture is taken from their office |
| 15:25:20 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 15:26:29 | <Axman6> | I remember we were using a lot of Iteratees at Tsuru... hands up who even remembers the word |
| 15:27:18 | <geekosaur> | 👋 |
| 15:27:52 | × | Lycurgus quits (~juan@user/Lycurgus) (Quit: Exeunt: personae.ai-integration.biz) |
| 15:27:58 | × | geekosaur quits (~geekosaur@xmonad/geekosaur) (Quit: Leaving) |
| 15:28:44 | <Inst> | maerwald; my argument is more that pushing haskell adoption in the future should take advantage of Rust becoming popular and making some of the concepts common in Haskell more mainstream |
| 15:29:20 | → | freeside joins (~mengwong@103.252.202.159) |
| 15:29:30 | <maerwald> | I never pushed for Haskell adoption in industry (I usually advise people to use something more common if they really ask). I just try to make the tooling better. |
| 15:30:17 | → | geekosaur joins (~geekosaur@xmonad/geekosaur) |
| 15:30:56 | <Inst> | ah, i guess |
| 15:31:43 | <Inst> | tbh i've been annoying on FP discord in part because I'm worried about Haskell dying, etc, but I'm sort of come to peace about it; Haskell is in large part a hobbyist / research language, while HF wants to push for commercial adoption, the hobbyists are less interested in such |
| 15:31:54 | <geekosaur> | iteratees are still around, we just call them conduit and pipes these days |
| 15:32:09 | → | razetime joins (~Thunderbi@49.207.222.244) |
| 15:32:38 | <Axman6> | and streaming and streamly and ... |
| 15:33:03 | <Axman6> | we were using the Iteratees package though, back when you had to read Oleg papers to get things done in Haskell |
| 15:33:15 | <Guest5476> | and simple lists |
| 15:33:33 | × | `2jt quits (~jtomas@84.red-88-17-186.dynamicip.rima-tde.net) (Remote host closed the connection) |
| 15:33:51 | → | ddellacosta joins (~ddellacos@143.244.47.85) |
| 15:33:56 | <Axman6> | eh, not really, iteratees brought the ability to control resources in a way you can't with just lists |
| 15:33:57 | → | `2jt joins (~jtomas@84.red-88-17-186.dynamicip.rima-tde.net) |
| 15:34:18 | <sm> | there was a recent (HN?) discussion about how Go's default (HTTP?) networking is in fact horribly inefficient over lossy connections |
| 15:34:25 | <sm> | stuck in TCP slow start mode or some such |
| 15:35:17 | <[exa]> | you fix that by replacing the lossy connection |
| 15:36:14 | Axman6 | plugs the fibre right into his brain |
| 15:39:17 | <kee> | sm: It's the TCP_NODELAY flag; it does no buffering. |
| 15:39:59 | <kee> | That's not the same as slow start mode, really; if you try to dump a huge buffer through the pipe, it'll send quickly. But for some programming styles, it's pathological. |
| 15:42:05 | → | jonathanx joins (~jonathan@h-178-174-176-109.A357.priv.bahnhof.se) |
| 15:42:07 | × | mikoto-chan quits (~mikoto-ch@2001:999:504:b4d9:c06a:c7ee:34ce:3b73) (Ping timeout: 265 seconds) |
| 15:42:51 | × | razetime quits (~Thunderbi@49.207.222.244) (Read error: Connection reset by peer) |
| 15:43:19 | <Axman6> | One day I'm sure Go programmers will come up with a way to see all their code through all the error handling |
| 15:44:28 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 15:51:07 | <sm> | it was https://news.ycombinator.com/item?id=34179426 maybe |
| 15:52:20 | × | `2jt quits (~jtomas@84.red-88-17-186.dynamicip.rima-tde.net) (Ping timeout: 272 seconds) |
| 15:52:47 | → | Kaipei joins (~Kaiepi@nwcsnbsc03w-47-55-159-86.dhcp-dynamic.fibreop.nb.bellaliant.net) |
| 15:58:59 | → | tremon joins (~tremon@83-85-213-108.cable.dynamic.v4.ziggo.nl) |
| 16:02:29 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 16:03:58 | × | boxscape_ quits (~boxscape_@213.52.37.155) (Quit: Client closed) |
| 16:04:57 | → | bgs joins (~bgs@212-85-160-171.dynamic.telemach.net) |
| 16:07:05 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1) |
| 16:14:20 | → | acidjnk joins (~acidjnk@p200300d6e7137a189184577a263e0281.dip0.t-ipconnect.de) |
| 16:15:42 | × | thegeekinside quits (~thegeekin@189.217.82.244) (Remote host closed the connection) |
| 16:15:53 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 260 seconds) |
| 16:16:24 | × | teo quits (~teo@user/teo) (Ping timeout: 272 seconds) |
| 16:17:27 | → | teo joins (~teo@user/teo) |
| 16:25:42 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 16:31:23 | × | shapr quits (~user@68.54.166.125) (Ping timeout: 264 seconds) |
| 16:33:35 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 252 seconds) |
| 16:39:58 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 16:41:40 | → | king_gs joins (~Thunderbi@187.201.110.169) |
| 16:42:46 | → | razetime joins (~Thunderbi@49.207.222.244) |
| 16:44:59 | → | igghibu joins (~igghibu@178.249.211.75) |
| 16:45:45 | × | jespada quits (~jespada@nmal-24-b2-v4wan-166357-cust1764.vm24.cable.virginm.net) (Quit: Textual IRC Client: www.textualapp.com) |
| 16:47:15 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Remote host closed the connection) |
| 16:48:35 | → | caryhartline joins (~caryhartl@107.140.218.181) |
| 16:49:01 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 16:53:20 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 260 seconds) |
| 16:53:56 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) |
| 16:54:20 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 16:56:14 | × | CiaoSen quits (~Jura@p200300c9572e35002a3a4dfffe84dbd5.dip0.t-ipconnect.de) (Ping timeout: 246 seconds) |
| 16:56:15 | × | chele quits (~chele@user/chele) (Quit: Leaving) |
| 16:58:29 | × | acidjnk quits (~acidjnk@p200300d6e7137a189184577a263e0281.dip0.t-ipconnect.de) (Ping timeout: 256 seconds) |
| 16:58:32 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 16:59:49 | × | jmdaemon quits (~jmdaemon@user/jmdaemon) (Ping timeout: 268 seconds) |
| 17:00:31 | → | freeside joins (~mengwong@103.252.202.159) |
| 17:04:29 | → | shapr joins (~user@68.54.166.125) |
| 17:05:10 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) (Remote host closed the connection) |
| 17:05:38 | → | boxscape_ joins (~boxscape_@81.191.27.107) |
| 17:06:48 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 17:07:05 | × | king_gs quits (~Thunderbi@187.201.110.169) (Ping timeout: 246 seconds) |
| 17:09:26 | → | `2jt joins (~jtomas@84.red-88-17-186.dynamicip.rima-tde.net) |
| 17:10:15 | ← | jakalx parts (~jakalx@base.jakalx.net) () |
| 17:12:14 | → | coot joins (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) |
| 17:14:41 | → | jakalx joins (~jakalx@base.jakalx.net) |
| 17:21:33 | → | jao joins (~jao@cpc103048-sgyl39-2-0-cust502.18-2.cable.virginm.net) |
| 17:26:41 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 17:27:16 | → | titibandit1 joins (~titibandi@xdsl-87-78-235-220.nc.de) |
| 17:29:02 | <stefan-_> | @src length |
| 17:29:02 | <lambdabot> | Source not found. I can't hear you -- I'm using the scrambler. |
| 17:32:57 | <c_wraith> | stefan-_: it's part of the Foldable class. It has a different implementation for every type. |
| 17:33:10 | × | `2jt quits (~jtomas@84.red-88-17-186.dynamicip.rima-tde.net) (Quit: Leaving) |
| 17:33:21 | <c_wraith> | (or at least it might - it's got a default implementation) |
| 17:33:24 | <stefan-_> | yep, I just checked via hoogle |
| 17:34:16 | <geekosaur> | also note that @src consults a small database shipped with lambdabot; it doesn't actually look up sources |
| 17:36:23 | <boxscape_> | @src sortBy |
| 17:36:24 | <lambdabot> | -- The actual definition used by GHC is an optimised mergesort. |
| 17:36:24 | <lambdabot> | sortBy cmp = foldr (insertBy cmp) [] |
| 17:36:32 | × | razetime quits (~Thunderbi@49.207.222.244) (Quit: See You Space Cowboy) |
| 17:36:48 | <geekosaur> | https://hackage.haskell.org/package/lambdabot-5.3.1/src/State/source |
| 17:37:47 | <geekosaur> | (I'm not sure why the source db is in `lambdabot` but the code that requires it is in `lambdabot-haskell-plugins`) |
| 17:38:53 | <int-e> | Good question, but it means less messing around with Path modules. |
| 17:39:56 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) |
| 17:40:05 | <int-e> | This function would have to check a lot more paths otherwise: https://github.com/lambdabot/lambdabot/blob/master/lambdabot-core/src/Lambdabot/File.hs#L79-L83 |
| 17:40:34 | <int-e> | (or the two functions that replace that one) |
| 17:41:04 | × | mbuf quits (~Shakthi@49.204.119.161) (Quit: Leaving) |
| 17:43:54 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 17:44:06 | × | boxscape_ quits (~boxscape_@81.191.27.107) (Quit: Connection closed) |
| 17:51:37 | × | igghibu quits (~igghibu@178.249.211.75) (Quit: igghibu) |
| 17:54:00 | → | boxscape_ joins (~boxscape_@81.191.27.107) |
| 18:00:09 | × | nurupo quits (~nurupo.ga@user/nurupo) (Quit: nurupo.ga) |
| 18:00:24 | → | nurupo joins (~nurupo.ga@user/nurupo) |
| 18:00:41 | × | zeenk quits (~zeenk@2a02:2f04:a110:ac00::7fe) (Quit: Konversation terminated!) |
| 18:00:52 | × | machinedgod quits (~machinedg@d198-53-218-113.abhsia.telus.net) (Ping timeout: 268 seconds) |
| 18:01:48 | → | tzh joins (~tzh@c-24-21-73-154.hsd1.or.comcast.net) |
| 18:08:29 | × | kaskal quits (~kaskal@213-147-167-253.nat.highway.webapn.at) (Quit: ZNC - https://znc.in) |
| 18:08:34 | × | titibandit1 quits (~titibandi@xdsl-87-78-235-220.nc.de) (Quit: Leaving.) |
| 18:09:36 | → | king_gs joins (~Thunderbi@187.201.110.169) |
| 18:09:58 | → | kaskal joins (~kaskal@2001:4bb8:2d1:32ed:7894:4e7:1e3f:f8dd) |
| 18:16:27 | × | kaskal quits (~kaskal@2001:4bb8:2d1:32ed:7894:4e7:1e3f:f8dd) (Quit: ZNC - https://znc.in) |
| 18:17:50 | → | kaskal joins (~kaskal@213-147-167-253.nat.highway.webapn.at) |
| 18:20:58 | × | raym quits (~ray@user/raym) (Quit: updating irssi...) |
| 18:22:13 | → | raym joins (~ray@user/raym) |
| 18:28:46 | × | king_gs quits (~Thunderbi@187.201.110.169) (Read error: Connection reset by peer) |
| 18:28:46 | → | king_gs1 joins (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
| 18:28:46 | king_gs1 | is now known as king_gs |
| 18:30:31 | → | acidjnk joins (~acidjnk@p54ad56b7.dip0.t-ipconnect.de) |
| 18:31:18 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 272 seconds) |
| 18:34:42 | → | paulpaul1076 joins (~textual@195.88.86.247) |
| 18:36:17 | × | gmg quits (~user@user/gehmehgeh) (Quit: Leaving) |
| 18:36:38 | × | ddellacosta quits (~ddellacos@143.244.47.85) (Ping timeout: 268 seconds) |
| 18:36:41 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) (Remote host closed the connection) |
| 18:38:26 | × | raym quits (~ray@user/raym) (Ping timeout: 246 seconds) |
| 18:39:00 | → | tromp joins (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) |
| 18:39:16 | → | raym joins (~ray@user/raym) |
| 18:39:23 | → | econo joins (uid147250@user/econo) |
| 18:40:04 | → | __monty__ joins (~toonn@user/toonn) |
| 18:41:50 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 18:44:53 | → | gnalzo joins (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) |
| 18:45:29 | × | zmt01 quits (~zmt00@user/zmt00) (Read error: Connection reset by peer) |
| 18:48:15 | → | zmt00 joins (~zmt00@user/zmt00) |
| 18:53:22 | → | machinedgod joins (~machinedg@d198-53-218-113.abhsia.telus.net) |
| 18:53:37 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) |
| 18:55:02 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 18:59:47 | <eldritchcookie[4> | is there some way to create types at runtime? i want to have a type safe AST made from a configuration file |
| 19:00:05 | <geekosaur> | types don't exist at runtime |
| 19:01:21 | <eldritchcookie[4> | i know to be more specific i want specific guarantees at runtime which are commonly associated with type safety. |
| 19:02:05 | <boxscape_> | what kind of guarantees? |
| 19:02:16 | <monochrom> | Instead of defining "type" to be "Haskell type", redefine it to mean rolling your own type system. |
| 19:03:02 | <monochrom> | Indeed, I doubt that your configuration file requires exactly Haskell's type system. |
| 19:03:42 | <eldritchcookie[4> | would it be a lot of work? |
| 19:04:14 | <monochrom> | No. |
| 19:04:21 | × | gaff quits (~gaff@49.207.203.119) () |
| 19:06:24 | <eldritchcookie[4> | boxscape_: i want to make sure i manipulate a AST for the language i am currently working with, and the nodes should respect the schema from the configuration, so for instance a definition can have as children a expression tree etc |
| 19:07:11 | → | jinsl joins (~jinsl@2408:8207:255f:27d0:211:32ff:fec8:6aea) |
| 19:08:05 | × | son0p quits (~ff@2604:3d08:5b7f:5540:98a9:2169:15a1:4c7f) (Ping timeout: 260 seconds) |
| 19:08:09 | <boxscape_> | I see, yeah it seems like you'd just need an extra tag on each node you can compare to what it should be |
| 19:08:19 | × | jinsl- quits (~jinsl@2408:8207:2558:2b10:211:32ff:fec8:6aea) (Ping timeout: 252 seconds) |
| 19:08:57 | <darkling> | Indeed. Implement the type system for the language you're implementing. I don't think Haskell types will help you there. |
| 19:09:47 | <geekosaur> | look at how aeson works, maybe; it's not so different |
| 19:10:26 | <geekosaur> | (or asn.1 but I'm not sure I'd wish that on anyone 🙂 ) |
| 19:10:33 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 268 seconds) |
| 19:10:58 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 19:12:23 | <[exa]> | eldritchcookie[4: implementing typesystems is luckily quite easy in haskell :] |
| 19:14:09 | × | paulpaul1076 quits (~textual@195.88.86.247) (Ping timeout: 260 seconds) |
| 19:15:12 | <eldritchcookie[4> | how so? |
| 19:18:47 | <monochrom> | My toy exercise of coding up the simple-typed lambda calculus is 55 lines. In which more is on evaluation than on types and type checking. |
| 19:18:56 | <mauke> | you can create types at runtime (polymorphic recursion), but I'm not sure it would help you |
| 19:23:59 | × | eggplantade quits (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) (Remote host closed the connection) |
| 19:25:51 | → | freeside joins (~mengwong@103.252.202.159) |
| 19:29:42 | → | mei joins (~mei@user/mei) |
| 19:33:13 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 252 seconds) |
| 19:33:15 | → | eggplantade joins (~Eggplanta@2600:1700:38c5:d800:cc20:d690:f22b:cb00) |
| 19:34:52 | → | Neuromancer joins (~Neuromanc@user/neuromancer) |
| 19:39:11 | × | coot quits (~coot@2a02:a310:e241:1b00:ec1a:e9df:79ac:66ba) (Quit: coot) |
| 19:39:42 | <eldritchcookie[4> | it may i need to store some information for every node in the AST and that information is dependent on the node type, i would really like to have some dependently typed thing instead of using Dynamic |
| 19:41:22 | <[exa]> | eldritchcookie[4: types are data, don't put them in types |
| 19:41:54 | <eldritchcookie[4> | ?? explain please |
| 19:41:54 | <lambdabot> | explain please |
| 19:42:12 | <EvanR> | there's dependent map |
| 19:42:36 | <EvanR> | the type of value depends on the field |
| 19:43:31 | → | den_jc joins (~lds@5.153.183.142) |
| 19:43:32 | <EvanR> | but I'm not sure if you can generate a field => type at runtime |
| 19:44:52 | <[exa]> | eldritchcookie[4: I mean, you want to utilize a typesystem that is supposed to typecheck and infer information about _your_ program to typecheck and infer information about some other program present only at runtime (at which point that typesystem doesn't even exist anymore). That kindof guarantees that it's not going to be very nice. |
| 19:45:14 | × | avicenzi quits (~avicenzi@2a00:ca8:a1f:b004::c32) (Ping timeout: 265 seconds) |
| 19:45:20 | → | ddellacosta joins (~ddellacos@143.244.47.85) |
| 19:47:10 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 19:47:29 | <geekosaur> | there is a point being missed here. the point of static type systems is to do as much typechecking as possible at compile time. the point of dependent typing is to be able to do even more of that checking at compile time |
| 19:47:39 | → | CoolMa7 joins (~CoolMa7@2a02:8109:9d40:14ea:1881:c4d:404:833f) |
| 19:48:23 | <geekosaur> | you pretty much by definition can't do dependent typing at runtime; at that point you are manipulating data, not building compile-time types |
| 19:48:31 | <[exa]> | eldritchcookie[4: btw if you want to check just structural constraints, the actual type system required for that is much less than the 55LoCs mentioned above |
| 19:48:56 | <geekosaur> | but, in any case, that is actually what you want: you are here implementing a type system for some other language. you can do that at runtime, and indeed should |
| 19:49:02 | <EvanR> | if it can be checked at compile time, then there's a way to encode it. But it might be very unergonomic to actually do in haskell |
| 19:49:42 | <[exa]> | eldritchcookie[4: as a thought experiment consider rewriting your AST to (some form of) haskell and letting ghc typecheck it |
| 19:51:50 | <eldritchcookie[4> | [exa]: could you give an example i think that would help massively. |
| 19:52:21 | → | talismanick joins (~talismani@2601:644:9380:5c00::43de) |
| 19:53:11 | <eldritchcookie[4> | what do you mean by checking structural constraints and how can i do it ? |
| 19:54:22 | <EvanR> | haskell's type system (somewhat) ensures sanity of haskell programs (at compile time). It's possible to embed the types to check a language implemented in haskell at compile time. But it sounds like the language is dynamically defined in an input file |
| 19:54:45 | × | king_gs quits (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Ping timeout: 260 seconds) |
| 19:55:48 | → | CoolMa7_ joins (~CoolMa7@2a02:8109:9d40:14ea:c945:7d4b:95c2:d352) |
| 19:57:47 | × | CoolMa7 quits (~CoolMa7@2a02:8109:9d40:14ea:1881:c4d:404:833f) (Ping timeout: 264 seconds) |
| 19:59:15 | <[exa]> | eldritchcookie[4: of the first or the second suggestion? :] |
| 19:59:16 | <EvanR> | higher order abstract data types haven't even figured that one out xD |
| 20:00:01 | <[exa]> | eldritchcookie[4: anyway I don't have anything off hand but I guess there might be good tutorials |
| 20:01:39 | → | fizbin joins (~fizbin@user/fizbin) |
| 20:01:59 | × | ddellacosta quits (~ddellacos@143.244.47.85) (Ping timeout: 264 seconds) |
| 20:03:40 | → | grnman_ joins (~michaelsc@c-66-176-3-51.hsd1.fl.comcast.net) |
| 20:06:48 | <[exa]> | eldritchcookie[4: btw btw what is the grammar/purpose/semantics of your language? |
| 20:08:26 | → | CoolMa7 joins (~CoolMa7@2a02:8109:9d40:14ea:5991:cfa5:96c4:3102) |
| 20:10:51 | × | CoolMa7_ quits (~CoolMa7@2a02:8109:9d40:14ea:c945:7d4b:95c2:d352) (Ping timeout: 265 seconds) |
| 20:11:13 | × | trev quits (~trev@user/trev) (Remote host closed the connection) |
| 20:12:40 | <eldritchcookie[4> | i am not working with any language in specific, i wanted to create a "text" editor to edit code semantically the idea is to be similar to template haskell if it were interactive. |
| 20:13:08 | <eldritchcookie[4> | so basically for now i plan to support only haskell but there isn't a reason that i couldn't support another language |
| 20:14:27 | × | teo quits (~teo@user/teo) (Ping timeout: 260 seconds) |
| 20:20:40 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 20:24:47 | → | CoolMa7_ joins (~CoolMa7@2a02:8109:9d40:14ea:51bd:3085:23f6:929f) |
| 20:25:52 | × | azimut quits (~azimut@gateway/tor-sasl/azimut) (Quit: ZNC - https://znc.in) |
| 20:26:03 | → | azimut_ joins (~azimut@gateway/tor-sasl/azimut) |
| 20:28:14 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 20:28:15 | × | CoolMa7 quits (~CoolMa7@2a02:8109:9d40:14ea:5991:cfa5:96c4:3102) (Ping timeout: 265 seconds) |
| 20:28:32 | → | __monty__ joins (~toonn@user/toonn) |
| 20:28:41 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 20:29:34 | × | __monty__ quits (~toonn@user/toonn) (Client Quit) |
| 20:29:50 | → | __monty__ joins (~toonn@user/toonn) |
| 20:29:51 | <EvanR> | yeah big difference between a statically checked haskell editor and a statically checked anything editor |
| 20:30:15 | × | img quits (~img@user/img) (Quit: ZNC 1.8.2 - https://znc.in) |
| 20:30:21 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 20:30:25 | <EvanR> | a compromise would be it edits haskell but you also have drivers for other specific languages |
| 20:30:34 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 260 seconds) |
| 20:31:38 | <[exa]> | eldritchcookie[4: any specific usage example? (is this like jetbrains mps?) |
| 20:33:12 | → | img joins (~img@user/img) |
| 20:36:10 | × | grnman_ quits (~michaelsc@c-66-176-3-51.hsd1.fl.comcast.net) (Quit: leaving) |
| 20:36:22 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 20:37:47 | → | Guest9971 joins (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) |
| 20:37:54 | → | freeside joins (~mengwong@103.252.202.159) |
| 20:39:22 | → | ciarltb^ joins (~ciarltb@76.145.190.81) |
| 20:39:54 | <eldritchcookie[4> | here is an example: i start creating a new module so i use a command to add a import when i use another command to select a hole it will select this hole i will then have an option from all modules in my dependencies i can use more commands to narrow down or choose one, for modules this isn't all that useful but imagine being shown all functions which could potentially match the type of the result |
| 20:41:02 | <[exa]> | tbh this very much reminds me of all the agda tutorials |
| 20:43:44 | <eldritchcookie[4> | how so? |
| 20:44:07 | <[exa]> | look here at around 3:50 https://www.youtube.com/watch?v=8JIhJJyO5VM |
| 20:46:25 | <[exa]> | like, the type system of agda is on complete steroids but it might be useful to try a bit of that for inspiration |
| 20:46:53 | → | festive_kurbus joins (~festive_k@user/kurbus) |
| 20:46:53 | <[exa]> | (also, djinn) |
| 20:54:36 | × | Umeaboy quits (~Umeaboy@94-255-145-133.cust.bredband2.com) (Quit: Leaving) |
| 20:59:50 | × | johnw quits (~johnw@2600:1700:cf00:db0:8dba:ab59:f976:a533) (Quit: ZNC - http://znc.in) |
| 20:59:50 | × | jwiegley quits (~jwiegley@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Quit: ZNC - http://znc.in) |
| 21:02:17 | → | johnw joins (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) |
| 21:03:59 | × | johnw quits (~johnw@76-234-69-149.lightspeed.frokca.sbcglobal.net) (Client Quit) |
| 21:04:07 | × | festive_kurbus quits (~festive_k@user/kurbus) (Quit: Client closed) |
| 21:06:01 | → | johnw joins (~johnw@2600:1700:cf00:db0:d050:b87f:5cc2:4cc8) |
| 21:10:03 | → | jwiegley joins (~jwiegley@2600:1700:cf00:db0:d050:b87f:5cc2:4cc8) |
| 21:13:03 | → | king_gs joins (~Thunderbi@187.201.110.169) |
| 21:14:40 | × | mc47 quits (~mc47@xmonad/TheMC47) (Remote host closed the connection) |
| 21:25:14 | → | panovia joins (~user@user/siracusa) |
| 21:28:15 | → | waleee joins (~waleee@2001:9b0:213:7200:cc36:a556:b1e8:b340) |
| 21:31:55 | × | king_gs quits (~Thunderbi@187.201.110.169) (Read error: Connection reset by peer) |
| 21:32:08 | → | king_gs1 joins (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) |
| 21:34:26 | king_gs1 | is now known as king_gs |
| 21:40:23 | × | mizlan quits (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) (Ping timeout: 264 seconds) |
| 21:41:56 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 272 seconds) |
| 21:47:12 | → | hyperbolic-dg joins (~quassel@i577AA562.versanet.de) |
| 21:52:21 | × | sammelweis quits (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) (Quit: No Ping reply in 180 seconds.) |
| 21:53:27 | → | sammelweis joins (~quassel@2601:401:8200:2d4c:bd9:d04c:7f69:eb10) |
| 21:53:51 | → | mizlan joins (~mizlan@c-67-169-7-31.hsd1.ca.comcast.net) |
| 21:56:40 | → | Guest0 joins (~Guest0@90-224-113-138-no292.tbcn.telia.com) |
| 21:57:10 | × | boxscape_ quits (~boxscape_@81.191.27.107) (Quit: Connection closed) |
| 21:57:54 | → | CoolMa7 joins (~CoolMa7@2a02:8109:9d40:14ea:3190:898a:4dda:436b) |
| 21:58:58 | × | CoolMa7_ quits (~CoolMa7@2a02:8109:9d40:14ea:51bd:3085:23f6:929f) (Ping timeout: 252 seconds) |
| 22:05:53 | → | CoolMa7_ joins (~CoolMa7@ip5b4091ae.dynamic.kabel-deutschland.de) |
| 22:08:48 | × | CoolMa7 quits (~CoolMa7@2a02:8109:9d40:14ea:3190:898a:4dda:436b) (Ping timeout: 260 seconds) |
| 22:09:19 | × | CoolMa7_ quits (~CoolMa7@ip5b4091ae.dynamic.kabel-deutschland.de) (Read error: Connection reset by peer) |
| 22:10:09 | → | CoolMa7 joins (~CoolMa7@ip5b4091ae.dynamic.kabel-deutschland.de) |
| 22:11:21 | → | freeside joins (~mengwong@103.252.202.159) |
| 22:12:47 | → | rubix joins (~rubix@2a01:e0a:2d2:4420:d2e0:f641:d332:903e) |
| 22:12:53 | × | Sauvin quits (~sauvin@user/Sauvin) (Ping timeout: 260 seconds) |
| 22:14:21 | × | rubix quits (~rubix@2a01:e0a:2d2:4420:d2e0:f641:d332:903e) (Client Quit) |
| 22:15:42 | → | beteigeuze joins (~Thunderbi@bl14-81-220.dsl.telepac.pt) |
| 22:17:55 | → | Sauvin joins (~sauvin@user/Sauvin) |
| 22:19:58 | × | aweinstock quits (~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) (Ping timeout: 256 seconds) |
| 22:21:13 | × | nschoe quits (~q@2a01:e0a:8e:a190:3e45:2461:8514:e8d2) (Quit: Switching off) |
| 22:21:44 | → | jmdaemon joins (~jmdaemon@user/jmdaemon) |
| 22:22:02 | → | aweinstock joins (~aweinstoc@cpe-74-76-189-75.nycap.res.rr.com) |
| 22:22:35 | <jackdk> | You want to search for "structured editing", I think - that's the term I think I remember seeing. Also, maybe these days general language support is easier as tree-sitter exists? |
| 22:26:31 | × | fserucas quits (~fserucas@2001:818:e376:a400:fb92:70c1:dd88:c7d7) (Ping timeout: 260 seconds) |
| 22:26:45 | × | takuan quits (~takuan@178-116-218-225.access.telenet.be) (Remote host closed the connection) |
| 22:27:32 | <geekosaur> | yep |
| 22:27:56 | <geekosaur> | and structured editing goes back to at least 1987 (https://www.atarimagazines.com/v6n2/Alice.html) |
| 22:28:50 | <geekosaur> | oh hah that's even open source now https://github.com/pulkomandy/alice-personal-pascal |
| 22:29:09 | <Inst> | wow, i've really pissed people off, like, someone got really upset when I was asking whether IO could be considered a scripting language or EDSL |
| 22:29:22 | <monochrom> | w00t Pascall |
| 22:29:40 | <monochrom> | yikes, Haskell has brainwashed me with its double l haha |
| 22:30:13 | <monochrom> | But hey, "import foreign pascall" is a good pun :) |
| 22:31:21 | <monochrom> | People are always pissed off by false dichotomies I'm not surprised. |
| 22:31:59 | × | tromp quits (~textual@92-110-219-57.cable.dynamic.v4.ziggo.nl) (Quit: My iMac has gone to sleep. ZZZzzz…) |
| 22:35:02 | × | CoolMa7 quits (~CoolMa7@ip5b4091ae.dynamic.kabel-deutschland.de) (Quit: My MacBook has gone to sleep. ZZZzzz…) |
| 22:35:24 | <monochrom> | Ugh its atan implementation has a helper function called satan, and satan has a helper function called xatan... |
| 22:35:33 | <monochrom> | https://github.com/pulkomandy/alice-personal-pascal/blob/master/unix/src/atan.c |
| 22:35:52 | → | CoolMa7 joins (~CoolMa7@2a02:8109:9d40:14ea:a80e:cf4d:c449:3c51) |
| 22:35:56 | × | Guest0 quits (~Guest0@90-224-113-138-no292.tbcn.telia.com) (Quit: Client closed) |
| 22:44:19 | × | king_gs quits (~Thunderbi@2806:103e:29:45ac:af0:afaf:29e7:dd60) (Quit: king_gs) |
| 22:44:28 | → | king_gs1 joins (~Thunderbi@187.201.110.169) |
| 22:46:45 | king_gs1 | is now known as king_gs |
| 22:53:25 | × | king_gs quits (~Thunderbi@187.201.110.169) (Ping timeout: 252 seconds) |
| 22:54:50 | × | ubert1 quits (~Thunderbi@p200300ecdf264e37a5f7a1f818911c73.dip0.t-ipconnect.de) (Ping timeout: 252 seconds) |
| 22:59:02 | × | biberu quits (~biberu@user/biberu) (Read error: Connection reset by peer) |
| 23:02:53 | → | Guest62 joins (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) |
| 23:04:08 | × | Guest62 quits (~Guest62@240f:a1:8a75:1:6d29:acad:cc8d:29c7) (Client Quit) |
| 23:05:30 | → | biberu joins (~biberu@user/biberu) |
| 23:05:34 | → | qy joins (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) |
| 23:11:16 | × | werneta quits (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) (Quit: Lost terminal) |
| 23:13:17 | × | qy quits (~ix@2a02:8010:674f:0:d65d:64ff:fe52:5efe) (Quit: WeeChat 3.7.1) |
| 23:17:59 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 260 seconds) |
| 23:21:41 | × | den_jc quits (~lds@5.153.183.142) (Quit: Konversation terminated!) |
| 23:24:36 | → | werneta joins (~werneta@70-142-214-115.lightspeed.irvnca.sbcglobal.net) |
| 23:26:28 | × | Guest9971 quits (~finn@roc37-h01-176-170-197-243.dsl.sta.abo.bbox.fr) (Ping timeout: 268 seconds) |
| 23:30:02 | → | freeside joins (~mengwong@103.252.202.159) |
| 23:30:03 | × | mncheck quits (~mncheck@193.224.205.254) (Ping timeout: 256 seconds) |
| 23:31:45 | × | farmfrmjakestate quits (~farmfrmja@user/farmfrmjakestate) (Ping timeout: 260 seconds) |
| 23:33:16 | <Inst> | well, the actual question was supposed to be, can IO be thought of as a form of metaprogramming? |
| 23:33:31 | <Inst> | I also saw an acquaintance's really weird looking IO code, I wouldn't go out and say it's bad |
| 23:33:40 | <Inst> | but it was incredibly clunky |
| 23:34:29 | × | freeside quits (~mengwong@103.252.202.159) (Ping timeout: 268 seconds) |
| 23:34:49 | <Inst> | https://ericnormand.me/podcast/is-haskell-the-best-procedural-language |
| 23:38:45 | × | acidjnk quits (~acidjnk@p54ad56b7.dip0.t-ipconnect.de) (Ping timeout: 260 seconds) |
| 23:40:21 | × | mei quits (~mei@user/mei) (Remote host closed the connection) |
| 23:40:47 | → | mei joins (~mei@user/mei) |
| 23:41:39 | × | shriekingnoise quits (~shrieking@186.137.175.87) (Quit: Quit) |
| 23:42:58 | × | bgs quits (~bgs@212-85-160-171.dynamic.telemach.net) (Remote host closed the connection) |
| 23:46:29 | × | __monty__ quits (~toonn@user/toonn) (Quit: leaving) |
| 23:49:09 | → | freeside joins (~mengwong@103.252.202.159) |
| 23:50:38 | → | Guest7253 joins (~Guest72@240f:a1:8a75:1:6d29:acad:cc8d:29c7) |
| 23:53:18 | × | CoolMa7 quits (~CoolMa7@2a02:8109:9d40:14ea:a80e:cf4d:c449:3c51) (Quit: Textual IRC Client: www.textualapp.com) |
| 23:54:19 | → | ddellacosta joins (~ddellacos@143.244.47.85) |
| 23:56:17 | × | Guest7253 quits (~Guest72@240f:a1:8a75:1:6d29:acad:cc8d:29c7) (Quit: Client closed) |
| 23:56:53 | × | gnalzo quits (~gnalzo@2a01:e0a:498:fd50:fcc6:bb5d:489a:ce8c) (Quit: WeeChat 3.7.1) |
All times are in UTC on 2023-01-06.