2020-09-01T00:00:03Z tryte quit (Remote host closed the connection) 2020-09-01T00:00:18Z tryte joined #scheme 2020-09-01T00:04:53Z cjb joined #scheme 2020-09-01T00:21:54Z galrond quit (Quit: galrond) 2020-09-01T00:27:12Z phwalkr quit 2020-09-01T00:29:06Z torbo joined #scheme 2020-09-01T00:37:05Z mparlaktuna joined #scheme 2020-09-01T00:44:01Z muelleme joined #scheme 2020-09-01T00:48:51Z muelleme quit (Ping timeout: 265 seconds) 2020-09-01T00:52:55Z badkins quit (Remote host closed the connection) 2020-09-01T00:53:30Z badkins joined #scheme 2020-09-01T00:58:32Z badkins quit (Ping timeout: 256 seconds) 2020-09-01T01:37:37Z cchristiansen joined #scheme 2020-09-01T01:44:55Z muelleme joined #scheme 2020-09-01T01:49:40Z muelleme quit (Ping timeout: 258 seconds) 2020-09-01T01:50:03Z dbmikus quit (Ping timeout: 258 seconds) 2020-09-01T02:11:27Z galrond joined #scheme 2020-09-01T02:19:30Z dbmikus joined #scheme 2020-09-01T02:41:05Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-01T02:45:55Z muelleme joined #scheme 2020-09-01T02:50:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-01T02:58:36Z klovett quit 2020-09-01T03:00:21Z klovett joined #scheme 2020-09-01T03:06:36Z cchristiansen quit (Ping timeout: 265 seconds) 2020-09-01T03:26:36Z cchristiansen joined #scheme 2020-09-01T03:27:37Z galrond is now known as [rg] 2020-09-01T03:36:01Z dbmikus joined #scheme 2020-09-01T03:40:05Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-01T03:42:27Z nullheroes joined #scheme 2020-09-01T03:44:48Z kori joined #scheme 2020-09-01T03:44:49Z kori quit (Changing host) 2020-09-01T03:44:49Z kori joined #scheme 2020-09-01T03:46:48Z muelleme joined #scheme 2020-09-01T03:51:43Z muelleme quit (Ping timeout: 260 seconds) 2020-09-01T04:01:05Z raingloom quit (Ping timeout: 240 seconds) 2020-09-01T04:07:39Z gravicappa joined #scheme 2020-09-01T04:09:20Z [rg] left #scheme 2020-09-01T04:19:28Z ratxue joined #scheme 2020-09-01T04:32:09Z cchristiansen quit (Ping timeout: 265 seconds) 2020-09-01T04:37:10Z friscosam quit (Ping timeout: 260 seconds) 2020-09-01T04:37:18Z friscosam joined #scheme 2020-09-01T04:41:15Z torbo quit (Remote host closed the connection) 2020-09-01T04:46:45Z ratxue quit (Quit: Connection closed) 2020-09-01T04:47:47Z muelleme joined #scheme 2020-09-01T04:52:30Z muelleme quit (Ping timeout: 256 seconds) 2020-09-01T04:59:51Z edgar-rft joined #scheme 2020-09-01T05:33:03Z cchristiansen joined #scheme 2020-09-01T05:36:45Z seepel joined #scheme 2020-09-01T05:36:56Z dbmikus joined #scheme 2020-09-01T05:41:35Z dbmikus quit (Ping timeout: 258 seconds) 2020-09-01T05:41:41Z muelleme joined #scheme 2020-09-01T05:46:35Z muelleme quit (Ping timeout: 265 seconds) 2020-09-01T06:08:29Z skapata quit (Remote host closed the connection) 2020-09-01T06:09:47Z skapata joined #scheme 2020-09-01T06:29:23Z seepel quit (Ping timeout: 240 seconds) 2020-09-01T06:36:30Z seepel joined #scheme 2020-09-01T06:39:09Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-01T06:41:28Z seepel quit (Ping timeout: 260 seconds) 2020-09-01T06:42:35Z muelleme joined #scheme 2020-09-01T06:47:13Z muelleme quit (Ping timeout: 246 seconds) 2020-09-01T06:50:45Z cjb quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-01T07:01:32Z gmaggior quit (Quit: Leaving) 2020-09-01T07:14:02Z cgay quit (Quit: Connection closed for inactivity) 2020-09-01T07:22:32Z skapata quit (Remote host closed the connection) 2020-09-01T07:27:20Z foof: maybe of interest if you do scientific computing: http://snow-fort.org/s/gmail.com/alexshinn/chibi/math/stats/0.1/index.html 2020-09-01T07:29:39Z klovett quit (Remote host closed the connection) 2020-09-01T07:30:27Z klovett joined #scheme 2020-09-01T07:36:35Z alicemaz quit (Ping timeout: 240 seconds) 2020-09-01T07:37:46Z dbmikus joined #scheme 2020-09-01T07:38:30Z alicemaz joined #scheme 2020-09-01T07:42:30Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-01T07:57:51Z webshinra quit (Remote host closed the connection) 2020-09-01T08:02:41Z mdhughes_ joined #scheme 2020-09-01T08:05:55Z mdhughes quit (Ping timeout: 240 seconds) 2020-09-01T08:10:26Z hendursa1 joined #scheme 2020-09-01T08:12:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-01T08:30:55Z daviid quit (Ping timeout: 265 seconds) 2020-09-01T08:36:36Z mdhughes_ is now known as mdhughes 2020-09-01T08:39:10Z Riastradh quit (Ping timeout: 256 seconds) 2020-09-01T08:40:02Z Riastradh joined #scheme 2020-09-01T09:05:56Z ft quit (Ping timeout: 240 seconds) 2020-09-01T09:06:06Z ft joined #scheme 2020-09-01T09:36:15Z amirouche joined #scheme 2020-09-01T09:38:39Z dbmikus joined #scheme 2020-09-01T09:42:55Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-01T10:13:16Z webshinra joined #scheme 2020-09-01T10:26:43Z nckx quit (Quit: Updating my Guix System — https://guix.gnu.org) 2020-09-01T10:30:15Z jobol joined #scheme 2020-09-01T10:30:21Z nckx joined #scheme 2020-09-01T10:31:46Z dmiles quit (Ping timeout: 258 seconds) 2020-09-01T10:36:16Z dmiles joined #scheme 2020-09-01T10:41:30Z raingloom joined #scheme 2020-09-01T10:42:51Z nilg joined #scheme 2020-09-01T10:52:14Z lritter joined #scheme 2020-09-01T11:05:06Z bitmapper quit (Ping timeout: 265 seconds) 2020-09-01T11:05:34Z Oddity joined #scheme 2020-09-01T11:06:33Z X-Scale` joined #scheme 2020-09-01T11:06:55Z Oddity__ quit (Ping timeout: 240 seconds) 2020-09-01T11:08:25Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-01T11:08:26Z X-Scale` is now known as X-Scale 2020-09-01T11:11:30Z hugh_marera joined #scheme 2020-09-01T11:13:26Z muelleme joined #scheme 2020-09-01T11:18:33Z muelleme quit (Ping timeout: 260 seconds) 2020-09-01T11:18:48Z nilg quit (Remote host closed the connection) 2020-09-01T11:19:57Z jobol1 joined #scheme 2020-09-01T11:26:54Z civodul joined #scheme 2020-09-01T11:27:58Z zooey_ quit (Remote host closed the connection) 2020-09-01T11:28:18Z zooey joined #scheme 2020-09-01T11:35:00Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T11:35:18Z hugh_marera joined #scheme 2020-09-01T11:39:34Z dbmikus joined #scheme 2020-09-01T11:43:47Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-01T12:28:28Z muelleme joined #scheme 2020-09-01T12:43:15Z hendursa1 quit (Quit: hendursa1) 2020-09-01T12:43:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-01T12:43:34Z hendursaga joined #scheme 2020-09-01T12:43:43Z ggole joined #scheme 2020-09-01T12:46:03Z raingloom quit (Ping timeout: 260 seconds) 2020-09-01T12:54:17Z notzmv` joined #scheme 2020-09-01T12:57:38Z notzmv quit (Ping timeout: 256 seconds) 2020-09-01T12:59:03Z badkins joined #scheme 2020-09-01T13:00:37Z klovett quit (Remote host closed the connection) 2020-09-01T13:00:57Z klovett joined #scheme 2020-09-01T13:04:00Z badkins quit (Ping timeout: 265 seconds) 2020-09-01T13:07:16Z cpressey joined #scheme 2020-09-01T13:07:21Z cpressey quit (Client Quit) 2020-09-01T13:09:23Z skapata joined #scheme 2020-09-01T13:09:54Z klovett quit (Remote host closed the connection) 2020-09-01T13:10:01Z cpressey joined #scheme 2020-09-01T13:10:28Z klovett joined #scheme 2020-09-01T13:18:20Z arew quit (Quit: WeeChat 2.8) 2020-09-01T13:19:33Z X-Scale` joined #scheme 2020-09-01T13:19:40Z X-Scale quit (Ping timeout: 256 seconds) 2020-09-01T13:20:09Z X-Scale` is now known as X-Scale 2020-09-01T13:28:00Z klovett quit (Remote host closed the connection) 2020-09-01T13:28:18Z klovett joined #scheme 2020-09-01T13:33:24Z retropikzel joined #scheme 2020-09-01T13:38:34Z retropikzel quit (Quit: Leaving) 2020-09-01T13:40:21Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T13:40:23Z dbmikus joined #scheme 2020-09-01T13:40:39Z hugh_marera joined #scheme 2020-09-01T13:40:40Z muelleme joined #scheme 2020-09-01T13:45:05Z dbmikus quit (Ping timeout: 265 seconds) 2020-09-01T13:45:07Z muelleme quit (Ping timeout: 246 seconds) 2020-09-01T14:05:17Z brendyyn quit (Ping timeout: 258 seconds) 2020-09-01T14:16:09Z badkins joined #scheme 2020-09-01T14:17:00Z amirouche: I tried to run my last year code base... it is disapointing. 2020-09-01T14:17:13Z amirouche: btw guix is stil very difficult to use. 2020-09-01T14:20:42Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T14:20:58Z hugh_marera joined #scheme 2020-09-01T14:25:58Z civodul: amirouche: i'd welcome a report of your experience on #guix or bug-guix@gnu.org 2020-09-01T14:26:10Z civodul: it's very useful to have that sort of feedback so we can improve it 2020-09-01T14:26:34Z raingloom joined #scheme 2020-09-01T14:42:19Z X-Scale` joined #scheme 2020-09-01T14:45:59Z alicemaz_ joined #scheme 2020-09-01T14:46:02Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T14:48:35Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-01T14:48:36Z alicemaz quit (Remote host closed the connection) 2020-09-01T14:48:36Z hugh_marera_ joined #scheme 2020-09-01T14:48:36Z X-Scale` is now known as X-Scale 2020-09-01T14:53:53Z bitmapper joined #scheme 2020-09-01T14:56:41Z retropikzel joined #scheme 2020-09-01T15:03:35Z aaaaaa left #scheme 2020-09-01T15:11:14Z hugh_marera_ quit (Quit: hugh_marera_) 2020-09-01T15:11:32Z hugh_marera joined #scheme 2020-09-01T15:30:25Z raingloom quit (Ping timeout: 240 seconds) 2020-09-01T15:42:03Z badkins quit (Remote host closed the connection) 2020-09-01T15:42:37Z badkins joined #scheme 2020-09-01T15:46:46Z badkins quit (Remote host closed the connection) 2020-09-01T15:46:56Z badkins_ joined #scheme 2020-09-01T15:52:23Z civodul quit (Ping timeout: 244 seconds) 2020-09-01T15:57:25Z acarrico quit (Ping timeout: 246 seconds) 2020-09-01T16:01:04Z acarrico joined #scheme 2020-09-01T16:04:19Z amirouche quit (Quit: WeeChat 2.8) 2020-09-01T16:16:25Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T16:16:46Z hugh_marera joined #scheme 2020-09-01T16:23:50Z terpri_ joined #scheme 2020-09-01T16:24:48Z terpri quit (Ping timeout: 260 seconds) 2020-09-01T16:28:55Z terpri joined #scheme 2020-09-01T16:29:55Z terpri_ quit (Ping timeout: 244 seconds) 2020-09-01T16:30:37Z arew joined #scheme 2020-09-01T16:30:54Z dbmikus joined #scheme 2020-09-01T16:37:15Z badkins_ quit (Remote host closed the connection) 2020-09-01T16:39:49Z badkins joined #scheme 2020-09-01T16:40:13Z raingloom joined #scheme 2020-09-01T16:44:48Z badkins quit (Ping timeout: 256 seconds) 2020-09-01T16:45:05Z lritter quit (Quit: Leaving) 2020-09-01T16:51:47Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T16:52:05Z hugh_marera joined #scheme 2020-09-01T16:54:04Z dbmikus quit (Ping timeout: 265 seconds) 2020-09-01T16:55:58Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-01T16:59:47Z dbmikus joined #scheme 2020-09-01T17:06:35Z jobol quit (Quit: Leaving) 2020-09-01T17:06:46Z jobol1 quit (Quit: WeeChat 2.8) 2020-09-01T17:11:20Z kopiyka quit (Remote host closed the connection) 2020-09-01T17:11:39Z kopiyka joined #scheme 2020-09-01T17:12:08Z hugh_marera quit (Quit: hugh_marera) 2020-09-01T17:12:27Z hugh_marera joined #scheme 2020-09-01T17:17:15Z daviid joined #scheme 2020-09-01T17:24:20Z retropikzel quit (Quit: Leaving) 2020-09-01T17:28:52Z notzmv` quit (Changing host) 2020-09-01T17:28:52Z notzmv` joined #scheme 2020-09-01T17:28:57Z notzmv` is now known as notzmv 2020-09-01T17:42:15Z varbhat joined #scheme 2020-09-01T17:44:58Z daviid quit (*.net *.split) 2020-09-01T17:44:58Z hugh_marera quit (*.net *.split) 2020-09-01T17:44:59Z bitmapper quit (*.net *.split) 2020-09-01T17:44:59Z edgar-rft quit (*.net *.split) 2020-09-01T17:44:59Z friscosam quit (*.net *.split) 2020-09-01T17:44:59Z gravicappa quit (*.net *.split) 2020-09-01T17:44:59Z mparlaktuna quit (*.net *.split) 2020-09-01T17:44:59Z deesix quit (*.net *.split) 2020-09-01T17:44:59Z aeth quit (*.net *.split) 2020-09-01T17:44:59Z choas quit (*.net *.split) 2020-09-01T17:45:00Z titanbiscuit quit (*.net *.split) 2020-09-01T17:45:00Z drakonis quit (*.net *.split) 2020-09-01T17:45:00Z nevermind quit (*.net *.split) 2020-09-01T17:45:00Z rudybot quit (*.net *.split) 2020-09-01T17:45:00Z fgudin_ quit (*.net *.split) 2020-09-01T17:45:00Z nisstyre quit (*.net *.split) 2020-09-01T17:46:30Z daviid joined #scheme 2020-09-01T17:46:30Z hugh_marera joined #scheme 2020-09-01T17:46:30Z bitmapper joined #scheme 2020-09-01T17:46:30Z friscosam joined #scheme 2020-09-01T17:46:30Z gravicappa joined #scheme 2020-09-01T17:46:30Z mparlaktuna joined #scheme 2020-09-01T17:46:30Z deesix joined #scheme 2020-09-01T17:46:30Z aeth joined #scheme 2020-09-01T17:46:30Z choas joined #scheme 2020-09-01T17:46:30Z titanbiscuit joined #scheme 2020-09-01T17:46:30Z drakonis joined #scheme 2020-09-01T17:46:30Z nevermind joined #scheme 2020-09-01T17:46:30Z rudybot joined #scheme 2020-09-01T17:46:30Z fgudin_ joined #scheme 2020-09-01T17:46:30Z nisstyre joined #scheme 2020-09-01T17:46:37Z titanbiscuit quit (Max SendQ exceeded) 2020-09-01T17:46:37Z rudybot: la la la 2020-09-01T17:47:20Z bashbjorn quit (Ping timeout: 246 seconds) 2020-09-01T17:47:50Z titanbiscuit joined #scheme 2020-09-01T17:50:35Z bashbjorn joined #scheme 2020-09-01T17:57:55Z gnomon: DUM de dum 2020-09-01T18:18:01Z muelleme joined #scheme 2020-09-01T18:28:07Z gmaggior joined #scheme 2020-09-01T18:36:55Z dbohdan joined #scheme 2020-09-01T18:41:31Z badkins joined #scheme 2020-09-01T18:45:38Z civodul joined #scheme 2020-09-01T18:45:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-01T18:54:54Z ggole quit (Quit: Leaving) 2020-09-01T19:25:21Z skapata quit (Remote host closed the connection) 2020-09-01T19:28:11Z skapata joined #scheme 2020-09-01T19:30:02Z autumn[m]: do re mi... 2020-09-01T19:39:27Z seepel joined #scheme 2020-09-01T19:51:54Z badkins joined #scheme 2020-09-01T19:53:47Z aeth_ joined #scheme 2020-09-01T19:55:25Z aeth quit (Ping timeout: 240 seconds) 2020-09-01T19:58:43Z dbohdan: Does anyone know a mirror of klisp? It is not a Scheme but because there was community overlap I thought I'd ask here. The Mercurial repo listed on http://klisp.org/ went down when Bitbucket dropped Mercurial. 2020-09-01T19:58:55Z aeth_ is now known as aeth 2020-09-01T20:05:23Z gnomon: dbohdan, that's a dang good question. I don't know of a public mirror offhand. Have you considered emailing the author, though? 2020-09-01T20:06:01Z gnomon: dbohdan, oh, this might help a bit at least: https://web.archive.org/web/20200621212716mp_/https://bitbucket.org/AndresNavarro/klisp/downloads/ 2020-09-01T20:06:09Z gnomon: The download link https://web.archive.org/web/20200621212716/https://bitbucket.org/AndresNavarro/klisp/get/e18667c7c538.zip seems to function. 2020-09-01T20:13:35Z dbohdan: gnomon: Thanks! I was going to email the author, and maybe I still will. It would be nice to have the commit history, too. If I get it, I'll put it on GitHub or something. 2020-09-01T20:16:06Z dbohdan: Oh hey, I searched for a fragment of the readme and found this: https://github.com/o-nly/klisp 2020-09-01T20:17:00Z dbohdan: It's got everything 2020-09-01T20:17:56Z dbohdan: Forked and archived just in case 2020-09-01T20:17:58Z dbohdan: https://github.com/dbohdan/klisp 2020-09-01T20:21:35Z gnomon: Ferpect! 2020-09-01T20:21:40Z gnomon: I'm really glad that worked out. 2020-09-01T20:29:37Z muelleme quit (Ping timeout: 264 seconds) 2020-09-01T20:42:17Z badkins quit (Remote host closed the connection) 2020-09-01T20:42:22Z badkins_ joined #scheme 2020-09-01T20:45:45Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-01T20:47:18Z badkins_ quit (Ping timeout: 260 seconds) 2020-09-01T20:48:24Z badkins joined #scheme 2020-09-01T20:55:28Z aeth quit (Ping timeout: 260 seconds) 2020-09-01T20:57:07Z aeth joined #scheme 2020-09-01T21:07:47Z klovett quit 2020-09-01T21:09:52Z klovett joined #scheme 2020-09-01T21:15:08Z galuf joined #scheme 2020-09-01T21:25:25Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-01T21:45:46Z dbmikus joined #scheme 2020-09-01T21:51:14Z galuf quit (Remote host closed the connection) 2020-09-01T21:56:16Z lritter joined #scheme 2020-09-01T22:00:03Z xelxebar quit (Ping timeout: 240 seconds) 2020-09-01T22:01:13Z xelxebar joined #scheme 2020-09-01T22:05:45Z jcowan: I'm up against a nasty problem and I hope I haven't boxed myself into a corner. Anyone willing to walk through it with me? 2020-09-01T22:05:45Z badkins quit (Remote host closed the connection) 2020-09-01T22:06:25Z badkins joined #scheme 2020-09-01T22:11:44Z badkins quit (Ping timeout: 258 seconds) 2020-09-01T22:11:54Z badkins joined #scheme 2020-09-01T22:25:09Z torbo joined #scheme 2020-09-01T22:35:22Z mparlaktuna quit (Remote host closed the connection) 2020-09-01T22:41:11Z cgay joined #scheme 2020-09-01T22:44:02Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-01T22:52:38Z foof: jcowan: you'll need to cut the body into pieces and bury them in lime 2020-09-01T22:53:07Z jcowan: No, that's no problem, I can send them down the bathtub drain one at a time. 2020-09-01T22:53:19Z jcowan: (Anyway, my problem is resolved now) 2020-09-01T23:00:29Z badkins quit (Remote host closed the connection) 2020-09-01T23:01:01Z badkins joined #scheme 2020-09-01T23:02:47Z badkins quit (Remote host closed the connection) 2020-09-01T23:03:01Z badkins joined #scheme 2020-09-01T23:15:20Z badkins quit (Remote host closed the connection) 2020-09-01T23:16:00Z badkins joined #scheme 2020-09-01T23:16:48Z lritter quit (Quit: Leaving) 2020-09-01T23:20:43Z badkins quit (Ping timeout: 260 seconds) 2020-09-01T23:22:52Z badkins joined #scheme 2020-09-01T23:30:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-01T23:35:07Z badkins joined #scheme 2020-09-01T23:56:59Z hugh_marera quit (Quit: hugh_marera) 2020-09-02T00:00:04Z badkins_ joined #scheme 2020-09-02T00:02:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-02T00:03:25Z gmaggior quit (Ping timeout: 240 seconds) 2020-09-02T00:08:02Z klovett quit (Remote host closed the connection) 2020-09-02T00:08:41Z klovett joined #scheme 2020-09-02T00:10:36Z gmaggior joined #scheme 2020-09-02T00:20:46Z brendyyn joined #scheme 2020-09-02T00:35:19Z skapate joined #scheme 2020-09-02T00:35:37Z skapata quit (Ping timeout: 272 seconds) 2020-09-02T00:35:47Z skapate is now known as skapata 2020-09-02T00:48:15Z gmaggior quit (Quit: Leaving) 2020-09-02T00:57:37Z badkins_ quit (Remote host closed the connection) 2020-09-02T00:57:40Z evhan quit (Quit: De IRC non curat rex...) 2020-09-02T00:57:59Z evhan joined #scheme 2020-09-02T01:28:00Z klovett quit (Remote host closed the connection) 2020-09-02T01:28:15Z klovett joined #scheme 2020-09-02T01:33:49Z dbmikus quit (Ping timeout: 264 seconds) 2020-09-02T01:50:45Z dbmikus joined #scheme 2020-09-02T01:54:18Z Oddity_ joined #scheme 2020-09-02T01:54:55Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-02T01:57:55Z Oddity quit (Ping timeout: 244 seconds) 2020-09-02T01:58:18Z Oddity__ joined #scheme 2020-09-02T02:01:42Z Oddity_ quit (Ping timeout: 260 seconds) 2020-09-02T02:25:35Z dbmikus joined #scheme 2020-09-02T02:29:08Z raingloom quit (Ping timeout: 260 seconds) 2020-09-02T02:31:25Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-02T02:59:52Z badkins joined #scheme 2020-09-02T03:04:31Z badkins quit (Ping timeout: 265 seconds) 2020-09-02T03:05:09Z dbmikus joined #scheme 2020-09-02T03:12:13Z dbmikus quit (Ping timeout: 264 seconds) 2020-09-02T03:29:25Z dbmikus joined #scheme 2020-09-02T03:33:45Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-02T03:42:55Z seepel quit (Ping timeout: 240 seconds) 2020-09-02T03:55:11Z zooey_ joined #scheme 2020-09-02T03:55:23Z zooey quit (Ping timeout: 240 seconds) 2020-09-02T03:59:11Z skapata quit (Remote host closed the connection) 2020-09-02T04:02:57Z xelxebar quit (Remote host closed the connection) 2020-09-02T04:04:11Z xelxebar joined #scheme 2020-09-02T04:31:18Z cgay quit (Quit: Connection closed for inactivity) 2020-09-02T05:01:25Z badkins joined #scheme 2020-09-02T05:02:30Z gravicappa joined #scheme 2020-09-02T05:05:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-02T05:10:22Z torbo quit (Remote host closed the connection) 2020-09-02T05:22:21Z lockywolf: Where does Kawa keep its libraries? 2020-09-02T05:22:46Z lockywolf: If I run (import (foo bar)), where is bar.sld? 2020-09-02T05:30:20Z dbmikus joined #scheme 2020-09-02T05:31:48Z edgar-rft joined #scheme 2020-09-02T05:32:17Z laertus joined #scheme 2020-09-02T05:32:35Z laertus: does anyone know if tinyscheme is tail call optimized? 2020-09-02T05:32:47Z laertus: also, does anyone know how to express the null value in tinyscheme? 2020-09-02T05:34:50Z dbmikus quit (Ping timeout: 265 seconds) 2020-09-02T05:37:35Z lockywolf: nil? 2020-09-02T05:38:41Z daviid: lockywolf: https://www.gnu.org/software/kawa/Importing.html 2020-09-02T05:38:51Z lockywolf: daviid, and? 2020-09-02T05:39:01Z lockywolf: I do have that page open before me for the past hour. 2020-09-02T05:39:10Z laertus: oh.. right.. nil.. thanks 2020-09-02T05:39:14Z lockywolf: I wouldn't have asked if it was so easy to understand. 2020-09-02T05:48:45Z lockywolf: For indexers, the correct spell is ./bin/kawa -w -Dkawa.import.path=".:*.sld" 2020-09-02T05:49:03Z pounce quit (Ping timeout: 258 seconds) 2020-09-02T05:51:12Z dbmikus joined #scheme 2020-09-02T05:56:06Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-02T06:01:16Z timwis quit (Ping timeout: 244 seconds) 2020-09-02T06:01:47Z cemerick quit (Ping timeout: 272 seconds) 2020-09-02T06:02:27Z kilimanjaro quit (Ping timeout: 240 seconds) 2020-09-02T06:02:36Z timwis joined #scheme 2020-09-02T06:02:44Z kilimanjaro_ joined #scheme 2020-09-02T06:04:17Z cemerick joined #scheme 2020-09-02T06:30:37Z jobol joined #scheme 2020-09-02T06:58:41Z ggole joined #scheme 2020-09-02T07:02:05Z badkins joined #scheme 2020-09-02T07:06:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-02T07:36:53Z retropikzel joined #scheme 2020-09-02T07:43:11Z retropikzel quit (Quit: Leaving) 2020-09-02T07:48:25Z arew quit (Quit: WeeChat 2.8) 2020-09-02T07:52:06Z dbmikus joined #scheme 2020-09-02T07:56:56Z dbmikus quit (Ping timeout: 265 seconds) 2020-09-02T08:03:21Z cpressey joined #scheme 2020-09-02T08:10:23Z tryte quit (Ping timeout: 240 seconds) 2020-09-02T08:11:20Z tryte joined #scheme 2020-09-02T08:55:15Z notzmv quit (Remote host closed the connection) 2020-09-02T08:55:48Z notzmv joined #scheme 2020-09-02T08:55:55Z notzmv is now known as Guest34105 2020-09-02T08:57:06Z Guest34105 is now known as zmv 2020-09-02T08:57:15Z zmv quit (Changing host) 2020-09-02T08:57:15Z zmv joined #scheme 2020-09-02T08:57:18Z zmv is now known as notzmv` 2020-09-02T08:57:40Z notzmv` is now known as notzmv 2020-09-02T09:00:56Z civodul joined #scheme 2020-09-02T09:03:09Z badkins joined #scheme 2020-09-02T09:07:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-02T09:08:35Z dbohdan: laertus: I don't know about TinyScheme itself but s7, which is based on TinyScheme, does TCO 2020-09-02T09:09:45Z daviid quit (Ping timeout: 240 seconds) 2020-09-02T09:26:47Z epony quit (Ping timeout: 258 seconds) 2020-09-02T09:26:58Z edgar-rft quit (Quit: Leaving) 2020-09-02T09:28:01Z raingloom joined #scheme 2020-09-02T09:29:37Z epony joined #scheme 2020-09-02T09:30:00Z jobol: fyi, i started a rewrite or tinyscheme for s7, made a lot but stopped lately. https://gitlab.com/jobol/tr7 2020-09-02T09:35:43Z tryte quit (Ping timeout: 240 seconds) 2020-09-02T09:37:02Z tryte joined #scheme 2020-09-02T09:53:00Z dbmikus joined #scheme 2020-09-02T09:57:23Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-02T10:13:57Z dbmikus joined #scheme 2020-09-02T10:18:32Z dbmikus quit (Ping timeout: 258 seconds) 2020-09-02T10:28:00Z hugh_marera joined #scheme 2020-09-02T10:35:25Z raingloom quit (Ping timeout: 240 seconds) 2020-09-02T10:40:39Z rain1: did you see https://github.com/rain-1/single_cream/ 2020-09-02T11:02:03Z hugh_marera quit (Quit: hugh_marera) 2020-09-02T11:04:01Z badkins joined #scheme 2020-09-02T11:08:44Z badkins quit (Ping timeout: 256 seconds) 2020-09-02T11:11:05Z bitmapper quit (Ping timeout: 240 seconds) 2020-09-02T11:15:56Z jobol: me? no. however done now. thx 2020-09-02T11:30:08Z amirouche joined #scheme 2020-09-02T11:37:02Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-02T11:37:45Z deesix quit (Ping timeout: 240 seconds) 2020-09-02T11:42:29Z deesix joined #scheme 2020-09-02T11:47:12Z mdhughes_ joined #scheme 2020-09-02T11:48:59Z mdhughes quit (Ping timeout: 244 seconds) 2020-09-02T12:00:15Z mdhughes_ is now known as mdhughes 2020-09-02T12:01:54Z nomicflux joined #scheme 2020-09-02T12:02:10Z nomicflux quit (Client Quit) 2020-09-02T12:02:59Z daviid joined #scheme 2020-09-02T12:14:49Z dbmikus joined #scheme 2020-09-02T12:19:10Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-02T12:48:00Z lritter joined #scheme 2020-09-02T13:04:57Z badkins joined #scheme 2020-09-02T13:09:22Z badkins quit (Ping timeout: 256 seconds) 2020-09-02T13:19:47Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-02T13:19:57Z [X-Scale] joined #scheme 2020-09-02T13:20:12Z [X-Scale] is now known as X-Scale 2020-09-02T13:37:54Z hendursaga quit (Quit: hendursaga) 2020-09-02T13:38:15Z hendursaga joined #scheme 2020-09-02T13:42:22Z raingloom joined #scheme 2020-09-02T13:56:18Z bars0 joined #scheme 2020-09-02T13:58:38Z Perkol joined #scheme 2020-09-02T14:00:56Z X-Scale quit (Ping timeout: 256 seconds) 2020-09-02T14:08:03Z X-Scale joined #scheme 2020-09-02T14:12:11Z edgar-rft joined #scheme 2020-09-02T14:14:38Z Perkol quit (Remote host closed the connection) 2020-09-02T14:17:09Z cpressey joined #scheme 2020-09-02T14:18:45Z bars0 quit (Ping timeout: 240 seconds) 2020-09-02T14:33:56Z klovett quit (Remote host closed the connection) 2020-09-02T14:34:47Z klovett joined #scheme 2020-09-02T14:36:37Z dbmikus joined #scheme 2020-09-02T14:40:45Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-02T14:51:08Z aeth quit (Ping timeout: 260 seconds) 2020-09-02T14:52:47Z aeth joined #scheme 2020-09-02T14:57:30Z dbmikus joined #scheme 2020-09-02T14:57:59Z klovett quit (Remote host closed the connection) 2020-09-02T14:58:18Z klovett joined #scheme 2020-09-02T15:01:40Z skapata joined #scheme 2020-09-02T15:01:55Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-02T15:03:02Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-02T15:05:52Z badkins joined #scheme 2020-09-02T15:10:23Z badkins quit (Ping timeout: 260 seconds) 2020-09-02T15:11:33Z Riastradh quit (Ping timeout: 260 seconds) 2020-09-02T15:21:20Z webshinra quit (Remote host closed the connection) 2020-09-02T15:30:40Z sunwukong joined #scheme 2020-09-02T15:35:21Z jobol quit (Quit: Leaving) 2020-09-02T15:42:08Z sunwukong quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-02T15:43:52Z amirouche: I have a brillant idea for an application: it will be called 'overkill'. 2020-09-02T15:55:36Z gioyik joined #scheme 2020-09-02T16:00:50Z cgay joined #scheme 2020-09-02T16:05:51Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-02T16:06:26Z arew joined #scheme 2020-09-02T16:06:49Z amirouche quit (Ping timeout: 264 seconds) 2020-09-02T16:08:32Z Zipheir: amirouche: Is it similar to 'killall'? 2020-09-02T16:09:04Z Zipheir: Aaand gone. 2020-09-02T16:11:10Z arew: haha 2020-09-02T16:11:12Z arew: ;) 2020-09-02T16:12:59Z arew: At work they keep saying my work is "overkill", I assume it is because of the work on SRFI-167 and SRFI-168. 2020-09-02T16:15:21Z Zipheir: overkill == kill -9 2020-09-02T16:17:00Z arew: The funny thing is last week, they asked for an easy solution to track / monitor / observe actions in the app we are building. Knowing they are fully against DIY and they require it to be self-hosted, I submited to they grand minds some simple off-the-shelf nodejs + postgresql app... CTO says "That is overkill! Let's use was lambdas and bigquery". Eventually, they decided to go with segment.io 2020-09-02T16:17:02Z arew: (that does not meet the self-hosted requirement) 2020-09-02T16:18:12Z Riastradh joined #scheme 2020-09-02T16:20:01Z arew: The week before that, they asked about a solution to basically grep through files with boolean keyword queries. I started to give a glimpse of a solution, then the tech lead said: "That is overkill, we have ElasticSearch we can use that". 2020-09-02T16:20:42Z arew: sorry, it is not "grep through files", it more like there "thousands of boolean query queries, and you need to figure which query match ONE document" 2020-09-02T16:20:56Z arew: so the input is ONE document and thousands of boolean queries. 2020-09-02T16:21:15Z arew: it is the inverse of what elastic search (which indeed grep through files) 2020-09-02T16:23:55Z notzmv quit (Read error: Connection reset by peer) 2020-09-02T16:30:55Z dbmikus joined #scheme 2020-09-02T16:36:22Z notzmv joined #scheme 2020-09-02T16:36:41Z notzmv is now known as Guest12523 2020-09-02T16:36:47Z ManDay joined #scheme 2020-09-02T16:39:43Z ggole quit (Quit: Leaving) 2020-09-02T16:46:10Z ManDay quit (Read error: Connection reset by peer) 2020-09-02T16:46:14Z ManDay_clone joined #scheme 2020-09-02T16:54:54Z dbmikus quit (Ping timeout: 258 seconds) 2020-09-02T17:06:45Z badkins joined #scheme 2020-09-02T17:10:59Z badkins quit (Ping timeout: 240 seconds) 2020-09-02T17:11:18Z dbmikus joined #scheme 2020-09-02T17:11:23Z epony quit (Ping timeout: 258 seconds) 2020-09-02T17:13:30Z hugh_marera joined #scheme 2020-09-02T17:20:20Z Oddity__ quit (Remote host closed the connection) 2020-09-02T17:20:48Z Oddity__ joined #scheme 2020-09-02T17:22:17Z varbhat: i want to learn scheme. which scheme should i start ? 2020-09-02T17:22:46Z varbhat: i am facing same problem http://steve-yegge.blogspot.com/2006/04/lisp-is-not-acceptable-lisp.html?m=1 2020-09-02T17:22:59Z varbhat: there are lot of choices 2020-09-02T17:23:04Z varbhat: recommend me one 2020-09-02T17:23:05Z varbhat: please 2020-09-02T17:24:58Z Zipheir: varbhat: Scheme is a pretty good Scheme. 2020-09-02T17:25:04Z Zipheir: varbhat: Check out The Little Schemer. 2020-09-02T17:25:45Z wasamasa: I mean, really, what recommendation do you expect from #scheme, other than... scheme 2020-09-02T17:25:47Z Zipheir: (I find that Stevey post to be one of his less useful rants.) 2020-09-02T17:27:28Z Zipheir: varbhat: If you're just starting out, it matters little what Scheme you try. I'd recommend whatever's easiest to get running. 2020-09-02T17:28:15Z varbhat: zipheir, which scheme? 2020-09-02T17:28:30Z Zipheir: varbhat: Which platform? 2020-09-02T17:28:35Z varbhat: linux 2020-09-02T17:29:29Z Zipheir: varbhat: Then you have a lot of options. Guile and CHICKEN are packaged by many distros. 2020-09-02T17:31:21Z Zipheir: varbhat: Debian-derived distros have Racket, Chez, MIT, and many others. 2020-09-02T17:32:25Z Zipheir: varbhat: Many Schemers recommend Racket for learning. It's a pretty extensive system. If you want something smaller, Chez, CHICKEN, and MIT are nice. 2020-09-02T17:32:29Z ManDay_clone quit (Quit: WeeChat 2.8) 2020-09-02T17:33:07Z Riastradh: I suspect varbhat was asking for one answer, not six. 2020-09-02T17:33:44Z Zipheir: Riastradh: What if the answer is a six-tuple? 2020-09-02T17:34:57Z Zipheir: Riastradh: Suggesting that there is a single right answer to that question would be incorrect, anyway. 2020-09-02T17:37:18Z Riastradh: Maybe varbhat isn't looking for a `correct answer' in the sense of an overwhelming deluge of all relevant information but rather just for a single suggestion about how to get started without having to process that overwhelming deluge of all relevant information. 2020-09-02T17:37:50Z rain1: varbhat: racket 2020-09-02T17:38:58Z Zipheir: ^^ 2020-09-02T17:40:33Z varbhat: riastradh : i am now beginning scheme with guile . wish me the best. 2020-09-02T17:41:02Z Zipheir: varbhat: Good luck! 2020-09-02T17:41:03Z Riastradh: varbhat: guile is a perfectly reasonable choice -- have fun! 2020-09-02T17:41:16Z Zipheir: varbhat: Feel free to ask any questions you may have here. 2020-09-02T17:41:34Z varbhat: ok, i will ask 2020-09-02T17:41:57Z varbhat: thank you for replying btw 2020-09-02T17:43:55Z epony joined #scheme 2020-09-02T17:47:22Z Guest12523 is now known as notzmv 2020-09-02T17:47:24Z notzmv quit (Changing host) 2020-09-02T17:47:24Z notzmv joined #scheme 2020-09-02T17:48:13Z lritter quit (Quit: Leaving) 2020-09-02T17:50:15Z badkins joined #scheme 2020-09-02T18:00:54Z lritter joined #scheme 2020-09-02T18:01:34Z autumn[m]: good luck 2020-09-02T18:15:49Z drot quit (Ping timeout: 272 seconds) 2020-09-02T18:24:24Z klovett quit (Remote host closed the connection) 2020-09-02T18:25:17Z klovett joined #scheme 2020-09-02T18:30:48Z ManDay joined #scheme 2020-09-02T18:31:10Z gmaggior joined #scheme 2020-09-02T18:32:58Z hugh_marera quit (Quit: hugh_marera) 2020-09-02T18:33:16Z hugh_marera joined #scheme 2020-09-02T18:34:40Z dbohdan: arew: That sounds like a job for datalog 2020-09-02T18:35:46Z evhan quit (Quit: De IRC non curat rex...) 2020-09-02T18:35:59Z evhan joined #scheme 2020-09-02T18:36:34Z arew: dbohdan: I never understood how datalog works 2020-09-02T18:37:19Z arew: dbohdan: how does datalog handle this problem? 2020-09-02T18:43:08Z Tirifto joined #scheme 2020-09-02T18:44:22Z Blukunfando quit 2020-09-02T18:46:03Z ManDay quit (Quit: WeeChat 2.8) 2020-09-02T18:54:33Z bitmapper joined #scheme 2020-09-02T19:06:04Z edgar-rft quit (Quit: Leaving) 2020-09-02T19:07:10Z dbohdan: arew: In Datalog you state some "facts" and then run queries against them, kind of like in a relational database. Datalog can find all values of variables that satisfy a certain expression. You can play with it in Racket using #lang datalog. 2020-09-02T19:07:32Z dbohdan: But I think I misunderstood your problem. It is not really a Datalog problem. 2020-09-02T19:11:38Z arew: dbohdan: the equivalent of "facts" in the current problem is a string of char 2020-09-02T19:23:04Z yosafbridge quit (Quit: Leaving) 2020-09-02T19:23:54Z mason left #scheme 2020-09-02T19:27:17Z yosafbridge joined #scheme 2020-09-02T19:32:46Z bitmapper quit (Read error: Connection reset by peer) 2020-09-02T19:33:08Z bitmapper joined #scheme 2020-09-02T19:38:25Z notzmv quit (Ping timeout: 240 seconds) 2020-09-02T19:44:18Z seepel joined #scheme 2020-09-02T19:45:22Z muelleme joined #scheme 2020-09-02T19:46:37Z gioyik quit (Read error: Connection reset by peer) 2020-09-02T19:51:33Z gioyik joined #scheme 2020-09-02T19:56:11Z lritter quit (Ping timeout: 240 seconds) 2020-09-02T19:59:17Z notzmv joined #scheme 2020-09-02T19:59:22Z notzmv is now known as Guest98299 2020-09-02T20:00:17Z Guest98299 is now known as zmv 2020-09-02T20:00:27Z zmv quit (Changing host) 2020-09-02T20:00:27Z zmv joined #scheme 2020-09-02T20:00:38Z zmv is now known as notzmv 2020-09-02T20:04:07Z lritter joined #scheme 2020-09-02T20:09:19Z seepel1 joined #scheme 2020-09-02T20:10:24Z seepel quit (Ping timeout: 256 seconds) 2020-09-02T20:22:11Z notzmv quit (Read error: Connection reset by peer) 2020-09-02T20:22:46Z notzmv joined #scheme 2020-09-02T20:22:55Z notzmv is now known as Guest13135 2020-09-02T20:23:11Z drot joined #scheme 2020-09-02T20:25:26Z jcowan: The other thing about Datalog is that is isomorphic to the relational algebra 2020-09-02T20:30:17Z badkins quit (Remote host closed the connection) 2020-09-02T20:30:52Z badkins joined #scheme 2020-09-02T20:34:36Z badkins quit (Remote host closed the connection) 2020-09-02T20:34:45Z badkins joined #scheme 2020-09-02T20:37:24Z terpri_ joined #scheme 2020-09-02T20:38:03Z terpri quit (Ping timeout: 244 seconds) 2020-09-02T20:38:48Z muelleme quit (Ping timeout: 260 seconds) 2020-09-02T20:59:20Z aeth_ joined #scheme 2020-09-02T21:02:21Z aeth quit (Ping timeout: 265 seconds) 2020-09-02T21:02:29Z aeth_ is now known as aeth 2020-09-02T21:49:35Z klovett quit (Remote host closed the connection) 2020-09-02T21:49:53Z klovett joined #scheme 2020-09-02T21:59:47Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-02T21:59:52Z Oxyd quit (*.net *.split) 2020-09-02T21:59:52Z jxy quit (*.net *.split) 2020-09-02T21:59:52Z lavaflow quit (*.net *.split) 2020-09-02T21:59:52Z jboy quit (*.net *.split) 2020-09-02T21:59:53Z C-Keen quit (*.net *.split) 2020-09-02T21:59:53Z r0kc4t_ quit (*.net *.split) 2020-09-02T22:00:00Z r0kc4t joined #scheme 2020-09-02T22:00:08Z C-Keen joined #scheme 2020-09-02T22:00:12Z jxy joined #scheme 2020-09-02T22:00:32Z C-Keen is now known as Guest81071 2020-09-02T22:01:04Z Oxyd joined #scheme 2020-09-02T22:01:17Z lavaflow joined #scheme 2020-09-02T22:02:37Z nckx quit (Ping timeout: 264 seconds) 2020-09-02T22:03:02Z jboy joined #scheme 2020-09-02T22:03:10Z nckx joined #scheme 2020-09-02T22:03:47Z hugh_marera quit (Quit: hugh_marera) 2020-09-02T22:13:54Z torbo joined #scheme 2020-09-02T22:17:50Z seepel1 quit (Read error: Connection reset by peer) 2020-09-02T22:18:01Z skapata quit (Remote host closed the connection) 2020-09-02T22:25:17Z lritter quit (Quit: Leaving) 2020-09-02T22:27:02Z aeth_ joined #scheme 2020-09-02T22:30:02Z aeth quit (Ping timeout: 256 seconds) 2020-09-02T22:31:58Z aeth_ is now known as aeth 2020-09-02T22:34:57Z badkins quit (Remote host closed the connection) 2020-09-02T22:35:35Z badkins joined #scheme 2020-09-02T22:40:38Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-02T22:41:01Z badkins quit (Ping timeout: 264 seconds) 2020-09-02T22:49:38Z badkins joined #scheme 2020-09-02T22:54:10Z badkins quit (Ping timeout: 256 seconds) 2020-09-02T23:08:27Z badkins joined #scheme 2020-09-02T23:13:20Z badkins quit (Ping timeout: 265 seconds) 2020-09-02T23:14:41Z tumdum quit (Remote host closed the connection) 2020-09-02T23:26:59Z terpri_ quit (Remote host closed the connection) 2020-09-02T23:27:56Z terpri joined #scheme 2020-09-02T23:32:37Z badkins joined #scheme 2020-09-02T23:47:23Z brendyyn joined #scheme 2020-09-03T00:48:07Z terpri quit (Ping timeout: 244 seconds) 2020-09-03T00:58:15Z Tirifto quit (Quit: Leaving.) 2020-09-03T01:04:32Z badkins quit (Remote host closed the connection) 2020-09-03T01:25:55Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-03T01:56:31Z lockywolf: What happens if I (import ) something twice? 2020-09-03T01:57:08Z lockywolf: Apparently, in Kawa, the second import has no effect. 2020-09-03T01:57:17Z Riastradh: the import police show up at your door and serve you a fine for tariff violations 2020-09-03T02:04:36Z raingloom quit (Ping timeout: 258 seconds) 2020-09-03T02:15:56Z lockywolf: ouch 2020-09-03T02:16:31Z lockywolf: what's the preferred way of debugging libraries then? 2020-09-03T02:16:40Z lockywolf: restarting the interpreter each time? 2020-09-03T02:19:23Z lockywolf: I wonder though if my libraries can be submitted to the SRFI system then. Since it's technically Chinese code (import)ed by an American interpreter, without paying the tariff. 2020-09-03T02:22:14Z ggoes quit (Quit: WeeChat 2.3) 2020-09-03T02:22:27Z Zipheir: Riastradh: That's Go's approach. 2020-09-03T02:22:37Z ggoes joined #scheme 2020-09-03T03:21:31Z pounce joined #scheme 2020-09-03T03:31:14Z jcowan: lockywolf: I write libs as two files, the [define-]library form with the imports and exports, and have that include a file containing the implementation. 2020-09-03T03:31:30Z jcowan: By loading the implementation by itself, it's much easier to debug. 2020-09-03T03:31:40Z jcowan: and you can reload it at any point. 2020-09-03T03:31:54Z jcowan: (this assumes your Scheme has 'load', which most do even if they are R6RS) 2020-09-03T03:32:46Z jcowan: This also has the advantage that there can be multiple library files all including the same implementation file. 2020-09-03T03:35:48Z lockywolf: How would I write the environment-specifier for the call to load in this case? 2020-09-03T03:36:43Z jcowan: Try leaving it out. If that fails, try (interaction-environment). If that also fails, you're out of luck. 2020-09-03T03:38:16Z lockywolf: well, I don't want to import my library functions into the interaction environment 2020-09-03T03:38:54Z lockywolf: debugging name conflicts is very confusing 2020-09-03T03:56:29Z lockywolf: Am I doing something wrong with this code: (define test (make-bytevector 5 5 )) (write-bytevector test) ? 2020-09-03T03:57:27Z lockywolf: I'm getting "java.lang.ClassCastException: gnu.kawa.io.OutPort cannot be cast to java.io.OutputStream" 2020-09-03T04:27:55Z torbo quit (Remote host closed the connection) 2020-09-03T05:09:17Z gravicappa joined #scheme 2020-09-03T05:17:34Z z-memory joined #scheme 2020-09-03T05:26:39Z klovett quit (Remote host closed the connection) 2020-09-03T05:27:29Z klovett joined #scheme 2020-09-03T05:39:35Z laertus left #scheme 2020-09-03T06:22:33Z edgar-rft joined #scheme 2020-09-03T06:37:32Z daviid quit (Ping timeout: 258 seconds) 2020-09-03T06:46:52Z weinholt: lockywolf, as noted on the wg1 mailing list just the other day: write-bytevector without a port argument uses (current-output-port), which is by default a textual port. i'm guessing gnu.kawa.io.OutPort is a textual port and java.io.OutputStream is a binary port. 2020-09-03T06:47:18Z Riastradh: ...heh. 2020-09-03T06:48:21Z gmaggior quit (Quit: Leaving) 2020-09-03T06:53:42Z lockywolf: indeed, heh 2020-09-03T06:54:08Z lockywolf: the thing is that Kawa throws the same error even if (with-output-to-file "filename" (...)) is used. 2020-09-03T06:55:41Z weinholt: with-output-to-file uses open-output-file, which gives you a textual port. you need open-binary-output-file. 2020-09-03T06:55:59Z lockywolf: hehe... 2020-09-03T07:00:01Z Riastradh: what a crock 2020-09-03T07:03:34Z arew quit (Quit: WeeChat 2.8) 2020-09-03T07:04:48Z amirouche joined #scheme 2020-09-03T07:09:44Z lockywolf: What is a "crock"? 2020-09-03T07:09:54Z lockywolf: crocodile ? 2020-09-03T07:11:47Z lockywolf: any way, srfi-203 now works on Kawa in addition to imagemagick+chibi 2020-09-03T07:17:34Z cgay quit (Quit: Connection closed for inactivity) 2020-09-03T07:18:18Z civodul joined #scheme 2020-09-03T07:39:49Z Guest13135 is now known as notzmv 2020-09-03T07:39:56Z notzmv quit (Changing host) 2020-09-03T07:39:56Z notzmv joined #scheme 2020-09-03T07:53:15Z gioyik quit (Quit: WeeChat 2.9) 2020-09-03T08:05:52Z cpressey joined #scheme 2020-09-03T08:10:02Z hendursa1 joined #scheme 2020-09-03T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-03T08:38:40Z laertus joined #scheme 2020-09-03T08:40:02Z laertus: i need to get some random values within a certain range, but i'm forced to use tinyscheme, which only has a really stupid random function that only allows its user to set the upper limit.. the lower limit is always 1 2020-09-03T08:40:34Z laertus: now, to get a random number in the range i want, i could just set the upper limit to what i want, and rerun the random function until i get a number in my range 2020-09-03T08:41:34Z laertus: but that kind of screws up the random distribution... not that it's great to begin with, but say i want a uniform distribution 2020-09-03T08:41:53Z laertus: is there something a bit smarter but still easy i could do to get a random number only in my desired range? 2020-09-03T08:42:53Z cpressey: laertus: can you not subtract one from the result, then take it modulo some range? 2020-09-03T08:43:16Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T08:44:52Z cpressey: Actually if you can set the upper limit, you don't need modulo, just adjust the upper limit by the same amount 2020-09-03T08:46:23Z laertus: trying to understand how that works... let's say my range is 2-4, so i run (random 5) and then subtract 1, right? 2020-09-03T08:47:43Z laertus: which doesn't make sense to me, as it could return 1, and then subtracting 1 would leave 0, which is outside my range 2020-09-03T08:47:48Z laertus: so i'm probably missing something.. 2020-09-03T08:47:52Z cpressey: I don't know how tinyscheme's `random` works, but: if you want to generate a number in the range 2 to 4 inclusive, you can generate a number from 1 to 3 inclusive, then add 1 2020-09-03T08:48:05Z laertus: oh, add 1 2020-09-03T08:48:39Z laertus: yeah, that works.. thanks :) 2020-09-03T08:52:11Z laertus: wait.. i think i'm confused again.. 2020-09-03T08:52:28Z laertus: let's say the range i want is 8 to 10 inclusive 2020-09-03T08:53:20Z laertus: but the random numbers generated by tinyscheme's random function will always include everything from 1 to the limit (inclusive) 2020-09-03T08:54:01Z laertus: so i guess i'd have to run (random 2), and than add 8 2020-09-03T08:54:03Z laertus: right? 2020-09-03T08:55:05Z hugo joined #scheme 2020-09-03T08:56:52Z laertus: well, it seems to work.. so it's (+ minimum (random (- maximum minimum))) 2020-09-03T08:58:06Z hugo quit (Client Quit) 2020-09-03T09:06:02Z cpressey: Instead of thinking of the absolute values of the range, think of how big the range is. A range of 8 to 10 inclusive has 3 numbers in it (8, 9, and 10). So generate a number between 1 and 3 (1, 2, 3). Then add what it takes to bring it back to the range you want. 2020-09-03T09:09:21Z cchristiansen joined #scheme 2020-09-03T09:11:03Z badkins joined #scheme 2020-09-03T09:11:05Z cpressey: Again I don't know tinyscheme, but (+ 8 (random 2)) sounds like it will only get you the numbers 9 or 10, never 8. 2020-09-03T09:11:20Z laertus: yes, you're right 2020-09-03T09:11:36Z hugo joined #scheme 2020-09-03T09:11:36Z laertus: i ran in to the dreaded off-by-one error :) 2020-09-03T09:11:41Z laertus: thanks for explaining that to me 2020-09-03T09:11:53Z cpressey: no problem :) 2020-09-03T09:13:12Z hugo quit (Client Quit) 2020-09-03T09:13:26Z hugo joined #scheme 2020-09-03T09:15:58Z badkins quit (Ping timeout: 260 seconds) 2020-09-03T09:43:12Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T09:43:26Z hugo joined #scheme 2020-09-03T10:08:36Z mdhughes: Almost all (random N) return 0..(N-1). So 1-6 is (add1 (random 6)). (random 2) will give you 0..1 2020-09-03T10:11:00Z seepel joined #scheme 2020-09-03T10:13:12Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T10:13:25Z hugo joined #scheme 2020-09-03T10:19:31Z mdhughes: The version of tinyscheme I downloaded doesn't have random, only random-next, which is a typical 32-bit rotor, so you (modulo (random-next) N) to get 0..(N-1) 2020-09-03T10:20:40Z fizzie: But the bias! (Just kidding.) 2020-09-03T10:21:28Z mdhughes: On 15-bit, that was a real concern! 31-bit (in both cases, top bit's lost to sign) it doesn't matter except for particle physics and cryptography. 2020-09-03T10:22:25Z seepel quit (Ping timeout: 264 seconds) 2020-09-03T10:23:10Z mdhughes: And the seed in tinyscheme is 1. I guess you can just (set! *seed* WHATEVER) 2020-09-03T10:23:22Z mdhughes: Janky. Ass. 2020-09-03T10:30:49Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-03T10:36:40Z raingloom joined #scheme 2020-09-03T10:42:49Z civodul joined #scheme 2020-09-03T10:43:12Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T10:43:26Z hugo joined #scheme 2020-09-03T11:05:46Z bitmapper quit (Ping timeout: 265 seconds) 2020-09-03T11:09:29Z lritter joined #scheme 2020-09-03T11:12:35Z badkins joined #scheme 2020-09-03T11:13:12Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T11:13:28Z hugo joined #scheme 2020-09-03T11:16:55Z badkins quit (Ping timeout: 240 seconds) 2020-09-03T11:30:12Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-03T11:43:15Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T11:43:29Z hugo joined #scheme 2020-09-03T11:55:02Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-03T12:04:11Z ggole joined #scheme 2020-09-03T12:10:43Z dbmikus joined #scheme 2020-09-03T12:13:12Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T12:13:26Z hugo joined #scheme 2020-09-03T12:15:55Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-03T12:18:57Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-03T12:24:03Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T12:24:18Z hugo joined #scheme 2020-09-03T12:43:16Z hugo quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-03T12:43:26Z hugo joined #scheme 2020-09-03T12:49:47Z klovett quit (Read error: Connection reset by peer) 2020-09-03T12:50:30Z hendursa1 quit (Quit: hendursa1) 2020-09-03T12:50:46Z hendursaga joined #scheme 2020-09-03T12:51:16Z klovett joined #scheme 2020-09-03T12:56:16Z epony quit (Quit: upgrades) 2020-09-03T13:01:17Z cpressey joined #scheme 2020-09-03T13:08:04Z epony joined #scheme 2020-09-03T13:20:08Z X-Scale` joined #scheme 2020-09-03T13:21:45Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-03T13:21:45Z X-Scale` is now known as X-Scale 2020-09-03T13:40:20Z nullheroes quit (Quit: WeeChat 2.9) 2020-09-03T13:45:04Z moldybits joined #scheme 2020-09-03T14:04:12Z hugh_marera joined #scheme 2020-09-03T14:15:21Z hugh_marera quit (Remote host closed the connection) 2020-09-03T14:18:40Z amirouche: Nearly the week-end: time to dance \o\ |o| /o/ 2020-09-03T14:23:50Z hugh_marera joined #scheme 2020-09-03T14:25:58Z hugh_marera quit (Remote host closed the connection) 2020-09-03T14:27:52Z hugh_marera joined #scheme 2020-09-03T15:10:56Z badkins joined #scheme 2020-09-03T15:15:18Z badkins quit (Ping timeout: 260 seconds) 2020-09-03T15:32:10Z DGASAU quit (Read error: Connection reset by peer) 2020-09-03T15:32:36Z DGASAU joined #scheme 2020-09-03T15:44:19Z amirouche quit (Quit: WeeChat 2.8) 2020-09-03T15:45:53Z arew joined #scheme 2020-09-03T15:46:44Z hugh_marera quit (Quit: hugh_marera) 2020-09-03T15:47:04Z hugh_marera joined #scheme 2020-09-03T15:56:48Z arew: Hey schemer, what you gonna do with those parentheses in your hand?... 2020-09-03T16:00:50Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-03T16:04:52Z cgay joined #scheme 2020-09-03T16:07:51Z skapata joined #scheme 2020-09-03T16:10:37Z dbmikus joined #scheme 2020-09-03T16:12:25Z terpri joined #scheme 2020-09-03T16:31:11Z badkins joined #scheme 2020-09-03T16:34:10Z bitmapper joined #scheme 2020-09-03T16:41:08Z jcowan: They're elegant weapons from a more civilized age. 2020-09-03T16:45:44Z mdhughes: They're tiny boomerangs, I'm Captain Parentheses. 2020-09-03T16:46:17Z mdhughes: And because my power sucks, I'm doomed to be ass-kicked by Flash. The Flash. 2020-09-03T16:49:34Z edgar-rft quit (Quit: Leaving) 2020-09-03T17:00:08Z jcowan: Well, yes, he can get behind you before you know what's going on. 2020-09-03T17:30:25Z laertus left #scheme 2020-09-03T17:40:27Z kilimanjaro_ is now known as kilimanjaro 2020-09-03T17:43:34Z daviid joined #scheme 2020-09-03T18:37:18Z z-memory quit (Quit: Connection closed for inactivity) 2020-09-03T18:42:05Z gmaggior joined #scheme 2020-09-03T18:45:01Z nullheroes joined #scheme 2020-09-03T18:55:22Z edgar-rft joined #scheme 2020-09-03T18:55:27Z badkins quit (Remote host closed the connection) 2020-09-03T18:56:00Z badkins joined #scheme 2020-09-03T19:00:53Z badkins quit (Ping timeout: 265 seconds) 2020-09-03T19:01:03Z muelleme joined #scheme 2020-09-03T19:05:04Z payph0ne joined #scheme 2020-09-03T19:22:32Z badkins joined #scheme 2020-09-03T19:34:53Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-03T19:40:05Z dbmikus joined #scheme 2020-09-03T19:40:54Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-03T19:44:10Z skapata left #scheme 2020-09-03T19:45:16Z ggole quit (Quit: Leaving) 2020-09-03T19:47:52Z raingloom quit (Ping timeout: 256 seconds) 2020-09-03T20:01:46Z lritter quit (Ping timeout: 258 seconds) 2020-09-03T20:02:21Z lritter joined #scheme 2020-09-03T20:07:18Z seepel joined #scheme 2020-09-03T20:24:16Z seepel: Hi Scheme! It isn't much, but I'd like to share my entry into repl.it's programming language jam: Flea Scheme. It is a very tiny scheme "implementation" inspired by Henry Baker's Linear Lisp. https://repl.it/talk/challenge/Flea-Scheme-An-Experimentation-with-Linear-Logic/51862 2020-09-03T20:32:12Z X-Scale` joined #scheme 2020-09-03T20:34:11Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-03T20:34:13Z X-Scale` is now known as X-Scale 2020-09-03T20:37:26Z arew: seepel: there is a typo with "sholud" 2020-09-03T20:38:17Z seepel: arew: Thanks so much! 2020-09-03T20:42:10Z arew: sorry, I can not relate to flea scheme, except the scheme part :D 2020-09-03T20:42:17Z arew: good luck! 2020-09-03T20:45:20Z arew: thanks for sharing :) 2020-09-03T20:46:33Z lritter quit (Quit: Leaving) 2020-09-03T20:52:13Z seepel: arew: Thanks for taking a look! To be honest, I'm not so sure how much I can actually relate to it either :) It's actually my motivation for building it, I always wished I could write some kind of code in the language baker describes. 2020-09-03T20:52:25Z muelleme quit (Ping timeout: 264 seconds) 2020-09-03T21:00:07Z Zipheir: seepel: Ooh, linear types in Scheme? 2020-09-03T21:01:05Z Zipheir: No, but related. 2020-09-03T21:01:08Z seepel: Zipheir: That's the idea, pretty darn anemic at the moment, and very likely unsound, but it at least exists :) 2020-09-03T21:02:20Z Zipheir: seepel: Thanks for sharing. I find this very interesting. 2020-09-03T21:03:04Z edgar-rft quit (Quit: Leaving) 2020-09-03T21:03:13Z Zipheir: It should eventually be very easy to implement a truly correct reverse! in such a Scheme. No existing Schemes actually check for correct use of linear update procedures. 2020-09-03T21:03:32Z Zipheir: (AFAIK) 2020-09-03T21:07:46Z seepel: Zipheir: I'm entirely self taught, so I don't think I understand why these are not linear types. My thought was that this would make all scheme types linear. re: linear update procedures, I had the same thought exactly! 2020-09-03T21:11:30Z Zipheir: seepel: Have you read Wadler's paper, "Linear Types Can Change The World!"? 2020-09-03T21:12:02Z Zipheir: https://pdfs.semanticscholar.org/24c8/50390fba27fc6f3241cb34ce7bc6f3765627.pdf 2020-09-03T21:12:23Z Zipheir: seepel: ^^ 2020-09-03T21:13:42Z seepel: Zipheir: I think I read it very early on, though I think I retained more from his "A Taste of Linear Logic" 2020-09-03T21:14:23Z Zipheir: seepel: Yes. Good stuff. 2020-09-03T21:18:01Z Zipheir: seepel: It's funny how, without vanilla nonlinear types, the code begins to look like FORTH, or rather, Joy. 2020-09-03T21:18:21Z Zipheir: Or perhaps I'm just being reminded of that by all the `dup's. 2020-09-03T21:18:55Z seepel: Zipheir: Henry Baker actually has a follow up paper where he equates his Linear Lisp language to Forth! It's actually why I chose dup as the identifier instead of copy :) 2020-09-03T21:19:13Z Zipheir: seepel: Hah, fascinating. 2020-09-03T21:20:05Z Zipheir: Baker's linear lisp page seems to be down, unfortunately. www.pipeline.com/~hbaker1/LinearLisp.html 2020-09-03T21:21:15Z payph0ne quit (Remote host closed the connection) 2020-09-03T21:21:56Z seepel: Yeah, it stopped loading a few months ago :( I've been using archive.org to access it https://web.archive.org/web/20200109114016/http://www.pipeline.com/~hbaker1/LinearLisp.html Since it is ostensibly an acm paper I wasn't sure about including a link directly to the archive 2020-09-03T21:23:10Z seepel: And for completeness, here is the Forth paper: https://web.archive.org/web/20200112152842/http://home.pipeline.com/~hbaker1/ForthStack.html 2020-09-03T21:23:28Z Zipheir: seepel: Thanks! 2020-09-03T21:25:34Z Zipheir: Fantastic: "The "standard", non-functional programming languages like Fortran, Ada, and C are the bastard progeny of the coupling between a pseudo-mathematical notation and a von Neumann-style random access memory (RAM)." 2020-09-03T21:26:38Z seepel: Yeah, I adore Henry Baker's writing style :) 2020-09-03T21:26:52Z aeth: why insult Ada? 2020-09-03T21:26:57Z Zipheir: He does seem to regard types as "mathematical mysticism", though, which is somewhat disappointing. 2020-09-03T21:28:04Z jcowan: He actually likes Ada, which is why he critiques it 2020-09-03T21:28:11Z Zipheir: aeth: Yes, one should be careful about using what is, after all, someone's first name in a sentence with "bastard progeny". 2020-09-03T21:29:12Z aeth: Ada's type system looks interesting 2020-09-03T21:29:41Z jcowan: There's another Baker paper on a serious bug in it, though 2020-09-03T21:29:54Z jcowan: I like the one on GCs as refrigerators 2020-09-03T21:31:18Z jcowan: Limited Robbery is the Ada bug paper 2020-09-03T21:31:36Z badkins quit (Remote host closed the connection) 2020-09-03T21:32:08Z jcowan: Buried Stale is also a great implementation of persistent tuples 2020-09-03T21:32:19Z badkins joined #scheme 2020-09-03T21:32:29Z aeth: Ada has one of the few type systems that looks usable, e.g. defining ranges from 1800 to 2100 in this example. https://en.wikipedia.org/wiki/Ada_(programming_language)#Data_types 2020-09-03T21:32:59Z aeth: I think the core flaw of Ada is that, apparently, its heap is as unsafe as C++ and it mostly achieves safety by trying to statically allocate as much as possible. 2020-09-03T21:33:34Z jcowan: Remember it's meant for embedded programming in a day when you didn't have enough RAM for a heap most of the time. Sometimes not enough for a stack. 2020-09-03T21:37:06Z Zipheir: aeth: Seems like the type system lacks any kind of polymorphism. Not having primitive types is a rather different approach, though. 2020-09-03T21:37:23Z badkins quit (Ping timeout: 260 seconds) 2020-09-03T21:38:29Z aeth: Zipheir: the lack of polymorphism can be overlooked if you write in a composition-over-inheritance style. A bit annoying, but still sorta OOPish and sorta not OOPish. 2020-09-03T21:39:13Z aeth: Zipheir: The thing I think about when I see new languages is how I would write an ECS in it. https://en.wikipedia.org/wiki/Entity_component_system 2020-09-03T21:39:38Z Zipheir: aeth: I'm talking parametric type polymorphism, not the bizarre mishmash that OOP calls polymorphism. 2020-09-03T21:39:52Z aeth: 'ECS' is a vague enough concept where a very dynamic, scripting-oriented language probably will just be behaviorally ECS, while something like C++ might be thinking more about low-level memory layout in its ECS design. 2020-09-03T21:40:58Z aeth: ECS is sort of writing your own dispatch, based on components, except a 'true' ECS doesn't have any entities at all, just arrays of components. 2020-09-03T21:43:05Z Zipheir: Apecs is interesting: https://hackage.haskell.org/package/apecs Too complex, though the idea is simple at heart. 2020-09-03T21:43:40Z Zipheir: As always, game systems tend to sprawl. 2020-09-03T21:44:36Z Zipheir: Most programs expand until they can send mail. C programs eventually contain most of Common Lisp. Game engines expand far past the point where they've reimplemented most of Doom. 2020-09-03T21:44:59Z aeth: well, yes, the problem of (non-toy) game architecture is inherently complicated because too many things are interconnected 2020-09-03T21:45:33Z aeth: so trying (and probably failing miserably) is a good way to test a language, although obviously not every language (e.g. Haskell) is even supposed to be in this domain at all 2020-09-03T21:46:40Z jcowan: Parametric polymorphism and Ada are about the same age: mid-70s. I doubt if any such novelty would have been accepted at the time. 2020-09-03T21:48:28Z Zipheir: aeth: Scoff, scoff. 2020-09-03T21:49:21Z Riastradh: Why isn't Haskell supposed to be in this domain? 2020-09-03T22:03:32Z badkins joined #scheme 2020-09-03T22:04:22Z torbo joined #scheme 2020-09-03T22:07:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-03T22:20:18Z aeth quit (Ping timeout: 256 seconds) 2020-09-03T22:22:05Z aeth joined #scheme 2020-09-03T22:22:45Z gioyik joined #scheme 2020-09-03T22:24:02Z aeth: Riastradh: The core of games are traditionally mostly mutable arrays of single-floats, not really something Haskell is known for. 2020-09-03T22:24:40Z payph0ne joined #scheme 2020-09-03T22:25:18Z aeth: (and yes the 90s are long enough ago that a very 90s architecture can be described with the adjective "traditionally") 2020-09-03T22:25:46Z aeth: (older approaches exist but pre-OpenGL/DirectX ones probably are actually slower, even when 2D) 2020-09-03T22:26:17Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-03T22:29:00Z aeth: Riastradh: Arguably, you'd probably be better off writing your own pure FP programming language around your own custom ECS than implementing an ECS in something like Haskell directly. 2020-09-03T22:29:31Z Riastradh: What makes you think Haskell can't express vector operation on arrays of single-floats? 2020-09-03T22:29:48Z aeth: I didn't say it can't do it, I said that it's not really Haskell's specialty. 2020-09-03T22:30:11Z badkins joined #scheme 2020-09-03T22:30:16Z aeth: i.e. You're fighting against the interesting features of the language to do things that aren't the focus of the language. 2020-09-03T22:31:37Z Riastradh: Are arrays of single-floats the `interesting features' of C++ and the `focus of the language'? 2020-09-03T22:32:59Z aeth: I mean, really, they'd seem more like the focus of something like Fortran than C++, but there is a large group of people who put a lot of effort in trying to make C++ a replacement to Fortran for numerical code, so it is a focus of the language (not really "the" focus, but arguably the main flaw of C++'s design is that there are too many cooks in the kitchen). 2020-09-03T22:33:28Z aeth: I think the main reason that engines use C++ instead of Fortran is probably better compatibility with libraries/middleware 2020-09-03T22:33:39Z Riastradh: I am puzzled why you are summarily dismissing Haskell but not C++ for this reason. 2020-09-03T22:34:20Z aeth: I just said that if you were to look at languages in a vacuum with no libraries, Fortran would seem like the ideal one for a game engine. 2020-09-03T22:34:25Z Riastradh: Maybe it's because C++ provides better means of abstraction to compose complex systems than Fortran does? 2020-09-03T22:34:33Z dmiles quit (Ping timeout: 260 seconds) 2020-09-03T22:34:46Z aeth: I think it's hard to argue that Haskell is closer to Fortran than C++ is, though. 2020-09-03T22:35:20Z aeth: But, yeah, numerical arrays aren't the only concern in a game engine, only a major one, and while that particular niche might be better served by Fortran than C++, other criteria might make C++ more suitable as a whole. 2020-09-03T22:35:57Z Riastradh: I suspect you'll find it's actually pretty easy to write Fortran in Haskell once you know where to look -- and you might even find there are substantial advantages to Haskell's means of abstraction. 2020-09-03T22:36:32Z DGASAU quit (Remote host closed the connection) 2020-09-03T22:36:49Z DGASAU` joined #scheme 2020-09-03T22:37:03Z Riastradh: (There are also _other_ reasons why Haskell may be more difficult to work with, but you seem to have summarily dismissed it without getting anywhere near those reasons.) 2020-09-03T22:37:32Z varbhat quit (Remote host closed the connection) 2020-09-03T22:38:04Z cchristiansen joined #scheme 2020-09-03T22:38:05Z aeth: I mean, I'm speaking from the somewhat related experience of writing a game engine in Common Lisp. Yes, it's more possible than you might think. No, it's not easy and as a whole C++ might be easier, and probably is easier if you mostly glue together preexisting FOSS libraries. 2020-09-03T22:38:37Z aeth: For one, if it's not the focus of the language, even if it's possible, you're probably on your own as far as libraries are concerned because the popular, idiomatic libraries probably won't be written to your constraints. 2020-09-03T22:40:17Z aeth: From what I've gathered, Schemes tend to be even harder for this because they usually force you to use (boxed!) doubles instead of providing single floats, among other issues. That and there's even fewer libraries available in this area. 2020-09-03T22:41:06Z aeth: Haskell is going to be easier in some respects (here, static typing helps) and harder in others (you're going to be fighting against the idimoatic expectations of laziness and purity) 2020-09-03T22:42:23Z aeth: Now, if you fight through this and accomplish it anyway, your code is probably safer, more elegant, and more maintainable with C++ with fewer chances of things like e.g. severe memory bugs, but it'll certainly take longer than the equivalent in C++ because you're mostly on your own. 2020-09-03T22:43:04Z badkins quit (Remote host closed the connection) 2020-09-03T22:43:36Z Riastradh: yes, you'll have to search real hard to find vector arithmetic libraries in Haskell... https://wiki.haskell.org/Numeric_Haskell:_A_Vector_Tutorial 2020-09-03T22:43:38Z Zipheir: aeth: You can absolutely have mutable vectors of floats (not sure about precision or implementation) in Haskell. Mutation is just mediated by the IO type. 2020-09-03T22:43:38Z hugh_marera quit (Quit: hugh_marera) 2020-09-03T22:43:44Z DGASAU` quit (Remote host closed the connection) 2020-09-03T22:43:48Z badkins joined #scheme 2020-09-03T22:43:57Z DGASAU`` joined #scheme 2020-09-03T22:44:02Z aeth: Oh, and again, from my own experience, you can get away with more pure FP than you think in a game engine, even if your core data structures are mutable. 2020-09-03T22:44:30Z aeth: Essentially, pure functions reading from and then setting into mutable data structures. 2020-09-03T22:45:03Z Zipheir: aeth: Or you can just use linear update forms, in Scheme. 2020-09-03T22:45:26Z aeth: Riastradh: I haven't tried it in Haskell (yet), but in my own experience, there's a lot of disappointment and doing things from scratch because things don't quite fit the constraints, or because they don't get a lot of attention because it's not a core focus of the language. 2020-09-03T22:45:40Z Riastradh: Why do you think it will be `from scratch'? 2020-09-03T22:45:58Z Riastradh: Vectorized operations on single-float arrays are no more `the focus' of C++ than they are of Haskell. 2020-09-03T22:46:13Z Riastradh: You are much too quick to write tools off as unusable without even looking at them! 2020-09-03T22:46:20Z aeth: Yes, yes they are more a focus of C++ than Haskell. 2020-09-03T22:46:45Z aeth: As I said, a large number of very capable people for whatever reason want to rewrite Fortran into C++. 2020-09-03T22:47:02Z aeth: Your library options are probably more mature and more used. 2020-09-03T22:47:55Z aeth: e.g. There are several (maybe more than that) BLAS implementations in C++ 2020-09-03T22:48:31Z badkins quit (Ping timeout: 258 seconds) 2020-09-03T22:49:50Z aeth: Iirc, CL has two (or so) BLASes, but they're not really usable in production. I'd be shocked if Scheme's situation was any better. Haskell's blas results on hackage seem to be bindings except for perhaps this. https://hackage.haskell.org/package/hmatrix 2020-09-03T22:49:57Z Riastradh: Let me put it this way... A few years ago I met someone who was being paid a large sum of money (six or seven figures annually, I think) by a major movie studio _not_ to write a rendering engine in Haskell for fun, because it would ruin their competitive advantage. Whatever preconceived notion you've invented of how hard it is to work with single-float arrays is not getting in the way of people doing 2020-09-03T22:50:03Z Riastradh: this kind of thing. 2020-09-03T22:51:29Z aeth: Riastradh: I am speaking from the perspective of someone using open source libraries and writing open source libraries. Sure, some companies can, like dragons, hoard a secret wealth to themselves, but it doesn't help someone who wants to write something today. 2020-09-03T22:52:21Z Riastradh: I'm not talking about what the movie studio can do on their unlimited budget with an army of engineers. I'm talking about what _one_ person can do using the free software tooling with some clever ideas about how to organize the abstractions. 2020-09-03T22:52:31Z aeth: Riastradh: I suspect that Haskell's advantage, if it has one, in your particular example is due to being heavily parallelized, which isn't really a thing on consumer hardware (which gamedevs target), but it might be "soon" with recent developments by AMD 2020-09-03T22:53:10Z Riastradh: I think you're making things up that sound good in your head to justify not exploring them in reality. 2020-09-03T22:53:27Z aeth: Have you written a game engine? 2020-09-03T22:55:53Z aeth: You could probably (but not necessarily! and that big unknown represents risk!) write an amazing game engine in Haskell, but it'd probably take 10 years unless someone was paying you to work on it full time. This is an example where C++ probably could be done faster because you'd mostly just be gluing together preexisting libraries rather than doing more novel work. 2020-09-03T22:55:57Z Riastradh: No -- it's not the kind of thing I'm into doing. But I have actually explored what Haskell is capable of, and the reasons you're giving for summarily writing off Haskell make no sense and suggest to me that you've come to a conclusion about it without even trying to look into it. 2020-09-03T22:56:20Z aeth: I'm not writing Haskell off. 2020-09-03T22:57:17Z Riastradh: You said Haskell isn't even supposed to be in the domain of game engines? You said `you'd probably be better off writing your own pure FP programming language around your own custom ECS than implementing na ECS in something like Haskell directly'? 2020-09-03T22:58:16Z aeth: Yes. It would probably be faster to write a programming language and a game engine simultaneously, where the programming language is suited specifically for the game engine, than it would be to write a game engine in Haskell. This is mainly because no matter what it would probably take a very long time, and eventually the benefits for writing a language specifically suited to your task would probably pay off. 2020-09-03T22:58:56Z Riastradh: I think you're underestimating the ease with which you can build the programming language you want in Haskell as a DSL. 2020-09-03T22:59:13Z aeth: Lisps are the same and my statement holds for them, too. 2020-09-03T23:00:14Z Riastradh: Suit yourself, but I say you're doing yourself a disservice by writing Haskell off like this and assuming it's just the same as Lisp here. 2020-09-03T23:05:36Z bitmapper: the way you write them is completely different, so trying to apply the same tactic to each won't work 2020-09-03T23:06:59Z badkins joined #scheme 2020-09-03T23:07:37Z moldybits quit (Quit: WeeChat 2.4) 2020-09-03T23:07:48Z bitmapper: aeth: also there is already work on this 2020-09-03T23:07:58Z bitmapper: tim sweeney is pretty heavily invested in languages like haskell 2020-09-03T23:12:53Z aeth: lol 2020-09-03T23:13:06Z aeth: Unreal Engine isn't going to be rewritten in Haskell 2020-09-03T23:14:22Z dTal: I do not think that, in the general case, it is faster to design and write a language in which to implement your engine than simply picking a powerful high level language you're familiar with and getting on with it. 2020-09-03T23:14:51Z aeth: dTal: I think most people underestimate how much work goes into a game engine. 2020-09-03T23:15:39Z dTal: Well, the obvious ripost is "don't underestimate how much work goes into a language" :) 2020-09-03T23:16:30Z aeth: dTal: As a Scheme implementer and a game engine programmer, I can say... probably 1-3 orders of magnitude more work in a game engine than a programming language. 2020-09-03T23:17:45Z dTal: Any programming language, or a good one? Perhaps you're excellent at language design, but I'm certainly not 2020-09-03T23:17:45Z aeth: Of course, I'm not sure if a custom programming language would give you enough time savings to justify it, but it definitely would be worth a shot, especially if someone wanted an FP game engine. 2020-09-03T23:18:50Z aeth: dTal: One of the issues is exactly the "design" factor. You're far more on your own for game engine design than for programming language design. The latter group is far more open about their methods. 2020-09-03T23:19:32Z aeth: Now make a *FP* game engine in a field that's almost entirely stateful C++ stuff that's far removed from FP, and you'll probably wind up doing so much design work you could get a PhD on it :-p 2020-09-03T23:19:56Z hugh_marera joined #scheme 2020-09-03T23:21:06Z badkins quit 2020-09-03T23:21:37Z Riastradh: If you are concerned that `stateful C++ stuff' is hard to express in Haskell, it is clear that you haven't actually tried to seriously engage with Haskell, and you're not going to be taken seriously. (But you can still do architecture astronomy from an armchair on your own if you like.) 2020-09-03T23:23:26Z bitmapper: aeth: really? would you like to see a presentation by tim sweeney himself in regards to that 2020-09-03T23:23:56Z aeth: Riastradh: I'm not sure why you think that writing a modern 3D game engine in a FP language (in general) would *not* be full of very novel work. 2020-09-03T23:24:06Z aeth: Possible? Probably. Easy? No. 2020-09-03T23:24:11Z bitmapper: it would not 2020-09-03T23:24:19Z aeth: My point is that you probably wouldn't just want to translate stateful C++ stuff. 2020-09-03T23:24:29Z aeth: That's why people sell books on pure FP data structures, after all. 2020-09-03T23:24:33Z bitmapper: i mean, you can represent state fairly easily 2020-09-03T23:24:34Z bitmapper: without state 2020-09-03T23:25:21Z bitmapper: again, you may be correct 2020-09-03T23:25:29Z bitmapper: but stating that without trying it is meaningless 2020-09-03T23:25:48Z bitmapper: there's already stuff like this 2020-09-03T23:25:48Z bitmapper: http://lambdacube3d.com 2020-09-03T23:26:28Z hugh_marera quit (Quit: hugh_marera) 2020-09-03T23:27:10Z Riastradh: aeth: All I'm saying is that you're very quick to invent justifications for writing of Haskell when it is abundantly clear that you've never bothered to engage with it. 2020-09-03T23:27:14Z Riastradh: writing off 2020-09-03T23:27:46Z aeth: Riastradh: I think you're reading more into what I'm saying than what I'm saying. 2020-09-03T23:28:32Z bitmapper: yeah, to be fair 2020-09-03T23:28:45Z bitmapper: a lot of the code is original stuff 2020-09-03T23:28:59Z bitmapper: converting it between paradigms would be a rather large undertaking 2020-09-03T23:29:00Z Riastradh: Why are you continuing to argue about how hard you think using Haskell would be? You could say, `huh, I never thought of that, I will go investigate' but you seem keen to insist on sharing opinions about how this is not Haskell's focus. 2020-09-03T23:29:09Z aeth: And even saying what I'm saying, at least it's possible. A 3D game engine in pure CPython or (whatever they call the main implementation of) Ruby might actually be impossible due to the slow speed of the language. 2020-09-03T23:30:05Z bitmapper: however, implementing a game engine in haskell would be no harder than implementing one in C++, and would most likely be easier 2020-09-03T23:30:18Z raingloom joined #scheme 2020-09-03T23:30:19Z bitmapper: but rewriting code is harder than it seems 2020-09-03T23:30:28Z aeth: bitmapper: Depends on if you allow libraries or not. If you allow libraries, then C++ is almost certainly much easier, but if you do not, then heh, good luck with C++ 2020-09-03T23:30:42Z bitmapper: even with libraries 2020-09-03T23:31:14Z aeth: No, C++ has enough libraries in this domain that you can just glue together enough of them and call it an engine. 2020-09-03T23:31:25Z aeth: But unfortunately, FFIing into C++ is hard 2020-09-03T23:31:58Z bitmapper: gluing code together is not making a game engine, is it though 2020-09-03T23:32:11Z bitmapper: it's like saying following ikea instructions is making something 2020-09-03T23:32:24Z aeth: I mean, that 2020-09-03T23:32:26Z bitmapper: well, making something bigger than an ikea chair 2020-09-03T23:32:47Z aeth: that's a very Lisper menality, not liking gluing together code, but most programming is probably gluing together other people's code 2020-09-03T23:33:08Z bitmapper: haha yeah 2020-09-03T23:33:35Z bitmapper: i usually have little things i do for fun where i write useful programs without using the standard library/builtins 2020-09-03T23:36:25Z aeth: Riastradh: I think I'm not communicating very well, or at least I keep being misunderstood. As I said to bitmapper, the biggest issue is probably that your library selection in this domain is very reduced compared to C++ so you are going to have to reinvent quite a bit... especially if you want to minimize your C FFI. 2020-09-03T23:37:42Z aeth: I don't think it's a controversial claim that requires much establishing that in the domain of game engine development, C++ has quite a few libraries available to it, and if you exclude both C and C++, you exclude almost the entirety of gamedev libraries. 2020-09-03T23:38:00Z payph0ne quit (Remote host closed the connection) 2020-09-03T23:38:22Z aeth: That being said, nearly every language will have bindings into SDL2 and OpenGL at the very least, which is enough to start from, but you'll still find yourself reinventing quite a bit. 2020-09-03T23:39:19Z bitmapper: haskell has that lambdacube32 thing up there 2020-09-03T23:39:21Z bitmapper: *3d 2020-09-03T23:40:21Z payph0ne joined #scheme 2020-09-03T23:44:18Z aeth: bitmapper: That is pretty impressive, but unfortunately, it's OpenGL 3.3, which is 10 years old as far as graphics APIs go. That's above OpenGL 3.2, which is sort of considered the minimum version for "modern" OpenGL, but it's still quite limited. OpenGL 4.3 is what you need for compute shaders, but the tradeoff is that OpenGL 4.3 means you can't support macOS. 2020-09-03T23:44:59Z gmaggior quit (Quit: Leaving) 2020-09-03T23:45:51Z aeth: bitmapper: So if you were to make a 3D game engine in Haskell, you'd have to find an alternative, write an alternative, or fork that library and update it to OpenGL 4.3+ (or even Vulkan) 2020-09-03T23:47:07Z bitmapper: aeth: lambdacube3d is backend agnostic 2020-09-03T23:49:09Z aeth: bitmapper: Yes, but if the only apparent backend is OpenGL 3.3, then you'd have to, yourself, implement any new feature added to GLSL in the past 10 years since the release of OpenGL 3.3, including compute shaders (4.3+), tessellation shaders (4.0+), etc. Unless for some reason they implemented those even though they cannot, by default, use those. 2020-09-03T23:53:05Z aeth: There are, of course, other new features other than the entirely new types of shaders. 2020-09-04T00:08:18Z aeth: I also wonder if SPIR-V and Vulkan is a better choice for custom shader languages than (presumably) compiling to GLSL. 2020-09-04T00:09:44Z deesix quit (Ping timeout: 265 seconds) 2020-09-04T00:09:52Z deesix joined #scheme 2020-09-04T00:17:25Z autumn[m]: bitmapper: if someone asked me i'd say i'd like to see the presentation (but i'm just a self-admitted amateurish, although fascinated, onlooker) 2020-09-04T00:17:39Z bitmapper: sure, let me dig it up 2020-09-04T00:18:24Z autumn[m]: thanks very kindly! 2020-09-04T00:18:52Z bitmapper: https://groups.csail.mit.edu/cag/crg/papers/sweeney06games.pdf 2020-09-04T00:21:52Z aeth: bitmapper: oh that, that's really old and I remember reading it a long time ago 2020-09-04T00:22:23Z bitmapper: yeah, he still holds the same opinions today from conversations i've had with people who know him 2020-09-04T00:23:40Z aeth: that looks like "what can we copy from Haskell?" not "UE4 is going to be written in Haskell" although idk if further context changes his intent 2020-09-04T00:24:03Z aeth: (yes, it's so old that UE4 was the next UE at the time) 2020-09-04T00:25:21Z bitmapper: i also know he worked on a haskell compiler 2020-09-04T00:25:31Z aeth: interesting 2020-09-04T00:27:53Z bitmapper: also did work on dependent types 2020-09-04T00:28:56Z aeth: was he working on his own Haskell compiler for game engine dev? 2020-09-04T00:29:10Z aeth: And does it count as "writing your own language first" if it's just an implementation rather than a new language? 2020-09-04T00:31:51Z bitmapper: aeth: i mean https://dl.acm.org/doi/abs/10.1145/2502409.2502412 2020-09-04T00:41:09Z dbmikus quit (Ping timeout: 265 seconds) 2020-09-04T00:56:36Z payph0ne quit (Remote host closed the connection) 2020-09-04T00:57:40Z dbmikus joined #scheme 2020-09-04T01:02:12Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-04T01:19:23Z aeth quit (Ping timeout: 240 seconds) 2020-09-04T01:21:34Z aeth joined #scheme 2020-09-04T01:29:13Z dbmikus joined #scheme 2020-09-04T01:33:52Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-04T01:52:14Z keep_learning joined #scheme 2020-09-04T02:30:47Z ArneBab_ quit (Ping timeout: 260 seconds) 2020-09-04T02:31:51Z ArneBab joined #scheme 2020-09-04T02:31:51Z ArneBab quit (Changing host) 2020-09-04T02:31:51Z ArneBab joined #scheme 2020-09-04T02:40:32Z raingloom quit (Ping timeout: 265 seconds) 2020-09-04T02:46:46Z ArneBab quit (Remote host closed the connection) 2020-09-04T02:48:00Z ArneBab joined #scheme 2020-09-04T03:54:08Z phillbush joined #scheme 2020-09-04T03:59:21Z phillbush: Hi, I'm new to scheme. Is there any procedure that, given a number n and a procedure proc, it returns a list of size n whose each element is an application of the procedure? 2020-09-04T04:01:45Z Zipheir: phillbush: Sure, list-tabulate. 2020-09-04T04:01:49Z Zipheir: More generally, unfold. 2020-09-04T04:02:58Z Zipheir: phillbush: They're in SRFI 1, but they're easy to implement yourself: https://srfi.schemers.org/srfi-1/srfi-1.html 2020-09-04T04:03:46Z phillbush: Zipheir: thanks. 2020-09-04T04:04:42Z Zipheir: phillbush: yw. The real question is what you want to apply PROC to to generate the list. 2020-09-04T04:04:50Z phillbush: I'm learning scheme with SICP, and the book doesn't talk about unfold or list-tabulate. 2020-09-04T04:05:22Z Zipheir: phillbush: No, unfortunately not. 2020-09-04T04:05:37Z phillbush: For example, (proc 4 random 2) would generate '(0 1 0 0), that is, a four-sized list where each element is random applied to 2. 2020-09-04T04:06:10Z aeth: SRFI 1 dates to 1999-10-09 so SICP predates it (and all SRFIs). Even the second edition is 1996. 2020-09-04T04:06:42Z aeth: I'm not sure what you had portably in 1996. Maybe just slib? https://people.csail.mit.edu/jaffer/SLIB 2020-09-04T04:07:15Z Zipheir: phillbush: In that case, since you don't need any arguments at all, you can write (list-tabulate 4 (lambda (_) (random 2))) 2020-09-04T04:07:56Z ArneBab quit (Remote host closed the connection) 2020-09-04T04:08:34Z phillbush: My interpreter does not have this procedure, I'll implement it myself. Thanks! 2020-09-04T04:08:36Z Zipheir: aeth: IIRC Backus discussed something like an unfold in his 1978 lecture, and SICP does include several unfold variants. 2020-09-04T04:08:52Z Zipheir: phillbush: Which Scheme? 2020-09-04T04:09:14Z ArneBab joined #scheme 2020-09-04T04:09:45Z phillbush: chicken 2020-09-04T04:09:53Z Zipheir: phillbush: (import (srfi 1)) 2020-09-04T04:10:13Z phillbush: But I'm using racket for the SICP exercises. 2020-09-04T04:10:45Z phillbush quit (Remote host closed the connection) 2020-09-04T04:11:07Z phillbush joined #scheme 2020-09-04T04:11:32Z Zipheir: phillbush: In that case, (require srfi/1) 2020-09-04T04:11:57Z phillbush: Zipheir: Oh, thanks. 2020-09-04T04:12:15Z Zipheir: SRFI 1 is Scheme holy writ. It is, in a sense, more standard than the last two Scheme standards :) 2020-09-04T04:13:03Z madage quit (Ping timeout: 240 seconds) 2020-09-04T04:13:35Z aeth: Zipheir: SRFI 1? Don't you mean (scheme list) i.e. the most important component of R7RS-large? :-P 2020-09-04T04:14:34Z daviid` joined #scheme 2020-09-04T04:14:50Z aeth: (depending on your Scheme, you might already be able to say (scheme list) instead of (srfi 1)) 2020-09-04T04:14:53Z Zipheir: aeth: Of course. 2020-09-04T04:16:25Z daviid quit (Ping timeout: 264 seconds) 2020-09-04T04:17:45Z Zipheir: aeth: Neither Racket nor CHICKEN, yet, sadly. 2020-09-04T04:20:37Z phillbush: Is (random N) something that all scheme implementations have? 2020-09-04T04:22:01Z phillbush: SICP lists it as a primitive procedure. 2020-09-04T04:22:06Z Zipheir: phillbush: No. CHICKEN has basically phased it out. 2020-09-04T04:23:05Z Zipheir: phillbush: You can always check a Scheme standard to see what's available. The R7RS is here: https://github.com/johnwcowan/r7rs-spec/blob/errata/spec/r7rs.pdf 2020-09-04T04:23:35Z phillbush: Zipheir: thanks, I'll do it 2020-09-04T04:26:12Z madage joined #scheme 2020-09-04T04:26:25Z Zipheir: SICP treats `random' as a primitive because it would take to long to explain how to implement a PRNG. 2020-09-04T04:31:10Z lockywolf: phillbush, you can grab (random) from a reference solution :) 2020-09-04T04:31:33Z gravicappa joined #scheme 2020-09-04T04:32:01Z lockywolf: in fact, x = i * A + B , where A and B are large primes, should be sufficiently random for SICP 2020-09-04T04:36:55Z phillbush quit (Quit: Leaving) 2020-09-04T04:41:13Z lockywolf: Or you can (read-bytevector) from /dev/urandom 2020-09-04T04:50:13Z phillbush joined #scheme 2020-09-04T05:03:14Z mdhughes: In practice almost every impl has a random, it's just in their non-standard library. (import (chezscheme)), etc. 2020-09-04T05:03:41Z mdhughes: Or https://srfi.schemers.org/srfi-27/srfi-27.html 2020-09-04T05:06:03Z torbo quit (Remote host closed the connection) 2020-09-04T05:06:06Z phillbush: Is there any book that deals with system interface for scheme, like opening files, parsing command-line options, writing to files, etc? 2020-09-04T05:07:32Z mdhughes: TSPL covers it somewhat, but mostly you're gonna be paging thru impl docs (Chez Scheme User's Guide has much more than TSPL, for instance) 2020-09-04T05:07:53Z mdhughes: And HTDP for Racket has some, but it's not an advanced text. 2020-09-04T05:11:07Z phillbush: mdhughes: thanks 2020-09-04T05:13:36Z ArneBab quit (Remote host closed the connection) 2020-09-04T05:14:50Z ArneBab joined #scheme 2020-09-04T05:14:50Z ArneBab quit (Changing host) 2020-09-04T05:14:50Z ArneBab joined #scheme 2020-09-04T05:21:36Z Zipheir: phillbush: There's a fairly bare-bones set of system procedures in the standard. 2020-09-04T05:22:03Z Zipheir: phillbush: This is an area where many Scheme differ, but most provide ways pretty similar of doing those things. 2020-09-04T05:23:38Z Zipheir: phillbush: display, write, read, etc. all take port arguments which can do file I/O via with-output-to-file/with-input-from-file. 2020-09-04T05:26:03Z Zipheir: Sorry, call-with-{input, output}-file. 2020-09-04T05:26:58Z phillbush: I'm gonna check it out. This is the first time I'm going out of SICP to do something that needs system procedures. 2020-09-04T05:27:43Z Zipheir: phillbush: Cool. Feel free to ask any questions here. 2020-09-04T05:30:02Z jobol joined #scheme 2020-09-04T05:30:48Z phillbush quit (Remote host closed the connection) 2020-09-04T05:43:18Z seepel quit (Ping timeout: 260 seconds) 2020-09-04T06:24:13Z loja joined #scheme 2020-09-04T06:37:54Z dmiles joined #scheme 2020-09-04T06:51:42Z klovett quit (Remote host closed the connection) 2020-09-04T06:52:20Z klovett joined #scheme 2020-09-04T07:07:39Z arew: Friendly greetings schemers! 2020-09-04T07:08:09Z arew: Friendly reminder to keep it low today to have more energy this week-end to hack on scheme! 2020-09-04T07:16:30Z gioyik quit (Quit: WeeChat 2.9) 2020-09-04T07:27:51Z cgay quit (Quit: Connection closed for inactivity) 2020-09-04T07:36:44Z ggole joined #scheme 2020-09-04T07:44:25Z pounce quit (Ping timeout: 240 seconds) 2020-09-04T07:48:56Z pounce joined #scheme 2020-09-04T07:51:25Z retropikzel joined #scheme 2020-09-04T07:53:01Z arew quit (Quit: WeeChat 2.8) 2020-09-04T07:55:43Z civodul joined #scheme 2020-09-04T07:59:43Z tumdum joined #scheme 2020-09-04T07:59:43Z tumdum quit (Changing host) 2020-09-04T07:59:43Z tumdum joined #scheme 2020-09-04T08:00:12Z cpressey joined #scheme 2020-09-04T08:00:49Z tumdum quit (Client Quit) 2020-09-04T08:01:04Z tumdum joined #scheme 2020-09-04T08:01:05Z tumdum quit (Changing host) 2020-09-04T08:01:05Z tumdum joined #scheme 2020-09-04T08:08:16Z snan quit (Ping timeout: 256 seconds) 2020-09-04T08:09:55Z hendursa1 joined #scheme 2020-09-04T08:11:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-04T08:34:08Z amirouche joined #scheme 2020-09-04T08:53:32Z brendyyn joined #scheme 2020-09-04T09:10:46Z ArneBab quit (Read error: Connection reset by peer) 2020-09-04T09:12:02Z ArneBab joined #scheme 2020-09-04T09:12:03Z ArneBab quit (Changing host) 2020-09-04T09:12:03Z ArneBab joined #scheme 2020-09-04T09:18:34Z cchristiansen quit (Read error: Connection reset by peer) 2020-09-04T09:29:58Z edgar-rft joined #scheme 2020-09-04T09:33:17Z daviid` quit (Ping timeout: 258 seconds) 2020-09-04T09:41:08Z keep_learning quit (Quit: Leaving) 2020-09-04T09:46:32Z raingloom joined #scheme 2020-09-04T10:25:14Z raingloom_ joined #scheme 2020-09-04T10:25:30Z raingloom quit (Ping timeout: 265 seconds) 2020-09-04T10:33:31Z Blukunfando joined #scheme 2020-09-04T10:37:15Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-04T10:38:35Z moldybits joined #scheme 2020-09-04T11:10:45Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-04T11:12:57Z bitmapper quit (Ping timeout: 258 seconds) 2020-09-04T11:46:02Z lritter joined #scheme 2020-09-04T11:47:42Z phwalkr joined #scheme 2020-09-04T11:58:48Z cpressey quit (Quit: Lunch.) 2020-09-04T12:01:32Z civodul joined #scheme 2020-09-04T12:13:09Z skapata joined #scheme 2020-09-04T12:13:33Z skapata left #scheme 2020-09-04T12:21:53Z mbakke quit (Quit: killed) 2020-09-04T12:21:54Z Gnuxie[m] quit (Quit: killed) 2020-09-04T12:21:54Z even4void[m] quit (Quit: killed) 2020-09-04T12:21:55Z siraben quit (Quit: killed) 2020-09-04T12:21:56Z autumn[m] quit (Quit: killed) 2020-09-04T12:22:02Z Ericson2314 quit (Quit: killed) 2020-09-04T12:27:18Z userself joined #scheme 2020-09-04T12:36:02Z Gnuxie[m] joined #scheme 2020-09-04T12:36:02Z mbakke joined #scheme 2020-09-04T12:36:02Z even4void[m] joined #scheme 2020-09-04T12:36:02Z autumn[m] joined #scheme 2020-09-04T12:36:02Z Ericson2314 joined #scheme 2020-09-04T12:36:02Z siraben joined #scheme 2020-09-04T12:37:28Z hendursa1 quit (Quit: hendursa1) 2020-09-04T12:37:48Z hendursaga joined #scheme 2020-09-04T12:57:53Z ft quit (Ping timeout: 260 seconds) 2020-09-04T12:57:59Z phwalkr_ joined #scheme 2020-09-04T12:58:26Z ArneBab quit (Remote host closed the connection) 2020-09-04T12:59:16Z klovett quit (Remote host closed the connection) 2020-09-04T12:59:31Z klovett joined #scheme 2020-09-04T12:59:39Z ArneBab joined #scheme 2020-09-04T13:00:55Z phwalkr quit (Ping timeout: 240 seconds) 2020-09-04T13:04:51Z cpressey joined #scheme 2020-09-04T13:07:04Z ft joined #scheme 2020-09-04T13:15:00Z corpix joined #scheme 2020-09-04T13:23:02Z DGASAU`` quit (Remote host closed the connection) 2020-09-04T13:32:18Z phwalkr joined #scheme 2020-09-04T13:34:14Z phwalkr_ quit (Ping timeout: 246 seconds) 2020-09-04T13:44:44Z DGASAU joined #scheme 2020-09-04T13:49:15Z emacsomancer quit (Quit: WeeChat 2.8) 2020-09-04T13:52:36Z ArneBab quit (Remote host closed the connection) 2020-09-04T13:53:53Z ArneBab joined #scheme 2020-09-04T13:54:05Z skapata joined #scheme 2020-09-04T13:54:07Z emacsomancer joined #scheme 2020-09-04T14:05:17Z terpri quit (Ping timeout: 244 seconds) 2020-09-04T14:06:19Z terpri joined #scheme 2020-09-04T14:07:16Z ArneBab quit (Remote host closed the connection) 2020-09-04T14:08:34Z ArneBab joined #scheme 2020-09-04T14:18:10Z skapata left #scheme 2020-09-04T14:49:41Z userself left #scheme 2020-09-04T15:03:56Z ArneBab quit (Remote host closed the connection) 2020-09-04T15:05:13Z ArneBab joined #scheme 2020-09-04T15:05:14Z ArneBab quit (Changing host) 2020-09-04T15:05:14Z ArneBab joined #scheme 2020-09-04T15:10:05Z raingloom_ quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) 2020-09-04T15:18:56Z tumdum quit (Remote host closed the connection) 2020-09-04T15:19:14Z tumdum joined #scheme 2020-09-04T15:19:14Z tumdum quit (Changing host) 2020-09-04T15:19:14Z tumdum joined #scheme 2020-09-04T15:26:14Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-04T15:32:49Z payph0ne joined #scheme 2020-09-04T15:35:55Z aeth quit (Ping timeout: 258 seconds) 2020-09-04T15:37:50Z aeth joined #scheme 2020-09-04T15:58:06Z retropikzel_ joined #scheme 2020-09-04T15:59:06Z hugh_marera joined #scheme 2020-09-04T16:03:32Z amirouche quit (Quit: WeeChat 2.8) 2020-09-04T16:03:41Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-04T16:12:37Z daviid` joined #scheme 2020-09-04T16:13:36Z ArneBab quit (Remote host closed the connection) 2020-09-04T16:14:50Z ArneBab joined #scheme 2020-09-04T16:17:31Z dbmikus joined #scheme 2020-09-04T16:17:55Z ArneBab quit (Excess Flood) 2020-09-04T16:18:20Z ArneBab joined #scheme 2020-09-04T16:19:14Z Zipheir quit (Ping timeout: 258 seconds) 2020-09-04T16:21:11Z Zipheir joined #scheme 2020-09-04T16:28:55Z theseb joined #scheme 2020-09-04T16:32:26Z hugh_marera quit (Quit: hugh_marera) 2020-09-04T16:35:17Z hugh_marera joined #scheme 2020-09-04T16:40:43Z webshinra joined #scheme 2020-09-04T16:40:59Z bitmapper joined #scheme 2020-09-04T16:59:03Z daviid` quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-04T17:03:30Z payph0ne quit (Remote host closed the connection) 2020-09-04T17:06:09Z daviid joined #scheme 2020-09-04T17:06:41Z deesix_ joined #scheme 2020-09-04T17:09:30Z deesix quit (Ping timeout: 256 seconds) 2020-09-04T17:13:25Z deesix_ quit (Ping timeout: 264 seconds) 2020-09-04T17:15:48Z payph0ne joined #scheme 2020-09-04T17:16:50Z deesix joined #scheme 2020-09-04T17:18:23Z zjgkkn joined #scheme 2020-09-04T17:24:35Z raingloom joined #scheme 2020-09-04T17:29:52Z raingloom quit (Ping timeout: 265 seconds) 2020-09-04T17:31:08Z moldybits quit (Quit: WeeChat 2.4) 2020-09-04T17:32:21Z raingloom joined #scheme 2020-09-04T18:05:37Z raingloom quit (Ping timeout: 264 seconds) 2020-09-04T18:05:53Z raingloom joined #scheme 2020-09-04T18:12:02Z bars0 joined #scheme 2020-09-04T18:20:37Z theseb quit (Quit: Leaving) 2020-09-04T18:32:10Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-04T18:34:25Z gravicappa joined #scheme 2020-09-04T18:42:02Z muelleme joined #scheme 2020-09-04T18:50:56Z zjgkkn quit (Remote host closed the connection) 2020-09-04T18:54:30Z midre quit (Ping timeout: 256 seconds) 2020-09-04T18:57:12Z midre joined #scheme 2020-09-04T19:07:46Z jobol quit (Quit: Leaving) 2020-09-04T19:16:03Z bars0 quit (Quit: leaving) 2020-09-04T19:23:40Z payph0ne quit (Remote host closed the connection) 2020-09-04T19:25:28Z payph0ne joined #scheme 2020-09-04T19:34:36Z arew joined #scheme 2020-09-04T20:02:33Z lritter quit (Ping timeout: 260 seconds) 2020-09-04T20:03:24Z edgar-rft quit (Quit: Leaving) 2020-09-04T20:08:55Z lritter joined #scheme 2020-09-04T20:11:58Z retropikzel__ joined #scheme 2020-09-04T20:14:05Z retropikzel_ quit (Ping timeout: 240 seconds) 2020-09-04T20:14:12Z retropikzel quit (Ping timeout: 265 seconds) 2020-09-04T20:14:43Z retropikzel joined #scheme 2020-09-04T20:18:30Z seepel joined #scheme 2020-09-04T20:27:03Z dbohdan left #scheme 2020-09-04T20:35:03Z seepel quit (Read error: Connection reset by peer) 2020-09-04T20:37:56Z seepel joined #scheme 2020-09-04T21:04:16Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-04T21:23:15Z ggole quit (Quit: Leaving) 2020-09-04T21:25:04Z phwalkr quit 2020-09-04T21:27:05Z cgay joined #scheme 2020-09-04T21:41:32Z seepel quit (Remote host closed the connection) 2020-09-04T21:41:47Z seepel joined #scheme 2020-09-04T21:44:21Z payph0ne quit (Remote host closed the connection) 2020-09-04T21:54:07Z hugh_marera quit (Quit: hugh_marera) 2020-09-04T22:16:22Z torbo joined #scheme 2020-09-04T22:16:34Z muelleme quit (Ping timeout: 256 seconds) 2020-09-04T22:19:48Z payph0ne joined #scheme 2020-09-04T22:29:10Z terpri_ joined #scheme 2020-09-04T22:30:06Z terpri quit (Read error: Connection reset by peer) 2020-09-04T22:46:41Z evdubs quit (Quit: Leaving) 2020-09-04T22:50:28Z evdubs joined #scheme 2020-09-04T23:14:46Z Blukunfando quit (Ping timeout: 258 seconds) 2020-09-04T23:18:33Z raingloom quit (Ping timeout: 260 seconds) 2020-09-04T23:21:45Z lritter quit (Quit: Leaving) 2020-09-05T00:14:18Z klovett quit (Remote host closed the connection) 2020-09-05T00:14:57Z klovett joined #scheme 2020-09-05T00:15:08Z torbo quit (Remote host closed the connection) 2020-09-05T00:44:58Z payph0ne quit (Remote host closed the connection) 2020-09-05T01:05:42Z edgar-rft joined #scheme 2020-09-05T01:27:59Z klovett quit (Remote host closed the connection) 2020-09-05T01:28:14Z klovett joined #scheme 2020-09-05T01:30:12Z cgay quit (Quit: Connection closed for inactivity) 2020-09-05T01:38:04Z seepel quit (Read error: Connection reset by peer) 2020-09-05T01:39:08Z sm2n joined #scheme 2020-09-05T01:51:16Z terpri_ quit (Remote host closed the connection) 2020-09-05T01:51:38Z terpri_ joined #scheme 2020-09-05T01:53:46Z fjt joined #scheme 2020-09-05T01:56:01Z fjt quit (Remote host closed the connection) 2020-09-05T02:16:36Z edgar-rft quit (Quit: Leaving) 2020-09-05T02:30:12Z seepel joined #scheme 2020-09-05T02:31:08Z phillbush joined #scheme 2020-09-05T02:34:26Z turbofail quit (Quit: ERC (IRC client for Emacs 27.0.50)) 2020-09-05T02:35:17Z phillbush: Hello, I want to parse a string like "2d10+3" into a list '(dice 2 10 3), what is the best way to parse a string and decompose its syntatical elements into a list? 2020-09-05T02:35:27Z phillbush: Is there a procedure that can help me in doing this? 2020-09-05T02:37:09Z phillbush: I'm trying to convert into scheme a dice-roller program I've written in C. 2020-09-05T02:37:17Z turbofail joined #scheme 2020-09-05T02:41:46Z terpri_ quit (Remote host closed the connection) 2020-09-05T02:42:08Z terpri_ joined #scheme 2020-09-05T02:59:50Z loja left #scheme 2020-09-05T03:06:51Z retropikzel__ quit (Remote host closed the connection) 2020-09-05T03:25:42Z Zipheir: phillbush: You need a parser, which is probably not going to be a single ready-made procedure. 2020-09-05T03:28:16Z terpri_ quit (Read error: Connection reset by peer) 2020-09-05T03:28:25Z Zipheir: phillbush: A simple way to do this is to just use the S-exp form which you gave. Then you can just call (read). 2020-09-05T03:28:37Z terpri_ joined #scheme 2020-09-05T04:11:24Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-05T04:26:36Z phillbush quit (Remote host closed the connection) 2020-09-05T04:30:37Z seepel quit (Read error: Connection reset by peer) 2020-09-05T05:23:24Z brendyyn joined #scheme 2020-09-05T05:26:21Z gravicappa joined #scheme 2020-09-05T05:50:42Z muelleme joined #scheme 2020-09-05T05:56:08Z muelleme quit (Ping timeout: 256 seconds) 2020-09-05T06:01:03Z gmaggior joined #scheme 2020-09-05T06:24:34Z klovett quit (Remote host closed the connection) 2020-09-05T06:25:08Z klovett joined #scheme 2020-09-05T06:26:26Z terpri_ quit (Read error: Connection reset by peer) 2020-09-05T06:26:32Z terpri joined #scheme 2020-09-05T06:52:42Z muelleme joined #scheme 2020-09-05T06:54:07Z seepel joined #scheme 2020-09-05T06:54:08Z ArneBab quit (Ping timeout: 260 seconds) 2020-09-05T06:54:25Z ArneBab joined #scheme 2020-09-05T06:54:26Z ArneBab quit (Changing host) 2020-09-05T06:54:26Z ArneBab joined #scheme 2020-09-05T06:57:20Z muelleme quit (Ping timeout: 256 seconds) 2020-09-05T07:13:45Z rain1: racket-peg 2020-09-05T07:46:05Z seepel quit (Ping timeout: 240 seconds) 2020-09-05T07:53:27Z muelleme joined #scheme 2020-09-05T07:57:45Z muelleme quit (Ping timeout: 240 seconds) 2020-09-05T08:03:04Z terpri_ joined #scheme 2020-09-05T08:03:25Z terpri quit (Ping timeout: 240 seconds) 2020-09-05T08:10:22Z hendursa1 joined #scheme 2020-09-05T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-05T08:26:23Z bars0 joined #scheme 2020-09-05T08:38:18Z retropikzel_ joined #scheme 2020-09-05T08:54:10Z muelleme joined #scheme 2020-09-05T08:59:10Z muelleme quit (Ping timeout: 256 seconds) 2020-09-05T09:13:42Z mdhughes: If you have irregex, just use a normal regular expression: (\d+)d\(\d+)([+-]\d+)? 2020-09-05T09:15:55Z mdhughes: http://synthcode.com/scheme/irregex/ 2020-09-05T09:16:39Z bars0 quit (Quit: leaving) 2020-09-05T09:19:09Z mdhughes: rudybot tell phillbush If you have irregex, just use a normal regular expression: (\d+)d\(\d+)([+-]\d+)? 2020-09-05T09:19:38Z mdhughes: How do you get rudybot to do that again? 2020-09-05T09:21:39Z mdhughes: I read the help, got it. 2020-09-05T09:51:30Z hugh_marera joined #scheme 2020-09-05T09:53:51Z edgar-rft joined #scheme 2020-09-05T09:54:56Z muelleme joined #scheme 2020-09-05T09:59:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-05T09:59:25Z daviid quit (Ping timeout: 240 seconds) 2020-09-05T10:19:37Z alelos joined #scheme 2020-09-05T10:33:31Z hugh_marera quit (Quit: hugh_marera) 2020-09-05T10:35:25Z OptimusMKD joined #scheme 2020-09-05T10:39:33Z gmaggior quit (Quit: Leaving) 2020-09-05T10:45:08Z alelos quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-05T10:46:22Z alelos joined #scheme 2020-09-05T10:55:41Z muelleme joined #scheme 2020-09-05T10:56:14Z alelos quit (Ping timeout: 260 seconds) 2020-09-05T10:58:34Z bitmapper quit (Ping timeout: 258 seconds) 2020-09-05T11:00:38Z muelleme quit (Ping timeout: 265 seconds) 2020-09-05T11:04:19Z raingloom joined #scheme 2020-09-05T11:06:04Z muelleme joined #scheme 2020-09-05T11:29:27Z ArneBab quit (Ping timeout: 260 seconds) 2020-09-05T11:29:49Z ArneBab joined #scheme 2020-09-05T11:49:19Z webshinra quit (Remote host closed the connection) 2020-09-05T11:55:24Z webshinra joined #scheme 2020-09-05T12:10:29Z ArneBab_ joined #scheme 2020-09-05T12:10:52Z ArneBab quit (Ping timeout: 260 seconds) 2020-09-05T12:15:49Z brendyyn quit (Ping timeout: 264 seconds) 2020-09-05T12:21:11Z Oddity__ quit (Remote host closed the connection) 2020-09-05T12:21:41Z Oddity__ joined #scheme 2020-09-05T12:53:21Z ArneBab_ quit (Remote host closed the connection) 2020-09-05T12:54:37Z ArneBab joined #scheme 2020-09-05T12:54:37Z ArneBab quit (Changing host) 2020-09-05T12:54:37Z ArneBab joined #scheme 2020-09-05T12:56:01Z muelleme quit (Ping timeout: 264 seconds) 2020-09-05T13:02:20Z muelleme joined #scheme 2020-09-05T13:10:49Z muelleme quit (Ping timeout: 258 seconds) 2020-09-05T13:29:14Z lritter joined #scheme 2020-09-05T13:39:37Z alelos joined #scheme 2020-09-05T13:41:00Z klovett quit (Remote host closed the connection) 2020-09-05T13:41:15Z klovett joined #scheme 2020-09-05T13:46:28Z hendursa1 quit (Quit: hendursa1) 2020-09-05T13:46:47Z hendursaga joined #scheme 2020-09-05T13:58:02Z alelos quit (Remote host closed the connection) 2020-09-05T13:58:19Z alelos joined #scheme 2020-09-05T14:09:52Z retropikzel_ quit (Quit: Leaving) 2020-09-05T14:18:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-05T14:56:17Z bitmapper joined #scheme 2020-09-05T14:59:47Z rain1: whats new in scheme land? 2020-09-05T15:00:49Z DKordic joined #scheme 2020-09-05T15:03:18Z daviid joined #scheme 2020-09-05T15:10:46Z wasamasa: everything old is new again 2020-09-05T15:13:58Z alelos quit (Ping timeout: 256 seconds) 2020-09-05T15:15:35Z Zipheir: rain1: Many, many SRFIs. 2020-09-05T15:15:46Z Riastradh: everything new is old again 2020-09-05T15:17:50Z rain1: do we actually need SRFIs 2020-09-05T15:17:56Z rain1: how about a uniform way to import SRFIs first 2020-09-05T15:18:32Z Riastradh: I remain puzzled by the purpose of a SRFI proliferation too. 2020-09-05T15:19:31Z rain1: i guess if its fun making them i wont try to stop anyone 2020-09-05T15:22:38Z wasamasa: r7rs-large ain't gonna happen without srfis 2020-09-05T15:23:09Z Zipheir: rain1: I think people also want to contribute their work to the (or perhaps "a") Scheme community. 2020-09-05T15:23:40Z Riastradh: Why is SRFI a good medium for that? 2020-09-05T15:24:11Z Riastradh: Strikes me as if, I dunno, a formal proposal to the ISO standardization committee were a good way to publish software written in C. 2020-09-05T15:25:12Z rain1: One good contribution someone could do would be HTMLizing R7RS 2020-09-05T15:28:18Z Zipheir: rain1: Thanks for volunteering :) 2020-09-05T15:42:18Z arew: :D 2020-09-05T15:44:56Z arew: what about an emoji srfi?... 2020-09-05T15:45:12Z arew: it is all that is missing to r7rs-large 2020-09-05T15:55:05Z Zipheir: arew: Still interested in contributing to the Scheme wikibook? 2020-09-05T15:56:18Z raingloom quit (Ping timeout: 256 seconds) 2020-09-05T15:57:27Z arew: Zipheir: yes 2020-09-05T16:00:22Z ggole joined #scheme 2020-09-05T16:00:25Z skapata joined #scheme 2020-09-05T16:00:38Z skapata left #scheme 2020-09-05T16:00:45Z Zipheir: arew: The introduction needs work, especially the "why learn Scheme?" material. 2020-09-05T16:05:06Z hendursaga joined #scheme 2020-09-05T16:05:56Z Zipheir: arew: I'm uncertain as to how much programming knowledge to assume in the "beginning scheme" section. Assuming *no* knowledge means a lot of work, and many books already cover basic concepts of functional programming pretty well. 2020-09-05T16:07:43Z gmaggior joined #scheme 2020-09-05T16:08:32Z arew: we can aim for "with prior knowledge of programming" to get the book started. 2020-09-05T16:09:02Z arew: it seems easier 2020-09-05T16:09:46Z arew: well, the book already has content. 2020-09-05T16:10:29Z Zipheir: arew: The issue with that is there are plenty of people with programming experience who find recursion or mathematical examples scary. So it's a certain kind of programming experience, I guess. 2020-09-05T16:12:58Z Zipheir: (As Richard Bird says in the introduction to one of his books, "If you are perpetually running away from the Mordor of mathematics, this is not for you.") 2020-09-05T16:14:01Z ArneBab quit (Remote host closed the connection) 2020-09-05T16:15:17Z ArneBab joined #scheme 2020-09-05T16:15:17Z ArneBab quit (Changing host) 2020-09-05T16:15:17Z ArneBab joined #scheme 2020-09-05T16:20:41Z ArneBab quit (Remote host closed the connection) 2020-09-05T16:21:58Z ArneBab joined #scheme 2020-09-05T16:23:39Z arew: we have srfi-203 (aka. picture language) 2020-09-05T16:24:11Z Zipheir: arew: It's pretty exclusively for SICP readers. 2020-09-05T16:25:54Z arew: I mean we can make use of it to explain some concepts 2020-09-05T16:26:59Z arew: a lot of people I know that are getting started with webdev do not have a math degree or even expertise 2020-09-05T16:27:00Z Zipheir: arew: Not really. It provides just enough to write the SICP examples on top. 2020-09-05T16:28:54Z Zipheir: arew: Nothing that I've added to the Scheme wikibook assumes any kind of advanced mathematical knowledge, but I do try to provide formal descriptions of Scheme concepts. 2020-09-05T16:31:16Z Zipheir: arew: Obviously not every programmer has a mathematical background, but I think it's very, very unfortunate that there are programmers who claim to hate mathematics. 2020-09-05T16:32:56Z arew: I agree. 2020-09-05T16:33:07Z arew: my new collegue was a lawyer. 2020-09-05T16:42:30Z rain1: thats an amazing idea,' jsut a huge list of symbols for each emoji 2020-09-05T16:43:59Z Zipheir: When I hear about "no-math" programming curricula, I think of that line of Djikstra's, "So we want to deny students the best available tool for talking about things precisely?" 2020-09-05T16:44:47Z arew: +1 2020-09-05T16:45:04Z arew: I mean I agree with the idea.. 2020-09-05T16:45:25Z arew: maybe math can be retrofit into the curriculum after learn programming? 2020-09-05T16:46:35Z bitmapper: Zipheir: assume none, and ask them to disregard any comparisons they may make with things they do know 2020-09-05T16:48:15Z rain1: what scheme mailing lists should I follow? i am on scheme-persist which is good 2020-09-05T16:51:52Z arew: I follow all of them but rarely interact, also I follow lassyk on github 2020-09-05T16:52:01Z arew: I mean https://github.com/lassik/ 2020-09-05T16:52:20Z arew: I almost only follow scheme peopl on github 2020-09-05T16:56:29Z arew: Zipheir: I almost forgot that I started a book for arew scheme, I guess I can not let down the two people that already bought the book.. I can not contribute to wikibook. 2020-09-05T16:57:08Z arew: Also it seems to me, even if better is the enemy of good, an interactive book would be better, that is wikibook is not easy to get started. 2020-09-05T16:57:26Z arew: sorry.. 2020-09-05T16:57:43Z arew: I will work on scheme immutable datastructures at https://github.com/kevinwortman/Scheme-immutable-data-structures 2020-09-05T16:59:05Z mdhughes: I learned trig in BASIC and LOGO just fine at age 10-12, I think a pleasant graphics API is not "hard math". 2020-09-05T17:03:21Z ArneBab quit (Remote host closed the connection) 2020-09-05T17:04:38Z ArneBab joined #scheme 2020-09-05T17:09:01Z ArneBab quit (Remote host closed the connection) 2020-09-05T17:10:18Z ArneBab joined #scheme 2020-09-05T17:10:18Z ArneBab quit (Changing host) 2020-09-05T17:10:18Z ArneBab joined #scheme 2020-09-05T17:12:49Z jcowan: arew: Once a lawyer, always a lawyer. Indeed, after the first year of law school, always a lawyer. 2020-09-05T17:13:24Z hugh_marera joined #scheme 2020-09-05T17:13:45Z jcowan: I don't hate mathematics, it's just that it does not love me as I love it. For me, programming is a formal verbal discipline like poetry. 2020-09-05T17:31:22Z brown121407 joined #scheme 2020-09-05T17:39:32Z Blukunfando joined #scheme 2020-09-05T17:39:35Z arew: there is more discipline in programming that poetry, especially free form poetry. 2020-09-05T17:39:45Z arew: but still I like the comparison. 2020-09-05T17:40:38Z tumdum quit (Remote host closed the connection) 2020-09-05T17:41:04Z tumdum joined #scheme 2020-09-05T17:44:02Z arew: or even mezangelle :] 2020-09-05T17:55:42Z Tirifto joined #scheme 2020-09-05T18:01:05Z retropikzel quit (Ping timeout: 240 seconds) 2020-09-05T18:06:09Z hendursa1 joined #scheme 2020-09-05T18:06:23Z madage quit (Ping timeout: 240 seconds) 2020-09-05T18:09:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-05T18:10:26Z retropikzel joined #scheme 2020-09-05T18:20:48Z gravicappa quit (Read error: Connection reset by peer) 2020-09-05T18:22:39Z retropikzel_ joined #scheme 2020-09-05T18:25:22Z retropikzel quit (Ping timeout: 260 seconds) 2020-09-05T18:28:08Z brown121407 quit (Remote host closed the connection) 2020-09-05T18:29:11Z gravicappa joined #scheme 2020-09-05T18:30:59Z brown121407 joined #scheme 2020-09-05T18:31:57Z brown121407 quit (Remote host closed the connection) 2020-09-05T18:32:14Z brown121407 joined #scheme 2020-09-05T18:59:20Z deesix quit (Ping timeout: 256 seconds) 2020-09-05T19:40:11Z ArneBab quit (Remote host closed the connection) 2020-09-05T19:41:27Z ArneBab joined #scheme 2020-09-05T19:41:27Z ArneBab quit (Changing host) 2020-09-05T19:41:27Z ArneBab joined #scheme 2020-09-05T19:57:35Z aeth: Zipheir: The problem is that the friendliest introductions are ones with immediate graphical results, probably web-related or game-related, and I doubt either is portable. 2020-09-05T19:57:48Z aeth: Well, there might be a static HTML generator that's portable, that's way easier. 2020-09-05T20:05:28Z arew: aeth: I found a threadripper 64 cores for 7k! 2020-09-05T20:05:41Z arew: the whole thing with ram and graphical card 2020-09-05T20:06:05Z Zipheir: aeth: Friendliest, perhaps, but not best, IMHO. 2020-09-05T20:06:40Z aeth: arew: great 2020-09-05T20:07:16Z aeth: Zipheir: if it's about maintaining interest rather than being the most efficient route, then you probably never could've beaten games, now, or in the past. I mean, even in like 1940, it was probably more interesting to program a computer to play chess than do other things 2020-09-05T20:07:17Z lritter quit (Ping timeout: 265 seconds) 2020-09-05T20:08:56Z Zipheir: aeth: A gaming intro to programming is fine (LOL does a pretty good job). Gaming intros which rely on fancy engines to do everything, though, tend to teach how to use that system, not general computational ideas. 2020-09-05T20:09:03Z aeth: Zipheir: of course, you can have a CLI game... text adventures are overdone, but you could do something like Cookie Clicker without the clicking since the whole point of that game is that you automate the research acquisition and so everything except the very start of clickers could be automated. 2020-09-05T20:09:44Z aeth: Zipheir: If you have a dependency, then still... the good thing about 2D is that you can write 2D in the "wrong" way and it'll still run on computers that are 1000x (or more) faster than they need to be for the task 2020-09-05T20:10:04Z aeth: 3D? yeah, that's still specialized knowledge and now you're just teaching the APIs 2020-09-05T20:12:25Z aeth: s/research acquisition/resource acquisition/ 2020-09-05T20:12:30Z aeth: But, it's also the research, too, iirc. 2020-09-05T20:12:51Z lritter joined #scheme 2020-09-05T20:13:37Z Tirifto quit (Quit: Leaving.) 2020-09-05T20:14:05Z Zipheir: aeth: Maintaining interest is fine, but at some point learning how to reason formally about algorithms and structures is critical. 2020-09-05T20:14:11Z aeth: But I don't think there's a portable interface into SDL2 (or something similar) and OpenGL, so some high level 2D wrapper over that is off limits for teaching Scheme until such a thing exists. 2020-09-05T20:14:56Z aeth: Zipheir: The good thing about games is that people want to do more than they're capable of doing, and they'll quickly realize they need good algorithms and data structures in order to get the necessary performance due to the real-time nature. So you could use it as further motivation, too. 2020-09-05T20:14:57Z Zipheir: aeth: There are lots of fun intros to physical science out there, but most people understand that you'll have to do some heavy-lifting to really dig into it. 2020-09-05T20:16:30Z Zipheir: aeth: Perhaps. Or perhaps they just hack and hack until it's "fast enough" and can't explain what happened. 2020-09-05T20:16:49Z Zipheir: Hmm, I can't imagine that there are game programmers who do that... 2020-09-05T20:16:50Z wasamasa: and that's kids is why games keep staying inefficient and terrible 2020-09-05T20:17:36Z wasamasa: it amazes me every time how something with graphics barely above a SNES performs worse than a SNES emulator 2020-09-05T20:17:54Z wasamasa: because game maker 2020-09-05T20:20:38Z deesix joined #scheme 2020-09-05T20:21:18Z aeth: Zipheir: I mean, the point of a game is to be fun, so a lot of games, especially ones that aren't intended to be maintained in the long run (so, proportionally, fewer every year), are very messy 2020-09-05T20:21:37Z mdhughes: There's multiple high-level APIs over SDL2, like cairo, or Racket's GUI. They aren't as fast, but they work for doing things like BASIC did. 2020-09-05T20:22:15Z mdhughes: The devotion some people have to "only 1950s teletypes exist!" is baffling to me. 2020-09-05T20:22:32Z mdhughes: We've had graphics since the late '50s. Maybe catch up. 2020-09-05T20:22:59Z Zipheir: aeth: Understood. But of course that same quality is what makes them rather bad models for learning programming. 2020-09-05T20:23:00Z aeth: Zipheir: In a sense, the reason we all use something other than Ada shows that we all sit somewhere in the middle of the reliability/maintenance vs. speed-of-writing-it scale. 2020-09-05T20:23:52Z aeth: Zipheir: but don't underestimate the number of people who got into programming because of games (maybe even mdhughes if you count "BASIC and LOGO") who then moved into other things 2020-09-05T20:24:15Z Zipheir: aeth: Speed of writing has nothing to do with anything. The reason to use Lisp over Ada, say, is the expressiveness, not the conciseness, of the language, IMHO. 2020-09-05T20:24:28Z Zipheir: aeth: True. 2020-09-05T20:24:30Z aeth: mdhughes: yes, but an introduction to Scheme would need a portable Scheme graphics API 2020-09-05T20:24:31Z mdhughes: A kid writing a badly-designed game can grow up into an adult writing efficient algorithms, as well as larger projects, with nice UIs. 2020-09-05T20:24:40Z aeth: mdhughes: and agreed 2020-09-05T20:25:32Z mdhughes: aeth: cairo really should run on almost any Scheme, with a little effort. Or just point people at the impls that have good APIs already. 2020-09-05T20:25:53Z Zipheir: There's something of a massive gulf between programming educating and computer science education. 2020-09-05T20:26:17Z Zipheir: Hence Kernighan's joke when asked the difference: "A computer scientist knows what an exponential is." 2020-09-05T20:26:29Z Zipheir: s/educating/education/ 2020-09-05T20:26:55Z aeth: I wouldn't be surprised if most people who started programming under 20 probably did it to make games and then found something else that was interesting along the way. And, sure, maybe 1 in 10000 was a math prodigy who learned programming to do symbolic differentiation or find a bunch of digits of pi or something. But even that prodigy probably was writing a chess engine instead. 2020-09-05T20:27:01Z mdhughes: I knew what exp did from using BASIC long, long before I got there in math or comp sci classes. 2020-09-05T20:28:01Z aeth: Zipheir: Speed of writing vs. ease of writing still exists within the Scheme world, e.g. Typed Racket. 2020-09-05T20:28:10Z aeth: or sorry 2020-09-05T20:28:14Z aeth: s/ease/reliability/ 2020-09-05T20:29:23Z aeth: Zipheir: Generally, you either need full unit test coverage or you need to catch it at the language level, and most people do neither, skipping most unit tests so they can write their code faster. 2020-09-05T20:29:43Z aeth: (And in between the two options, there are linters) 2020-09-05T20:30:30Z aeth: A dynamically typed language lets you say, "nope, I'm not going to test it, I'm just going to write it and see what happens" and a lot of the time that's the right answer since you're probably going to scrap everything you wrote and start over. 2020-09-05T20:32:22Z mdhughes: Depends on the language. Python & Ruby users are very test-driven, because the language makes testing easy; Python even has pydoc, which is amazingly easy. Perlists, probably not. 2020-09-05T20:33:01Z mdhughes: Judging from the state of the portable testing frameworks, only Chicken and Racket care about testing in Scheme. 2020-09-05T20:33:03Z aeth: Perhaps that's the real reason Perl got the reputation as a "write-only language", not the superficial syntax. 2020-09-05T20:33:40Z aeth: Lisps tend to not have a lot of tests or documentation because Lisp projects are usually hobbyist projects and tests/documentations are the most chore-like parts of any project 2020-09-05T20:33:51Z mdhughes: At 'zon when we had to write some Perl for services, there were no unit tests, only integration/module tests running a request thru the whole thing, then you'd debug where it crashed. 2020-09-05T20:34:36Z mdhughes: And sometimes it just crashed because the servers were going down every 100 requests, so that was fun. 2020-09-05T20:35:07Z mdhughes: So anyway, that's why I wrote my scheme-test-runner. 2020-09-05T20:38:51Z retropikzel_ quit (Quit: Leaving) 2020-09-05T20:39:49Z gravicappa quit (Ping timeout: 264 seconds) 2020-09-05T20:49:44Z Zipheir: mdhughes: "I knew what exp did from using BASIC long, long before ..." Good point. Given how confusing formal math education can be, a young person can often make sense of mathematical ideas more quickly through programming. (Anecdotally speaking) 2020-09-05T20:51:16Z Zipheir: (My unpleasant experience with OOP at age 12 did get me thinking about instantiation, which helped with understanding Plato not too long after. So that's one benefit of learning OOP--it will make idealist philosophy a bit easier to grasp, maybe.) 2020-09-05T20:53:18Z aeth: Zipheir: how much did you understand of programming at 12? 2020-09-05T20:53:48Z aeth: My young experience with programming languages (Lua, Perl, PHP, maybe a few others) was almost like treating them as if they were configuration files. 2020-09-05T20:54:30Z Zipheir: aeth: I actually taught myself VisualBasic, which was pretty fun, and had a lot of fun writing CLI games in C-like C++. But then I tried to learn 3D stuff and realized my grasp of the language was terrible. 2020-09-05T20:55:19Z aeth: way more advanced, then 2020-09-05T20:55:47Z aeth: the furthest I probably got when I was really young was AoE II's scripting mechanism of triggers and events in its scenario editor. 2020-09-05T20:56:05Z hugh_marera quit (Quit: hugh_marera) 2020-09-05T20:56:08Z Zipheir: aeth: Oh, that was an immensely fun program. 2020-09-05T20:56:44Z autumn[m]: I seem to remember interacting with C/C++/Python when I was really small. Not knowing how to make anything 'real', though. 2020-09-05T20:57:06Z autumn[m]: Well, maybe... idk. 2020-09-05T20:57:19Z autumn[m]: I had a few books on things. 2020-09-05T20:57:21Z aeth: My only experience with C++ was trying to make a GUI thing in Visual Studio iirc. I must've been around 11 or 12. I didn't like it. 2020-09-05T20:57:30Z aeth: Probably some default template thing 2020-09-05T20:57:49Z Zipheir: autumn[m]: That's a huge barrier for people starting out with programming--"how do I go from hello-world to Chrome?" 2020-09-05T20:58:55Z Zipheir: aeth: Yeah. The learning curve is harsh for going directly to GUI-based things. 2020-09-05T21:00:36Z mdhughes: I learned to program at 9-10, and was what I'd call competent at 12, sold my first software shareware at 14. Kids don't have to be that dumb if they're given tools and books. 2020-09-05T21:00:47Z autumn[m]: I seem to remember wanting to make one of those interesting programs that could run when you pointed GRUB to it, but it never worked, haha. 2020-09-05T21:00:55Z autumn[m]: Or I never even got as far as trying. 2020-09-05T21:01:32Z autumn[m]: Ehh, I wouldn't call me 'competent' even now :P 2020-09-05T21:01:42Z mdhughes: A full GUI isn't easy, but a lot of GUI tools have a small subset. 2D games are massively easier; 3D's bullshit for AAA billion-dollar studios, nobody else should bother at first. 2020-09-05T21:02:57Z edgar-rft quit (Quit: Leaving) 2020-09-05T21:03:02Z Zipheir: autumn[m]: Usual one *remembers* being competent when everything is breaking. :) 2020-09-05T21:03:05Z mdhughes: My plan when I get to writing my "Basic Scheme" book, just do an appendix on setup of each "popular" Scheme with one basic graphics lib, like they did for BASIC back in the day. 2020-09-05T21:03:44Z mdhughes: Competent's a low bar, if you can make a new program that solves some problem, and it works eventually, you're above 50% of the corporate programmers I've known. 2020-09-05T21:04:12Z autumn[m]: Oh! I remember making like, a "button" library in this weird, really obscure, strange language that was very adjacent to assembly but not actually quite like assembly. 2020-09-05T21:04:18Z autumn[m]: And a few other things. 2020-09-05T21:05:04Z mdhughes: Welp, AFK time for me. Back when the sky stops radiating. 2020-09-05T21:05:04Z autumn[m]: It had graphics support but it only ran on Windows and when something I'd made crashed, I had to staaaare at the source and try to guess why. 2020-09-05T21:05:10Z autumn[m]: Eep 2020-09-05T21:05:30Z Zipheir: autumn[m]: That sounds fun, and infuriating. 2020-09-05T21:05:52Z Zipheir: autumn[m]: Do you remember what it was called? 2020-09-05T21:06:03Z autumn[m]: Also I like the idea of telling people how to set up a basic graphics library. 2020-09-05T21:06:10Z autumn[m]: Zipheir: L.in.oleum 2020-09-05T21:06:59Z Zipheir: aeth: Also, I really did not mean to put on airs with the "adventures of a 12 year old programmer" nonsense. I truly wish I'd been able to learn much earlier and had done more. 2020-09-05T21:07:44Z aeth: I was making decently impressive game mods by 16 or so, just not really involving programming, mostly involving maps 2020-09-05T21:08:13Z aeth: This is probably why I can't get behind the whole map generation thing that most programmers in gamedev love. I can make maps well. 2020-09-05T21:08:29Z ggole quit (Quit: Leaving) 2020-09-05T21:08:58Z Zipheir: autumn[m]: There's a stub wikibook for it https://en.wikibooks.org/wiki/Linoleum 2020-09-05T21:08:59Z autumn[m]: Yeah, I don't remember how old I was but I mostly remember what I couldn't figure out how to do or just had no real idea how to approach. :P 2020-09-05T21:09:15Z aeth: 2D or 2Dish maps, of course. 3D requires a lot more effort and while I did try to use Gtkradiant, I never really made anything with it. 2020-09-05T21:09:16Z autumn[m]: (Even if I still don't have an idea how to approach some of it, like 3D geometry stuff) 2020-09-05T21:09:18Z autumn[m]: Oh neat 2020-09-05T21:09:36Z Zipheir: Hah, "Low-level INterfaced OverLanguage for Extremely Universal Machine-coding" 2020-09-05T21:09:47Z aeth: If I had tried a bit harder I probably could've made some idtech 3 maps in Gtkradiant, though. I was almost there. 2020-09-05T21:11:12Z Zipheir: aeth: Nice, map-making is a lot of fun. I never got very good at it in AoE or Heros 3, both of which had nice map editors. 2020-09-05T21:11:46Z autumn[m]: I don't know that said language actually lives up to its claims but I had fun with it. 2020-09-05T21:12:49Z Zipheir: autumn[m]: It looks fun. Unfortunately, it doesn't seem to be active: http://anynowhere.com/bb/posts.php?f=15&t=408&p= 2020-09-05T21:14:43Z autumn[m]: yeah it isnt 2020-09-05T21:19:11Z aeth: Zipheir: Map-making for multiplayer is great fun ime. You just do a really basic outline, adjust it after every game, and add detail as the design gets more concrete. 2020-09-05T21:19:30Z aeth: So it's basically an excuse to do a development cycle that's 50% playing your own game. 2020-09-05T21:19:52Z aeth: (Well, after a while, you just want to observe others...) 2020-09-05T21:21:10Z aeth: Programming is pretty minimal, though, because you usually only want to script a few things, although depending on the game you can get really carried away, possibly in Lua. 2020-09-05T22:11:11Z raingloom joined #scheme 2020-09-05T22:16:20Z aeth: You probably could get a basic square-or-hex grid 2D system going in portable Scheme. 2020-09-05T22:19:54Z Zipheir: aeth: Easy. 2020-09-05T22:26:01Z aeth: I mean, it really could be little more than a map editor. That can be a game in itself, e.g. early Minecraft. 2020-09-05T22:35:34Z lritter quit (Quit: Leaving) 2020-09-05T22:36:55Z klovett quit (Remote host closed the connection) 2020-09-05T22:37:35Z klovett joined #scheme 2020-09-05T22:40:23Z jcowan: I wrote three games in Basic and then I got bored with writing games. Then I played another game, an offshoot of ADVENT, and I had to rewrite parts of it, basically just the config file. Then I played a lot of Minesweeper and then I gave up on games altogether. But it is still fair to say my first serious program was a game. 2020-09-05T22:42:04Z aeth: jcowan: ime, multiplayer is a lot more rewarding than single player because you actually get feedback of watching (at least a handful of) people play the game. 2020-09-05T22:42:22Z aeth: So maybe it was good for the sake of Scheme that there weren't many multiplayer games around back then. I guess MUDs? 2020-09-05T22:42:30Z jcowan: It wasn't practical then, unless you were at a university that had Arpanet access. 2020-09-05T22:42:54Z jcowan: MUDs, yes. ADVENT is basically a single-player MUD after all. 2020-09-05T22:43:35Z aeth: MUDs and early MMORPGs sound so much more interesting than the modern equivalents. The possibilities were way more open. 2020-09-05T22:43:42Z jcowan: but MUDs are concurrent; they don't require actual parallelism. 2020-09-05T22:43:54Z aeth: A handful of people on IRC are working on similar projects, and they're pretty interesting because they tend to be about systems. Sort of like roguelikes. 2020-09-05T22:44:04Z jcowan nods 2020-09-05T22:44:15Z jcowan: I did play some rogue too, but never to very deep levels. 2020-09-05T22:44:46Z aeth: My situation was similar, but with the slightly newer nethack. I don't think I ever got past the 2nd or 3rd level of nethack. Not very far. 2020-09-05T22:45:08Z aeth: It has been a long time, but the status effects really get you if you're not prepared iirc. 2020-09-05T22:52:00Z aeth: jcowan: what do you mean that MUDs are concurrent? 2020-09-05T22:53:13Z jcowan: I mean I don't have to play at the same time as you to interact with you: in MUD time, players who are offline are staying put and taking no actions, but their possessions are protected. 2020-09-05T22:57:59Z klovett quit (Remote host closed the connection) 2020-09-05T22:58:14Z klovett joined #scheme 2020-09-05T23:02:16Z aeth: jcowan: is there enough for a MUD in portable Scheme yet? Or, I guess that would need the green docket? 2020-09-05T23:05:04Z Zipheir: Muddy Green subdocket. 2020-09-05T23:09:15Z aeth: Zipheir: it depends on the green docket, but I'm pretty sure jcowan would put a MUD under the indigo docket. "stuff of dubious utility" 2020-09-05T23:09:49Z aeth: (of those, tagbody looks like the most useful... at least if you're translating stuff into Scheme) 2020-09-05T23:11:37Z aeth: various potential add-ons to the SchemeMUD could go under the ultraviolet docket 2020-09-05T23:13:32Z aeth: (currently invisible) 2020-09-05T23:13:40Z aeth: https://github.com/johnwcowan/r7rs-work/blob/master/ColorDockets.md 2020-09-05T23:14:44Z cgay joined #scheme 2020-09-05T23:33:24Z jcowan: There is no ultravioet docket, but the ultraviolet edition will be the final one. 2020-09-05T23:34:03Z jcowan: I guess it depends on what counts as part of the MUD. Most MUDs I know about run on Telnet ports, so the program itself just needs access to its own terminal. 2020-09-05T23:34:51Z jcowan: The other thing would be access to shared storage of some sort, which in principle could be just the file system with advisory locking such as dotfiles. All that could be done now. 2020-09-05T23:34:57Z aeth: It's almost as ancient, but IRC probably would be a better way to run a classic-style MUD these days. Any useful state can probably be serialized over IRC. 2020-09-05T23:38:38Z dmiles quit (Ping timeout: 260 seconds) 2020-09-05T23:39:52Z autumn[m]: like with an irc bot? 2020-09-05T23:41:53Z Zipheir: autumn[m]: A DM-bot is a fun idea for a project. 2020-09-05T23:42:04Z Zipheir: rudybot: So we all meet in a tavern? 2020-09-05T23:42:16Z rudybot: Zipheir: Duffy's Tavern, Archie speaking, Duffy ain't here! 2020-09-05T23:43:49Z Zipheir: autumn[m]: But of course you probably meant something more like a bot-as-MUD-serve model. 2020-09-05T23:43:56Z Zipheir: s/serve/server/ 2020-09-05T23:44:37Z dmiles joined #scheme 2020-09-05T23:48:20Z epony quit (Remote host closed the connection) 2020-09-05T23:48:56Z epony joined #scheme 2020-09-05T23:52:54Z brendyyn joined #scheme 2020-09-05T23:58:12Z aeth: I was thinking of an entire separate ircd, but Freenode does host at least two IRC games... #idlerpg and ##werewolf (you might have heard of the Mafia variant of Werewolf instead... it's kind of 50/50 which you have encountered before, if you have) 2020-09-05T23:58:53Z aeth: #schemerpg Quest of the Missing Parentheses? 2020-09-06T00:04:45Z Zipheir: (with-output-to-npc "big ugly bandit" burning-hands) 2020-09-06T00:14:17Z aeth: I think we could do it 2020-09-06T00:14:42Z aeth: assuming Freenode's rules permit it, we could limit the combat rounds to the pace bots are allowed to go 2020-09-06T00:25:11Z marusich joined #scheme 2020-09-06T00:29:59Z aeth: s/Quest of the Missing Parentheses/Quest for the Lost Parentheses/ 2020-09-06T00:32:43Z gmaggior quit (Quit: Leaving) 2020-09-06T00:33:28Z aeth: If you unite the left parenthesis and the right parenthesis, legends have that you have unlimited power. 2020-09-06T00:33:52Z aeth: s/legends have/legends are/ 2020-09-06T00:44:09Z jcowan: But perhaps only in a more civilized age than this. 2020-09-06T00:53:40Z brendyyn: yes but that unlimited power contains unlimited energy which quickly collapses in to a black hole, hence '() = null 2020-09-06T01:10:22Z aeth: brendyyn: right, the spoiler is that '() is just null/nil 2020-09-06T01:10:26Z Zipheir: aeth: Is #lispgames still active? I used to lurk, but the discussion was mainly CL-related, IIRC. I wonder if there are many Scheme game programmers active. 2020-09-06T01:11:13Z aeth: Scheme (Guile) is mostly just represented by davexunit, who hasn't been around much lately 2020-09-06T01:11:45Z aeth: It hasn't been that active recently. It's still one of the largest gamedev channels on Freenode, though. 2020-09-06T01:11:50Z Zipheir: Yes, I'm familiar with his work. 2020-09-06T01:11:59Z aeth: It looks like #gamedev is slightly larger than #lispgames again 2020-09-06T01:11:59Z Zipheir: Wow. 2020-09-06T01:12:03Z aeth: 99 vs 90 2020-09-06T01:12:37Z aeth: #godotengine is 244, though, so it's probably just because gamedev in general isn't as useful as engine-specific stuff 2020-09-06T01:14:32Z aeth: Zipheir: there was one other Schemer, Chicken Scheme iirc, but I think they only visited back during one of the early Lisp game jams 2020-09-06T01:16:24Z Zipheir: aeth: Thanks. Maybe it's time to start lurking again. 2020-09-06T01:16:52Z aeth: most of the activity has been around borodust's CL trivial-gamekit. https://borodust.org/projects/trivial-gamekit/ 2020-09-06T01:17:04Z jcowan: I think #lispgames was *meant* to divert gamers off #lisp, i.e. Common Lisp. 2020-09-06T01:17:06Z Zipheir: Yeah, I remember checking that out. 2020-09-06T01:17:09Z aeth: One of the CL engine authors never goes there, another two teamed up on another engine that has its own channel 2020-09-06T01:17:13Z jcowan: even if there is charter requirement 2020-09-06T01:17:30Z aeth: jcowan: it's not #lisp-games, it's #lispgames and isn't affiliated with #lisp and uses the ##lisp definition 2020-09-06T01:17:46Z aeth: I think it's just that most gamedev tends to happen in CL... since CL tends to be more focused on that sort of thing 2020-09-06T01:17:52Z jcowan nods 2020-09-06T01:17:57Z jcowan: Thanks. 2020-09-06T01:18:15Z aeth: Numerical sort of things, I mean. 2020-09-06T01:18:53Z aeth: iirc, davexunit had to do some work on (or feature requests with?) Guile... around float unboxing or something 2020-09-06T01:21:05Z raingloom quit (Ping timeout: 240 seconds) 2020-09-06T01:21:53Z raingloom joined #scheme 2020-09-06T01:31:01Z aeth: Schemes tend to be a bit rougher of an experience around this sort of thing. 2020-09-06T01:31:49Z aeth: (Purely an implementation thing, though. Nothing semantically stops them from having an SBCL of Schemes afaik.) 2020-09-06T01:32:17Z Riastradh: everything is technically possible with a Sufficiently Smart Compiler 2020-09-06T01:32:28Z aeth: Or a sufficiently lazy compiler 2020-09-06T01:32:48Z aeth: Since SBCL does most of the work you want, you can just compile a Scheme to SBCL and get a bunch of numerical-focused features for "free" 2020-09-06T01:34:19Z Riastradh: ...with enough type annotations you would have to pass through your intermediate Scheme->CL compiler... 2020-09-06T01:34:30Z aeth: Yes and no 2020-09-06T01:35:23Z aeth: Efficient SBCL essentially lives and dies on type declarations... although it also has pretty powerful inference that could be added back from its CMUCL heritage, e.g. this (but only one file, not multifile yet) https://mstmetent.blogspot.com/2020/02/block-compilation-fresh-in-sbcl-202.html 2020-09-06T01:35:57Z aeth: While a Scheme->CL compiler doesn't have to be restricted by the same semantics as standard CL. 2020-09-06T01:36:39Z aeth: e.g. it could do whole-program type inference that becomes type declarations to the host SBCL 2020-09-06T01:36:54Z Riastradh: Yes...`it could do'. In principle everything is technically possible with a Sufficiently Smart Compiler. 2020-09-06T01:37:30Z aeth: but, no, you're right, you would have to do type declarations to pass through to CL in my case 2020-09-06T01:37:41Z aeth: Airship Scheme's taking long enough already, no need to delay it further 2020-09-06T01:38:25Z seepel joined #scheme 2020-09-06T01:40:32Z Zipheir: There's a joke in Greg Egan's very good Permutation City about dead wealthy people who are running as brain-scanned copies of themselves. To survive as long as possible, they use better and better compilers to optimize their programs--until a smart enough compiler decides these programs actually don't do anything. 2020-09-06T01:40:40Z Zipheir: (And thus generates no code.) 2020-09-06T01:42:08Z Zipheir: (Moral: Beware lest the Sufficiently Smart Compiler optimize you out of existence.) 2020-09-06T01:42:41Z Riastradh: I think a better moral is `beware narcissistic billionaires'. 2020-09-06T01:43:03Z Riastradh: They strike me as more of a realistic problem to have than Sufficiently Smart Compilers. 2020-09-06T01:43:04Z autumn[m]: pffffhahaha 2020-09-06T01:43:30Z Riastradh: If I could trade one for the other I know which one I'd pick. 2020-09-06T01:43:37Z Riastradh: Unfortunately we don't get our pick. 2020-09-06T01:43:51Z raingloom quit (Remote host closed the connection) 2020-09-06T01:44:17Z madage joined #scheme 2020-09-06T01:46:03Z Zipheir: Riastradh: Very uplifting :-p 2020-09-06T01:48:04Z raingloom joined #scheme 2020-09-06T02:04:15Z aeth: Riastradh: how would you write a sufficiently smart Scheme compiler if you had infinite time to write one? 2020-09-06T02:10:37Z jcowan: If he had infinite time to write one, he'd have infinite time to figure out how, so why ask him at the beginning of the project? 2020-09-06T02:10:47Z aeth: good point 2020-09-06T02:15:26Z aeth: although that's only if you're using Agile 2020-09-06T02:15:45Z aeth: if you're using waterfall and you spend an infinite amount of time designing, you'll never start coding, even if you have an infinite amount of time for it. 2020-09-06T02:25:34Z jcowan: Oh yes you will: aleph_0 + aleph_0 = aleph_0. 2020-09-06T02:26:10Z jcowan: but perhaps omega (ordinal infinity) is more appropriate here. 2020-09-06T02:26:24Z jcowan: in which case 2\omega != \omega 2020-09-06T02:26:44Z aeth: Consider design odd numbers and programming even numbers. With agile, you're going 1 2 3 4 5 6..., but with waterfall you're going 1 3 5 7 9 11 13 15 17 ... and you'll never finish the odds to go to the evens 2020-09-06T02:32:00Z aeth: I conclude my proof of agile being superior to waterfall when you have infinite time. 2020-09-06T02:35:01Z seepel quit (Ping timeout: 264 seconds) 2020-09-06T02:40:48Z raingloom quit (Ping timeout: 258 seconds) 2020-09-06T02:41:14Z raingloom joined #scheme 2020-09-06T02:59:34Z cgay quit (Quit: Connection closed for inactivity) 2020-09-06T03:10:21Z sbates quit (Ping timeout: 246 seconds) 2020-09-06T03:13:04Z sbates joined #scheme 2020-09-06T04:04:46Z terpri_ quit (Remote host closed the connection) 2020-09-06T04:05:09Z terpri_ joined #scheme 2020-09-06T04:14:11Z raingloom quit (Ping timeout: 240 seconds) 2020-09-06T04:26:04Z brown121407 quit (Remote host closed the connection) 2020-09-06T04:26:23Z brown121407 joined #scheme 2020-09-06T04:28:45Z gravicappa joined #scheme 2020-09-06T04:48:25Z [rg] joined #scheme 2020-09-06T04:48:34Z [rg]: what are macros in scheme? 2020-09-06T05:25:04Z [rg] quit (Ping timeout: 245 seconds) 2020-09-06T05:25:48Z aeth: a macro is a transformation of the source code that's represented in an intermediate format 2020-09-06T06:04:36Z aeth quit (Ping timeout: 256 seconds) 2020-09-06T06:06:13Z aeth joined #scheme 2020-09-06T06:17:00Z arew: + 2020-09-06T06:17:02Z arew: +1 2020-09-06T06:17:15Z marusich quit (Remote host closed the connection) 2020-09-06T06:48:56Z klovett quit (Remote host closed the connection) 2020-09-06T06:49:35Z klovett joined #scheme 2020-09-06T06:52:32Z gmaggior joined #scheme 2020-09-06T07:22:42Z ggole joined #scheme 2020-09-06T07:58:00Z klovett quit (Remote host closed the connection) 2020-09-06T07:58:19Z klovett joined #scheme 2020-09-06T08:07:07Z notzmv` joined #scheme 2020-09-06T08:08:11Z rain1 quit (Read error: Connection reset by peer) 2020-09-06T08:09:02Z dbmikus joined #scheme 2020-09-06T08:09:40Z rain1 joined #scheme 2020-09-06T08:10:01Z hendursaga joined #scheme 2020-09-06T08:10:05Z notzmv quit (Ping timeout: 240 seconds) 2020-09-06T08:11:43Z hendursa1 quit (Ping timeout: 240 seconds) 2020-09-06T08:44:27Z retropikzel joined #scheme 2020-09-06T08:50:15Z retropikzel_ joined #scheme 2020-09-06T08:51:02Z retropikzel quit (Remote host closed the connection) 2020-09-06T08:51:21Z retropikzel_ quit (Read error: Connection reset by peer) 2020-09-06T08:51:39Z retropikzel_ joined #scheme 2020-09-06T08:55:55Z edgar-rft joined #scheme 2020-09-06T09:04:03Z tryte quit (Ping timeout: 240 seconds) 2020-09-06T09:07:05Z retropikzel_ quit (Quit: Leaving) 2020-09-06T09:07:49Z tryte joined #scheme 2020-09-06T09:10:06Z brown121407 quit (Read error: Connection reset by peer) 2020-09-06T09:31:03Z raingloom joined #scheme 2020-09-06T09:36:46Z brown121407 joined #scheme 2020-09-06T09:36:52Z evdubs_ joined #scheme 2020-09-06T09:37:07Z evdubs quit (Ping timeout: 260 seconds) 2020-09-06T09:50:43Z evdubs_ is now known as evdubs 2020-09-06T09:52:25Z brown121407 quit (Ping timeout: 240 seconds) 2020-09-06T09:57:58Z brown121407 joined #scheme 2020-09-06T09:58:27Z brown121407 quit (Remote host closed the connection) 2020-09-06T10:26:08Z dTal quit (*.net *.split) 2020-09-06T10:26:08Z rich_ quit (*.net *.split) 2020-09-06T10:29:29Z madage quit (Read error: Connection reset by peer) 2020-09-06T10:29:44Z madage joined #scheme 2020-09-06T10:32:28Z dTal joined #scheme 2020-09-06T10:32:28Z rich_ joined #scheme 2020-09-06T10:32:46Z dTal quit (Max SendQ exceeded) 2020-09-06T10:32:56Z dTal joined #scheme 2020-09-06T11:03:56Z tryte_ joined #scheme 2020-09-06T11:04:43Z tryte quit (Ping timeout: 240 seconds) 2020-09-06T11:22:25Z daviid quit (Ping timeout: 264 seconds) 2020-09-06T11:42:35Z bitmapper quit (Ping timeout: 240 seconds) 2020-09-06T12:05:20Z sm2n quit (Quit: Leaving) 2020-09-06T12:06:55Z sm2n joined #scheme 2020-09-06T12:32:18Z lritter joined #scheme 2020-09-06T12:51:39Z gmaggior quit (Ping timeout: 265 seconds) 2020-09-06T13:04:20Z gmaggior joined #scheme 2020-09-06T13:10:07Z klovett_ joined #scheme 2020-09-06T13:10:07Z hugh_marera joined #scheme 2020-09-06T13:11:32Z notzmv` is now known as notzmv 2020-09-06T13:11:38Z notzmv quit (Changing host) 2020-09-06T13:11:38Z notzmv joined #scheme 2020-09-06T13:13:10Z klovett quit (Ping timeout: 256 seconds) 2020-09-06T13:14:15Z notzmv` joined #scheme 2020-09-06T13:15:29Z klovett_ quit (Remote host closed the connection) 2020-09-06T13:16:06Z klovett joined #scheme 2020-09-06T13:16:47Z notzmv is now known as Guest5375 2020-09-06T13:16:56Z notzmv` is now known as zmv 2020-09-06T13:17:05Z Guest5375 quit (Ping timeout: 240 seconds) 2020-09-06T13:17:05Z zmv quit (Changing host) 2020-09-06T13:17:05Z zmv joined #scheme 2020-09-06T13:17:07Z zmv is now known as notzmv` 2020-09-06T13:17:18Z notzmv` is now known as notzmv 2020-09-06T13:34:37Z gmaggior quit (Quit: Leaving) 2020-09-06T13:49:03Z notzmv` joined #scheme 2020-09-06T13:49:16Z notzmv quit (Ping timeout: 256 seconds) 2020-09-06T13:49:18Z notzmv` is now known as zmv 2020-09-06T13:49:36Z zmv quit (Changing host) 2020-09-06T13:49:36Z zmv joined #scheme 2020-09-06T13:54:18Z lavaflow quit (Quit: WeeChat 2.8) 2020-09-06T13:55:56Z lavaflow joined #scheme 2020-09-06T14:00:00Z nly joined #scheme 2020-09-06T14:00:08Z nly: how to alias a macro to another name? 2020-09-06T14:02:43Z hugh_marera quit (Quit: hugh_marera) 2020-09-06T14:07:28Z klovett quit (Remote host closed the connection) 2020-09-06T14:07:46Z klovett joined #scheme 2020-09-06T14:08:59Z klovett quit (Client Quit) 2020-09-06T14:11:20Z klovett joined #scheme 2020-09-06T14:11:22Z jcowan: nly: Somthing like (define-syntax bar (syntax-rules () ((bar . args) (foo . args)))), where foo is the existing macro. 2020-09-06T14:12:08Z nly: thanks 2020-09-06T14:40:39Z klovett_ joined #scheme 2020-09-06T14:44:14Z klovett quit (Ping timeout: 256 seconds) 2020-09-06T14:48:08Z hendursaga quit (Quit: hendursaga) 2020-09-06T14:48:26Z hendursaga joined #scheme 2020-09-06T14:52:11Z aeth quit (Ping timeout: 240 seconds) 2020-09-06T14:54:03Z aeth joined #scheme 2020-09-06T14:59:53Z bitmapper joined #scheme 2020-09-06T15:01:06Z zmv is now known as notzmv 2020-09-06T15:06:35Z nhp15 joined #scheme 2020-09-06T15:11:25Z brendyyn quit (Ping timeout: 246 seconds) 2020-09-06T15:26:44Z oxum joined #scheme 2020-09-06T15:30:39Z oxum quit (Remote host closed the connection) 2020-09-06T15:37:40Z oxum joined #scheme 2020-09-06T15:37:51Z oxum quit (Remote host closed the connection) 2020-09-06T15:39:51Z ArneBab quit (Remote host closed the connection) 2020-09-06T15:41:06Z ArneBab joined #scheme 2020-09-06T15:41:06Z ArneBab quit (Changing host) 2020-09-06T15:41:06Z ArneBab joined #scheme 2020-09-06T15:52:04Z edgar-rft quit (Quit: Leaving) 2020-09-06T16:37:02Z cgay joined #scheme 2020-09-06T16:38:20Z raingloom quit (Ping timeout: 265 seconds) 2020-09-06T17:02:56Z raingloom joined #scheme 2020-09-06T17:36:56Z daviid joined #scheme 2020-09-06T17:40:44Z klovett_ is now known as klovett 2020-09-06T17:48:17Z corpix_ joined #scheme 2020-09-06T17:48:23Z corpix quit (Ping timeout: 240 seconds) 2020-09-06T17:49:11Z nullheroes quit (Quit: WeeChat 2.9) 2020-09-06T17:50:53Z nullheroes joined #scheme 2020-09-06T18:20:24Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-06T18:22:04Z skapata joined #scheme 2020-09-06T18:24:40Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-06T18:28:25Z gravicappa joined #scheme 2020-09-06T18:30:02Z skapata left #scheme 2020-09-06T18:32:57Z edgar-rft joined #scheme 2020-09-06T19:25:35Z Zipheir quit (Quit: Eadem mutata resurgo.) 2020-09-06T19:29:22Z gmaggior joined #scheme 2020-09-06T19:34:32Z muelleme joined #scheme 2020-09-06T19:40:46Z muelleme quit (Ping timeout: 256 seconds) 2020-09-06T20:11:46Z lritter quit (Ping timeout: 256 seconds) 2020-09-06T20:17:32Z lritter joined #scheme 2020-09-06T20:37:47Z alelos joined #scheme 2020-09-06T21:04:59Z dmiles quit (Ping timeout: 240 seconds) 2020-09-06T21:06:33Z hugh_marera joined #scheme 2020-09-06T21:09:08Z dmiles joined #scheme 2020-09-06T21:22:17Z ggole quit (Quit: Leaving) 2020-09-06T21:37:16Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-06T21:51:13Z notzmv` joined #scheme 2020-09-06T21:54:16Z notzmv quit (Ping timeout: 256 seconds) 2020-09-06T22:07:06Z alelos quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-06T22:07:34Z notzmv` is now known as notzmv 2020-09-06T22:07:41Z notzmv quit (Changing host) 2020-09-06T22:07:41Z notzmv joined #scheme 2020-09-06T22:18:20Z hugh_marera quit (Remote host closed the connection) 2020-09-06T22:18:36Z hugh_marera joined #scheme 2020-09-06T22:27:08Z gmaggior quit (Ping timeout: 260 seconds) 2020-09-06T22:29:57Z hugh_marera quit (Quit: hugh_marera) 2020-09-06T22:31:23Z nhp15 quit (Remote host closed the connection) 2020-09-06T22:39:02Z gmaggior joined #scheme 2020-09-06T22:41:32Z aaaaaa joined #scheme 2020-09-06T22:53:51Z lritter quit (Quit: Leaving) 2020-09-06T22:58:56Z cjb joined #scheme 2020-09-06T23:07:12Z cjb quit (Ping timeout: 272 seconds) 2020-09-06T23:10:10Z cjb joined #scheme 2020-09-06T23:33:06Z gravicappa joined #scheme 2020-09-06T23:35:01Z gmaggior quit (Ping timeout: 264 seconds) 2020-09-06T23:48:27Z gmaggior joined #scheme 2020-09-06T23:49:32Z nly quit (Ping timeout: 256 seconds) 2020-09-07T00:04:15Z dmiles quit (Read error: Connection reset by peer) 2020-09-07T00:06:45Z cgay quit (Quit: Connection closed for inactivity) 2020-09-07T00:29:06Z dmiles joined #scheme 2020-09-07T00:29:27Z terpri_ is now known as terpri 2020-09-07T00:29:36Z cchristiansen joined #scheme 2020-09-07T00:39:06Z dmiles quit 2020-09-07T00:43:22Z raingloom quit (Ping timeout: 256 seconds) 2020-09-07T00:52:47Z brendyyn joined #scheme 2020-09-07T01:21:11Z nly joined #scheme 2020-09-07T01:22:58Z nly left #scheme 2020-09-07T01:46:22Z torbo joined #scheme 2020-09-07T01:48:12Z malaclyps quit (Quit: gone) 2020-09-07T01:51:42Z malaclyps joined #scheme 2020-09-07T01:52:08Z dmiles joined #scheme 2020-09-07T01:52:19Z malaclyps quit (Client Quit) 2020-09-07T01:52:47Z malaclyps joined #scheme 2020-09-07T02:06:03Z gmaggior quit (Quit: Leaving) 2020-09-07T02:43:21Z phillbush joined #scheme 2020-09-07T02:47:54Z zaifir` joined #scheme 2020-09-07T02:48:00Z zaifir` is now known as Zipheir 2020-09-07T02:50:34Z phillbush quit (Quit: Leaving) 2020-09-07T03:39:49Z aaaaaa quit (Quit: leaving) 2020-09-07T03:43:08Z DKordic quit 2020-09-07T03:44:56Z torbo left #scheme 2020-09-07T05:07:39Z brown121407 joined #scheme 2020-09-07T05:26:19Z brown121407 quit (Remote host closed the connection) 2020-09-07T05:48:48Z Blukunfando quit (Ping timeout: 256 seconds) 2020-09-07T05:59:27Z brendarn joined #scheme 2020-09-07T06:00:23Z brendyyn quit (Ping timeout: 260 seconds) 2020-09-07T06:09:09Z brendarn quit (Ping timeout: 260 seconds) 2020-09-07T06:55:58Z cjb quit (Quit: end of day) 2020-09-07T06:57:49Z hugh_marera joined #scheme 2020-09-07T07:00:17Z klovett quit (Remote host closed the connection) 2020-09-07T07:00:55Z klovett joined #scheme 2020-09-07T07:02:30Z hugh_marera quit (Client Quit) 2020-09-07T07:36:30Z civodul joined #scheme 2020-09-07T07:57:59Z klovett quit (Remote host closed the connection) 2020-09-07T07:58:14Z klovett joined #scheme 2020-09-07T08:09:50Z hendursa1 joined #scheme 2020-09-07T08:11:21Z tumdum quit (Remote host closed the connection) 2020-09-07T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-07T08:18:14Z brendyyn joined #scheme 2020-09-07T08:27:50Z amirouche joined #scheme 2020-09-07T09:01:09Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-07T09:24:28Z cpressey joined #scheme 2020-09-07T09:53:07Z raingloom joined #scheme 2020-09-07T10:00:44Z daviid quit (Ping timeout: 260 seconds) 2020-09-07T10:09:37Z civodul quit (Read error: Connection reset by peer) 2020-09-07T10:10:56Z civodul joined #scheme 2020-09-07T10:54:34Z Blukunfando joined #scheme 2020-09-07T11:18:49Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-07T11:21:25Z ravndal quit (Ping timeout: 240 seconds) 2020-09-07T11:28:29Z raingloom quit (Quit: No Ping reply in 180 seconds.) 2020-09-07T11:30:31Z raingloom joined #scheme 2020-09-07T11:39:29Z thevishy joined #scheme 2020-09-07T11:50:40Z bitmapper quit (Ping timeout: 256 seconds) 2020-09-07T11:57:14Z OptimusMKD quit (Quit: Leaving) 2020-09-07T12:02:47Z muelleme joined #scheme 2020-09-07T12:07:59Z rann is now known as list 2020-09-07T12:08:42Z list is now known as rann 2020-09-07T12:39:25Z arew quit (Ping timeout: 246 seconds) 2020-09-07T12:53:19Z hendursa1 quit (Quit: hendursa1) 2020-09-07T12:53:39Z hendursaga joined #scheme 2020-09-07T13:45:38Z skapata joined #scheme 2020-09-07T13:47:14Z skapata left #scheme 2020-09-07T13:58:16Z bitmapper joined #scheme 2020-09-07T14:02:46Z torbo joined #scheme 2020-09-07T14:03:23Z muelleme quit (Ping timeout: 260 seconds) 2020-09-07T14:03:41Z terpri quit (Remote host closed the connection) 2020-09-07T14:04:09Z terpri joined #scheme 2020-09-07T14:07:21Z ravndal joined #scheme 2020-09-07T14:14:41Z terpri quit (Remote host closed the connection) 2020-09-07T14:15:09Z terpri joined #scheme 2020-09-07T14:19:25Z raingloom quit (Ping timeout: 240 seconds) 2020-09-07T14:26:09Z rain1: whats up, $scheme 2020-09-07T14:33:43Z siraben: rain1: eval ((lambda (x) (x x)) (lambda (x) (x x))) 2020-09-07T14:33:54Z rain1: :) 2020-09-07T14:48:33Z brendyyn quit (Ping timeout: 258 seconds) 2020-09-07T14:59:40Z muelleme joined #scheme 2020-09-07T15:04:16Z muelleme quit (Ping timeout: 258 seconds) 2020-09-07T15:45:12Z civodul quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-07T15:55:20Z thevishy quit (Remote host closed the connection) 2020-09-07T16:00:21Z muelleme joined #scheme 2020-09-07T16:02:31Z brown121407 joined #scheme 2020-09-07T16:05:01Z muelleme quit (Ping timeout: 264 seconds) 2020-09-07T16:07:05Z raingloom joined #scheme 2020-09-07T16:13:00Z bitmapper: does the y combinator even work in scheme because scheme is strictly evaluated? 2020-09-07T16:14:58Z Zipheir: bitmapper: Sure. 2020-09-07T16:15:25Z Zipheir: bitmapper: Check out the chapter "...and again, and again, and..." in The Little Schemer. 2020-09-07T16:15:45Z bitmapper: i meant the standard y combinator, doesn't it require a variant 2020-09-07T16:15:59Z Zipheir: It's the applicative-order version, to be sure. 2020-09-07T16:17:01Z Zipheir: You'll need to do some currying. 2020-09-07T16:17:56Z autumn[m]: am I correct in thinking rain1's snippet would cause the second lambda to evaluate itself forever? 2020-09-07T16:18:27Z bitmapper: yes 2020-09-07T16:21:54Z ggole joined #scheme 2020-09-07T16:21:55Z Zipheir: Yes, it's the self-eval function applied to inself. 2020-09-07T16:26:43Z hugh_marera joined #scheme 2020-09-07T16:27:39Z bitmapper: the good old omega combinator 2020-09-07T16:33:15Z jcowan: technically the z combinator 2020-09-07T16:33:24Z bitmapper: jcowan: ? 2020-09-07T16:33:48Z bitmapper: ah 2020-09-07T16:34:14Z jcowan: The applicative Y combinator, in contexts where you need to speak of both, is called Z. 2020-09-07T16:34:20Z bitmapper: yeah 2020-09-07T16:34:30Z bitmapper: i thought you were referring to ((lambda (x) (x x)) (lambda (x) (x x))) 2020-09-07T16:35:58Z Riastradh: That's the U combinator applied to itself. 2020-09-07T16:36:13Z Riastradh: (U x) = (x x) 2020-09-07T16:38:34Z Riastradh: The Y combinator is (Y f) = (f (lambda (x) ((Y f) x))), or (f (Y f)) in non-strict evaluation. They are related: (Y f) = (U (lambda (g) (f (lambda (x) (((U g) f) x))))). 2020-09-07T16:41:54Z torbo` joined #scheme 2020-09-07T16:43:42Z torbo quit (Ping timeout: 256 seconds) 2020-09-07T16:48:09Z arew joined #scheme 2020-09-07T16:50:48Z amirouche quit (Ping timeout: 260 seconds) 2020-09-07T16:52:40Z Zipheir: The applicative-order version from TLS is (define (Y f) ((lambda (g) (g g)) (lambda (g) (f (lambda (x) ((g g) x)))))) 2020-09-07T16:52:49Z Zipheir: (Which I find harder to remember.) 2020-09-07T16:55:25Z jcowan: I can't remember either of them. 2020-09-07T16:56:59Z jcowan: There is a sequel called Og, Son of OG 2020-09-07T16:57:02Z jcowan: er, Og 2020-09-07T16:57:09Z Riastradh: oops 2020-09-07T16:57:25Z Riastradh: I may have made a typo in my previous message. 2020-09-07T16:57:36Z Riastradh: Wrote ((U g) f) where it should have been just (U g). 2020-09-07T17:01:07Z muelleme joined #scheme 2020-09-07T17:05:58Z muelleme quit (Ping timeout: 260 seconds) 2020-09-07T17:14:31Z ArneBab quit (Read error: Connection reset by peer) 2020-09-07T17:15:46Z ArneBab joined #scheme 2020-09-07T17:15:47Z ArneBab quit (Changing host) 2020-09-07T17:15:47Z ArneBab joined #scheme 2020-09-07T17:18:45Z ArneBab quit (Excess Flood) 2020-09-07T17:19:05Z ArneBab joined #scheme 2020-09-07T17:23:50Z brown121407 quit (Remote host closed the connection) 2020-09-07T17:36:14Z webshinra quit (Remote host closed the connection) 2020-09-07T17:36:47Z abralek_ joined #scheme 2020-09-07T17:37:13Z gravicappa quit (Ping timeout: 258 seconds) 2020-09-07T17:38:18Z abralek_ quit (Client Quit) 2020-09-07T17:38:51Z abralek_ joined #scheme 2020-09-07T17:38:55Z abralek_ quit (Client Quit) 2020-09-07T17:38:57Z gravicappa joined #scheme 2020-09-07T17:39:25Z abralek[m] joined #scheme 2020-09-07T17:40:48Z webshinra joined #scheme 2020-09-07T18:01:49Z muelleme joined #scheme 2020-09-07T18:03:53Z daviid joined #scheme 2020-09-07T18:06:19Z muelleme quit (Ping timeout: 246 seconds) 2020-09-07T18:09:54Z gmaggior joined #scheme 2020-09-07T18:13:23Z lritter joined #scheme 2020-09-07T18:15:30Z z-memory joined #scheme 2020-09-07T18:24:34Z abralek[m] quit (Ping timeout: 256 seconds) 2020-09-07T18:25:24Z abralek[m] joined #scheme 2020-09-07T18:26:12Z webshinra quit (Remote host closed the connection) 2020-09-07T18:32:13Z webshinra joined #scheme 2020-09-07T18:38:27Z ArneBab quit (Quit: No Ping reply in 180 seconds.) 2020-09-07T18:39:43Z ArneBab joined #scheme 2020-09-07T18:39:43Z ArneBab quit (Changing host) 2020-09-07T18:39:43Z ArneBab joined #scheme 2020-09-07T18:46:55Z phillbush joined #scheme 2020-09-07T18:57:19Z muelleme joined #scheme 2020-09-07T18:58:07Z ArneBab quit (Read error: Connection reset by peer) 2020-09-07T18:59:21Z ArneBab joined #scheme 2020-09-07T18:59:21Z ArneBab quit (Changing host) 2020-09-07T18:59:21Z ArneBab joined #scheme 2020-09-07T19:04:19Z jcowan: That's the consequence of stupid one-letter variables 2020-09-07T19:05:38Z aeth_ joined #scheme 2020-09-07T19:05:50Z ggole quit (Ping timeout: 244 seconds) 2020-09-07T19:05:59Z Riastradh: (Y-combinator function-factory) = (self-applicate (lambda (self-applicatory-function-factory-factory) (function-factory (lambda (input-to-function) ((self-applicate self-applicatory-function-factory-factory) input-to-function] 2020-09-07T19:06:03Z Riastradh: much better 2020-09-07T19:06:50Z jcowan: Indeed it is 2020-09-07T19:07:16Z jcowan: though I would write metafactory instead of factory-factory 2020-09-07T19:07:45Z Riastradh: self-flagellate more like 2020-09-07T19:08:42Z aeth quit (Ping timeout: 256 seconds) 2020-09-07T19:12:13Z aeth_ is now known as aeth 2020-09-07T19:15:11Z terpri quit (Remote host closed the connection) 2020-09-07T19:15:36Z terpri joined #scheme 2020-09-07T19:16:25Z rain1: great, readable variable names like they teach 2020-09-07T19:17:30Z Zipheir: Heh. 2020-09-07T19:18:27Z Zipheir: Finding descriptive, short names is hard. 2020-09-07T19:24:02Z aeth: as-long-as-it-isnt-camel-case-sure-go-ahead-and-use-long-names 2020-09-07T19:24:20Z aeth: |Even this technically isn't camelCase, so you might as well use this as your next variable name| 2020-09-07T19:26:12Z aeth: (define |The most descriptive variable name is the string itself.| "The most descriptive variable name is the string itself.") 2020-09-07T19:26:30Z Riastradh: (|java.lang.combinators.library.Y| |functionFactory|) = (|java.functions.operators.selfApplicate| (lambda (|selfApplicatoryFunctionMetaFactory|) (|functionFactory| (lambda (|inputToFunction|) ((|java.functions.operators.selfApplicate| |selfApplicatoryFunctionMetaFactory|) |inputToFunction|] 2020-09-07T19:27:11Z aeth: rudybot: eval (define |The most descriptive variable name is the string itself.| "The most descriptive variable name is the string itself.") 2020-09-07T19:27:17Z rudybot: aeth: your sandbox is ready 2020-09-07T19:27:17Z rudybot: aeth: Done. 2020-09-07T19:27:36Z aeth: rudybot: eval |The most descriptive variable name is the string itself.| 2020-09-07T19:27:36Z rudybot: aeth: ; Value: "The most descriptive variable name is the string itself." 2020-09-07T19:27:39Z aeth: It works! 2020-09-07T19:51:43Z notzmv` joined #scheme 2020-09-07T19:52:08Z notzmv` is now known as zmv 2020-09-07T19:52:38Z zmv is now known as Guest50956 2020-09-07T19:52:57Z Guest50956 is now known as zmv` 2020-09-07T19:53:05Z zmv` quit (Changing host) 2020-09-07T19:53:05Z zmv` joined #scheme 2020-09-07T19:53:10Z notzmv quit (Disconnected by services) 2020-09-07T19:53:20Z zmv` is now known as notzmv 2020-09-07T19:55:14Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-07T19:55:17Z ArneBab quit (Remote host closed the connection) 2020-09-07T19:55:31Z abralek[m] joined #scheme 2020-09-07T19:56:34Z ArneBab joined #scheme 2020-09-07T19:56:38Z rgherdt joined #scheme 2020-09-07T20:01:17Z rgherdt quit (Client Quit) 2020-09-07T20:04:28Z abralek[m] quit (Ping timeout: 260 seconds) 2020-09-07T20:05:43Z civodul joined #scheme 2020-09-07T20:06:18Z abralek[m] joined #scheme 2020-09-07T20:16:12Z lritter quit (Ping timeout: 256 seconds) 2020-09-07T20:21:38Z lritter joined #scheme 2020-09-07T20:25:09Z z-memory quit (Quit: Connection closed for inactivity) 2020-09-07T21:04:18Z Oxyd quit (Remote host closed the connection) 2020-09-07T21:04:30Z Oxyd_ joined #scheme 2020-09-07T21:09:56Z Oxyd_ quit (Quit: ZNC 1.7.5 - https://znc.in) 2020-09-07T21:11:38Z Oxyd joined #scheme 2020-09-07T21:25:33Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-07T21:38:42Z zooey_ quit (Remote host closed the connection) 2020-09-07T21:39:27Z zooey joined #scheme 2020-09-07T21:48:32Z Oddity__ quit (Remote host closed the connection) 2020-09-07T21:49:12Z Oddity__ joined #scheme 2020-09-07T22:00:11Z muelleme quit (Ping timeout: 258 seconds) 2020-09-07T22:01:21Z madage quit (Remote host closed the connection) 2020-09-07T22:01:40Z madage joined #scheme 2020-09-07T22:07:05Z raingloom quit (Ping timeout: 240 seconds) 2020-09-07T22:15:32Z hugh_marera quit (Remote host closed the connection) 2020-09-07T22:18:29Z hugh_marera joined #scheme 2020-09-07T22:21:25Z tryte joined #scheme 2020-09-07T22:21:43Z tryte_ quit (Ping timeout: 240 seconds) 2020-09-07T22:23:31Z seepel joined #scheme 2020-09-07T22:26:04Z brendyyn joined #scheme 2020-09-07T22:31:56Z klovett quit (Remote host closed the connection) 2020-09-07T22:32:33Z klovett joined #scheme 2020-09-07T22:44:16Z hugh_marera quit (Ping timeout: 258 seconds) 2020-09-07T23:01:11Z civodul quit (Ping timeout: 272 seconds) 2020-09-07T23:11:47Z lritter quit (Ping timeout: 240 seconds) 2020-09-07T23:20:59Z seepel quit (Ping timeout: 240 seconds) 2020-09-07T23:50:14Z cchristiansen joined #scheme 2020-09-07T23:52:51Z cjb joined #scheme 2020-09-08T00:21:26Z raingloom joined #scheme 2020-09-08T00:29:06Z jboy quit (Ping timeout: 240 seconds) 2020-09-08T00:29:26Z jboy joined #scheme 2020-09-08T00:36:12Z klovett quit (Remote host closed the connection) 2020-09-08T00:36:13Z edgar-rft quit (Quit: Leaving) 2020-09-08T00:36:28Z klovett joined #scheme 2020-09-08T01:28:51Z mason joined #scheme 2020-09-08T01:50:11Z raingloom quit (Ping timeout: 240 seconds) 2020-09-08T02:33:10Z gmaggior quit (Ping timeout: 265 seconds) 2020-09-08T02:33:49Z cjb quit (Quit: 👋) 2020-09-08T02:45:15Z gmaggior joined #scheme 2020-09-08T03:19:20Z seepel joined #scheme 2020-09-08T04:01:03Z seepel quit (Ping timeout: 260 seconds) 2020-09-08T04:32:02Z gravicappa joined #scheme 2020-09-08T04:32:04Z torbo` quit (Remote host closed the connection) 2020-09-08T04:49:25Z arew: hello #scheme :) 2020-09-08T05:15:47Z ggole joined #scheme 2020-09-08T06:10:13Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-08T06:16:24Z klovett quit (Remote host closed the connection) 2020-09-08T06:17:06Z klovett joined #scheme 2020-09-08T06:18:11Z thevishy joined #scheme 2020-09-08T06:50:16Z gmaggior quit (Quit: Leaving) 2020-09-08T07:00:02Z rain1: hi 2020-09-08T07:04:38Z civodul joined #scheme 2020-09-08T07:15:02Z ArneBab quit (Ping timeout: 260 seconds) 2020-09-08T07:15:22Z ArneBab joined #scheme 2020-09-08T07:15:22Z ArneBab quit (Changing host) 2020-09-08T07:15:22Z ArneBab joined #scheme 2020-09-08T07:20:54Z phillbush quit (Quit: Leaving) 2020-09-08T07:22:06Z jobol joined #scheme 2020-09-08T07:30:18Z arew quit (Quit: WeeChat 2.8) 2020-09-08T07:33:21Z amirouche joined #scheme 2020-09-08T08:03:27Z raingloom joined #scheme 2020-09-08T08:09:59Z hendursa1 joined #scheme 2020-09-08T08:10:11Z Blukunfando quit (Ping timeout: 240 seconds) 2020-09-08T08:12:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-08T08:16:15Z ArneBab quit (Remote host closed the connection) 2020-09-08T08:17:29Z ArneBab joined #scheme 2020-09-08T08:18:31Z cpressey joined #scheme 2020-09-08T08:19:19Z fmnt joined #scheme 2020-09-08T08:21:28Z Blukunfando joined #scheme 2020-09-08T08:36:42Z seepel joined #scheme 2020-09-08T08:46:44Z thevishy quit (Ping timeout: 245 seconds) 2020-09-08T08:58:32Z X-Scale` joined #scheme 2020-09-08T08:59:55Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-08T08:59:56Z X-Scale` is now known as X-Scale 2020-09-08T09:00:27Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-08T09:23:11Z civodul quit (Remote host closed the connection) 2020-09-08T09:23:53Z civodul joined #scheme 2020-09-08T09:37:09Z abralek[m] joined #scheme 2020-09-08T09:43:04Z cpressey joined #scheme 2020-09-08T09:56:53Z edgar-rft joined #scheme 2020-09-08T10:00:46Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-08T10:10:55Z daviid quit (Ping timeout: 246 seconds) 2020-09-08T10:24:25Z ArneBab quit (Remote host closed the connection) 2020-09-08T10:25:41Z ArneBab joined #scheme 2020-09-08T10:25:41Z ArneBab quit (Changing host) 2020-09-08T10:25:41Z ArneBab joined #scheme 2020-09-08T10:35:38Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-08T10:38:56Z muelleme joined #scheme 2020-09-08T10:40:32Z fmnt quit (Quit: Leaving.) 2020-09-08T10:53:05Z muelleme quit (Ping timeout: 240 seconds) 2020-09-08T11:08:05Z hugh_marera joined #scheme 2020-09-08T11:21:01Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-08T11:22:26Z abralek[m] joined #scheme 2020-09-08T11:24:36Z amirouche: I think I will submit my work related to web frontend framework to srfi process. What would you expect from such proposal? 2020-09-08T11:27:00Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-08T11:29:47Z bitmapper quit (Ping timeout: 258 seconds) 2020-09-08T11:30:22Z wasamasa: what exactly do you plan to submit? 2020-09-08T11:30:22Z raingloom quit (Ping timeout: 246 seconds) 2020-09-08T11:31:21Z amirouche: propose 2020-09-08T11:31:29Z wasamasa: I don't expect terribly much since the web is lots of poorly specified standards 2020-09-08T11:31:38Z amirouche: like write a specification and a sample implementation 2020-09-08T11:31:55Z wasamasa: no need to play catch-up with whatwg 2020-09-08T11:33:46Z amirouche: I do not plan to specify all web APIs. The goal is to describe enough API to be able to build back-office applications based on reactjs and the like. 2020-09-08T11:34:27Z amirouche: maybe there is a dozen procedure to describe or something like that + sxml 2020-09-08T11:35:07Z raingloom joined #scheme 2020-09-08T11:35:09Z amirouche: the flavour of sxml that i rely on that is (tag (@ (attribute "value") (on-event ,procedure)) "lorem ipsum") 2020-09-08T11:37:13Z abralek[m] joined #scheme 2020-09-08T11:43:34Z wasamasa: to build a react application from scratch one must first implement all the web things 2020-09-08T11:49:22Z muelleme joined #scheme 2020-09-08T11:54:12Z muelleme quit (Ping timeout: 256 seconds) 2020-09-08T11:55:08Z hugh_marera quit (Quit: hugh_marera) 2020-09-08T11:55:25Z hugh_marera joined #scheme 2020-09-08T12:02:50Z Sinister joined #scheme 2020-09-08T12:03:24Z Sinister left #scheme 2020-09-08T12:10:51Z klovett quit (Remote host closed the connection) 2020-09-08T12:11:05Z klovett joined #scheme 2020-09-08T12:32:42Z lritter joined #scheme 2020-09-08T12:37:37Z seepel quit (Remote host closed the connection) 2020-09-08T12:38:05Z seepel joined #scheme 2020-09-08T12:40:29Z hugh_marera quit (Quit: hugh_marera) 2020-09-08T12:40:45Z hugh_marera joined #scheme 2020-09-08T12:41:25Z abralek[m] quit (Ping timeout: 246 seconds) 2020-09-08T12:42:00Z abralek[m] joined #scheme 2020-09-08T12:43:13Z klovett quit (Remote host closed the connection) 2020-09-08T12:43:56Z klovett joined #scheme 2020-09-08T12:50:03Z muelleme joined #scheme 2020-09-08T12:54:07Z deesix quit (Ping timeout: 258 seconds) 2020-09-08T12:54:48Z muelleme quit (Ping timeout: 260 seconds) 2020-09-08T12:59:02Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-08T12:59:42Z abralek[m] joined #scheme 2020-09-08T13:02:28Z hendursa1 quit (Quit: hendursa1) 2020-09-08T13:02:49Z hendursaga joined #scheme 2020-09-08T13:17:23Z deesix joined #scheme 2020-09-08T13:19:45Z X-Scale` joined #scheme 2020-09-08T13:21:14Z X-Scale quit (Ping timeout: 256 seconds) 2020-09-08T13:21:15Z X-Scale` is now known as X-Scale 2020-09-08T13:28:00Z klovett quit (Remote host closed the connection) 2020-09-08T13:28:16Z klovett joined #scheme 2020-09-08T13:34:28Z aeth quit (Ping timeout: 260 seconds) 2020-09-08T13:35:50Z hugh_marera quit (Quit: hugh_marera) 2020-09-08T13:36:19Z aeth joined #scheme 2020-09-08T13:40:30Z phillbush joined #scheme 2020-09-08T13:42:07Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-08T13:50:48Z muelleme joined #scheme 2020-09-08T13:55:28Z muelleme quit (Ping timeout: 260 seconds) 2020-09-08T14:00:26Z seepel quit (Ping timeout: 258 seconds) 2020-09-08T14:02:12Z emacsomancer quit (Read error: Connection reset by peer) 2020-09-08T14:09:50Z emacsomancer joined #scheme 2020-09-08T14:25:09Z raingloom quit (Ping timeout: 244 seconds) 2020-09-08T14:26:29Z raingloom joined #scheme 2020-09-08T14:34:06Z edgar-rft quit (Quit: Leaving) 2020-09-08T14:48:27Z badkins joined #scheme 2020-09-08T14:51:34Z muelleme joined #scheme 2020-09-08T14:56:43Z muelleme quit (Ping timeout: 260 seconds) 2020-09-08T14:57:07Z brown121407 joined #scheme 2020-09-08T15:20:19Z dmiles quit (Ping timeout: 246 seconds) 2020-09-08T15:38:51Z brown121407 quit (Remote host closed the connection) 2020-09-08T15:39:24Z brown121407 joined #scheme 2020-09-08T15:52:01Z dbmikus joined #scheme 2020-09-08T15:52:22Z muelleme joined #scheme 2020-09-08T15:54:34Z dmiles joined #scheme 2020-09-08T15:56:27Z brown121407 quit (Remote host closed the connection) 2020-09-08T15:57:08Z muelleme quit (Ping timeout: 256 seconds) 2020-09-08T16:00:27Z civodul quit (Ping timeout: 240 seconds) 2020-09-08T16:04:06Z brown121407 joined #scheme 2020-09-08T16:10:40Z arew joined #scheme 2020-09-08T16:12:49Z amirouche quit (Ping timeout: 264 seconds) 2020-09-08T16:14:14Z muelleme joined #scheme 2020-09-08T16:18:25Z brown121407 quit (Remote host closed the connection) 2020-09-08T16:19:50Z brown121407 joined #scheme 2020-09-08T16:22:32Z skapata joined #scheme 2020-09-08T16:23:38Z payph0ne joined #scheme 2020-09-08T16:23:39Z skapata left #scheme 2020-09-08T16:27:44Z muelleme quit (Ping timeout: 260 seconds) 2020-09-08T16:34:34Z hugh_marera joined #scheme 2020-09-08T16:45:27Z lavaflow quit (Quit: l8r) 2020-09-08T16:46:06Z badkins quit (Remote host closed the connection) 2020-09-08T16:49:50Z badkins joined #scheme 2020-09-08T16:52:06Z abralek[m] quit (Ping timeout: 256 seconds) 2020-09-08T16:52:21Z abralek[m] joined #scheme 2020-09-08T16:52:52Z rgherdt joined #scheme 2020-09-08T16:53:42Z raingloom quit (Ping timeout: 258 seconds) 2020-09-08T16:54:28Z badkins quit (Ping timeout: 246 seconds) 2020-09-08T16:59:19Z daviid joined #scheme 2020-09-08T17:01:45Z Sinister joined #scheme 2020-09-08T17:04:19Z Sinister quit (Client Quit) 2020-09-08T17:04:58Z daviid quit (Ping timeout: 246 seconds) 2020-09-08T17:07:46Z ardaukas joined #scheme 2020-09-08T17:08:00Z raingloom joined #scheme 2020-09-08T17:11:53Z lavaflow joined #scheme 2020-09-08T17:18:18Z brown121408 joined #scheme 2020-09-08T17:19:38Z brown121408 is now known as zazavatar 2020-09-08T17:20:13Z brown121407 quit (Ping timeout: 260 seconds) 2020-09-08T17:20:41Z zazavatar is now known as brown121407 2020-09-08T17:23:32Z muelleme joined #scheme 2020-09-08T17:26:59Z jobol quit (Quit: Leaving) 2020-09-08T17:27:40Z edgar-rft joined #scheme 2020-09-08T17:28:24Z muelleme quit (Ping timeout: 260 seconds) 2020-09-08T17:37:43Z badkins joined #scheme 2020-09-08T17:42:13Z raingloom quit (Ping timeout: 264 seconds) 2020-09-08T17:44:17Z raingloom joined #scheme 2020-09-08T17:47:00Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-08T17:48:49Z gravicappa joined #scheme 2020-09-08T17:53:59Z bitmapper joined #scheme 2020-09-08T17:55:05Z ArneBab quit (Remote host closed the connection) 2020-09-08T17:56:19Z ArneBab joined #scheme 2020-09-08T17:56:19Z ArneBab quit (Changing host) 2020-09-08T17:56:19Z ArneBab joined #scheme 2020-09-08T17:58:24Z raingloom quit (Ping timeout: 256 seconds) 2020-09-08T18:05:16Z muelleme joined #scheme 2020-09-08T18:07:45Z ArneBab quit (Remote host closed the connection) 2020-09-08T18:09:00Z ArneBab joined #scheme 2020-09-08T18:09:00Z ArneBab quit (Changing host) 2020-09-08T18:09:00Z ArneBab joined #scheme 2020-09-08T18:10:30Z ggole quit (Quit: Leaving) 2020-09-08T18:12:16Z daviid joined #scheme 2020-09-08T18:21:07Z gmaggior joined #scheme 2020-09-08T18:23:53Z hugh_marera quit (Quit: hugh_marera) 2020-09-08T18:24:11Z hugh_marera joined #scheme 2020-09-08T18:25:25Z ArneBab quit (Remote host closed the connection) 2020-09-08T18:26:40Z ArneBab joined #scheme 2020-09-08T18:26:40Z ArneBab quit (Changing host) 2020-09-08T18:26:40Z ArneBab joined #scheme 2020-09-08T18:30:41Z acarrico quit (Ping timeout: 258 seconds) 2020-09-08T18:45:36Z Zipheir quit (Quit: Eadem mutata resurgo.) 2020-09-08T18:52:35Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-08T19:05:41Z dbmikus joined #scheme 2020-09-08T19:06:10Z klovett quit 2020-09-08T19:08:49Z klovett joined #scheme 2020-09-08T19:09:27Z mdhughes: Walk before boiling the ocean: Write a Gopher server & client. 2020-09-08T19:10:51Z vinvin joined #scheme 2020-09-08T19:13:13Z ardaukas left #scheme 2020-09-08T19:15:51Z badkins quit (Remote host closed the connection) 2020-09-08T19:16:30Z badkins joined #scheme 2020-09-08T19:21:33Z badkins quit (Ping timeout: 260 seconds) 2020-09-08T19:23:55Z jcowan: It's the client that's the hard part, unless it is a pure-TTY one like www, in which case you might as well use lynx. 2020-09-08T19:25:35Z ArneBab quit (Remote host closed the connection) 2020-09-08T19:26:49Z ArneBab joined #scheme 2020-09-08T19:28:11Z hugh_marera quit (Quit: hugh_marera) 2020-09-08T19:30:31Z badkins joined #scheme 2020-09-08T19:35:45Z ArneBab quit (Remote host closed the connection) 2020-09-08T19:37:03Z ArneBab joined #scheme 2020-09-08T19:50:13Z brown121407 quit (Remote host closed the connection) 2020-09-08T20:02:33Z seepel joined #scheme 2020-09-08T20:07:57Z hugh_marera joined #scheme 2020-09-08T20:12:32Z hugh_marera quit (Client Quit) 2020-09-08T20:14:26Z srandon111 joined #scheme 2020-09-08T20:17:37Z hugh_marera joined #scheme 2020-09-08T20:20:37Z lritter quit (Ping timeout: 264 seconds) 2020-09-08T20:25:18Z lritter joined #scheme 2020-09-08T20:34:11Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-08T20:34:25Z abralek[m] joined #scheme 2020-09-08T20:36:40Z terpri_ joined #scheme 2020-09-08T20:36:53Z terpri quit (Remote host closed the connection) 2020-09-08T20:38:24Z notzmv quit (Read error: Connection reset by peer) 2020-09-08T20:39:19Z notzmv joined #scheme 2020-09-08T20:39:20Z notzmv is now known as Guest22817 2020-09-08T20:42:03Z muelleme quit (Ping timeout: 260 seconds) 2020-09-08T20:53:36Z badkins quit (Remote host closed the connection) 2020-09-08T20:54:21Z raingloom joined #scheme 2020-09-08T20:59:25Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-08T21:07:11Z badkins joined #scheme 2020-09-08T21:12:58Z seepel quit (Ping timeout: 260 seconds) 2020-09-08T21:13:32Z fadein quit (Ping timeout: 265 seconds) 2020-09-08T21:14:02Z fadein joined #scheme 2020-09-08T21:21:45Z hugh_marera quit (Quit: hugh_marera) 2020-09-08T21:37:42Z muelleme joined #scheme 2020-09-08T21:42:10Z muelleme quit (Ping timeout: 246 seconds) 2020-09-08T21:46:53Z gravicappa joined #scheme 2020-09-08T21:59:19Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-08T21:59:40Z gravicappa quit (Ping timeout: 246 seconds) 2020-09-08T22:19:10Z Guest22817 is now known as notzmv 2020-09-08T22:19:19Z notzmv quit (Changing host) 2020-09-08T22:19:19Z notzmv joined #scheme 2020-09-08T22:24:23Z corpix_ quit (Remote host closed the connection) 2020-09-08T22:41:13Z badkins quit (Remote host closed the connection) 2020-09-08T22:41:53Z badkins joined #scheme 2020-09-08T22:46:55Z badkins quit (Ping timeout: 246 seconds) 2020-09-08T22:56:28Z fadein quit (Ping timeout: 256 seconds) 2020-09-08T22:57:28Z srandon111 quit (Quit: leaving) 2020-09-08T23:03:34Z fadein joined #scheme 2020-09-08T23:21:12Z lritter quit (Quit: Leaving) 2020-09-08T23:30:38Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-08T23:32:42Z torbo joined #scheme 2020-09-08T23:37:39Z seepel joined #scheme 2020-09-08T23:38:41Z gmaggior quit (Quit: Leaving) 2020-09-09T00:43:19Z badkins joined #scheme 2020-09-09T00:46:45Z dbmikus joined #scheme 2020-09-09T00:48:08Z badkins quit (Ping timeout: 265 seconds) 2020-09-09T00:54:47Z deesix quit (Ping timeout: 258 seconds) 2020-09-09T00:55:49Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-09T00:59:09Z muelleme joined #scheme 2020-09-09T01:03:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-09T01:06:45Z phillbush quit (Quit: Leaving) 2020-09-09T01:16:44Z payph0ne quit (Ping timeout: 245 seconds) 2020-09-09T01:21:55Z payph0ne joined #scheme 2020-09-09T01:27:31Z deesix joined #scheme 2020-09-09T01:27:41Z dbmikus joined #scheme 2020-09-09T01:35:57Z klovett quit (Remote host closed the connection) 2020-09-09T01:36:39Z klovett joined #scheme 2020-09-09T01:37:57Z badkins joined #scheme 2020-09-09T01:43:34Z badkins quit (Ping timeout: 256 seconds) 2020-09-09T01:48:25Z phillbush joined #scheme 2020-09-09T01:52:44Z avalos joined #scheme 2020-09-09T01:53:13Z avalos left #scheme 2020-09-09T01:58:00Z klovett quit (Remote host closed the connection) 2020-09-09T01:58:18Z klovett joined #scheme 2020-09-09T01:58:48Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-09T02:00:11Z terpri_ quit (Remote host closed the connection) 2020-09-09T02:00:38Z terpri_ joined #scheme 2020-09-09T02:00:58Z Oddity_ joined #scheme 2020-09-09T02:04:43Z Oddity__ quit (Ping timeout: 244 seconds) 2020-09-09T02:23:38Z mdhughes: As I'm always on about, it'd be a good simple task to drive development of GUI tools. 2020-09-09T02:25:32Z badkins joined #scheme 2020-09-09T02:31:23Z badkins quit (Ping timeout: 258 seconds) 2020-09-09T03:01:32Z payph0ne quit (Remote host closed the connection) 2020-09-09T03:01:42Z badkins joined #scheme 2020-09-09T03:04:20Z payph0ne joined #scheme 2020-09-09T03:10:33Z badkins quit (Remote host closed the connection) 2020-09-09T03:12:49Z badkins joined #scheme 2020-09-09T03:17:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-09T03:17:22Z phillbush quit (Quit: Leaving) 2020-09-09T03:19:16Z zooey quit (Quit: quit) 2020-09-09T03:19:31Z zooey_ joined #scheme 2020-09-09T03:20:34Z payph0ne quit (Remote host closed the connection) 2020-09-09T03:56:32Z klovett_ joined #scheme 2020-09-09T03:57:06Z sm2n_ joined #scheme 2020-09-09T03:57:16Z bitmappe_ joined #scheme 2020-09-09T03:57:56Z sm2n quit (Remote host closed the connection) 2020-09-09T03:58:24Z klovett quit (Ping timeout: 258 seconds) 2020-09-09T03:59:33Z bitmapper quit (Ping timeout: 258 seconds) 2020-09-09T04:02:22Z brown121407 joined #scheme 2020-09-09T04:12:08Z gravicappa joined #scheme 2020-09-09T04:16:32Z arew: I am not looking for a web browser but a frontend library 2020-09-09T04:43:17Z brown121407 quit (Quit: My IRC client committed suicide.) 2020-09-09T04:43:27Z torbo quit (Remote host closed the connection) 2020-09-09T04:43:31Z brown121407 joined #scheme 2020-09-09T04:51:27Z iltutmus quit (Quit: ZNC 1.7.4 - https://znc.in) 2020-09-09T04:51:37Z iltutmus joined #scheme 2020-09-09T05:06:02Z terpri_ quit (Ping timeout: 260 seconds) 2020-09-09T05:06:19Z terpri joined #scheme 2020-09-09T05:14:06Z badkins joined #scheme 2020-09-09T05:18:49Z badkins quit (Ping timeout: 264 seconds) 2020-09-09T05:27:05Z arew: that runs in the browser 2020-09-09T05:28:35Z dbmikus joined #scheme 2020-09-09T05:32:24Z sm2n_ is now known as sm2n 2020-09-09T05:56:55Z clog quit (Ping timeout: 240 seconds) 2020-09-09T06:03:22Z gravicappa quit (Ping timeout: 258 seconds) 2020-09-09T06:11:36Z raingloom quit (Ping timeout: 256 seconds) 2020-09-09T06:15:38Z fadein quit (Ping timeout: 256 seconds) 2020-09-09T06:32:02Z kopiyka quit (Remote host closed the connection) 2020-09-09T06:44:11Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-09T07:00:02Z ggole joined #scheme 2020-09-09T07:03:59Z jobol joined #scheme 2020-09-09T07:20:49Z brown121407 quit (Remote host closed the connection) 2020-09-09T07:23:40Z arew quit (Quit: WeeChat 2.8) 2020-09-09T07:25:04Z amirouche joined #scheme 2020-09-09T07:52:43Z clog joined #scheme 2020-09-09T08:13:54Z hendursa1 joined #scheme 2020-09-09T08:16:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-09T08:16:06Z rgherdt joined #scheme 2020-09-09T08:32:58Z Blukunfando quit (Read error: Connection reset by peer) 2020-09-09T08:50:23Z Blukunfando joined #scheme 2020-09-09T09:14:29Z gravicappa joined #scheme 2020-09-09T09:15:37Z badkins joined #scheme 2020-09-09T09:20:18Z badkins quit (Ping timeout: 256 seconds) 2020-09-09T09:23:08Z daviid quit (Ping timeout: 256 seconds) 2020-09-09T09:25:38Z rgherdt quit (Ping timeout: 260 seconds) 2020-09-09T09:30:11Z rgherdt joined #scheme 2020-09-09T09:45:18Z z-memory joined #scheme 2020-09-09T09:53:07Z coffeeturtle joined #scheme 2020-09-09T09:54:44Z brown121407 joined #scheme 2020-09-09T09:59:53Z brown121407 quit (Read error: Connection reset by peer) 2020-09-09T10:00:57Z brown121407 joined #scheme 2020-09-09T10:05:46Z brown121407 quit (Remote host closed the connection) 2020-09-09T10:07:42Z coffeeturtle quit (Quit: leaving) 2020-09-09T10:49:52Z coffeeturtle joined #scheme 2020-09-09T10:51:15Z coffeeturtle quit (Client Quit) 2020-09-09T11:05:01Z bitmappe_ quit (Ping timeout: 264 seconds) 2020-09-09T11:16:42Z badkins joined #scheme 2020-09-09T11:21:09Z badkins quit (Ping timeout: 258 seconds) 2020-09-09T11:40:25Z montxero joined #scheme 2020-09-09T11:43:13Z mdhughes_ joined #scheme 2020-09-09T11:45:52Z mdhughes quit (Ping timeout: 244 seconds) 2020-09-09T11:51:48Z hendursa1 quit (Quit: hendursa1) 2020-09-09T11:52:11Z hendursaga joined #scheme 2020-09-09T11:55:02Z z-memory quit (Quit: Connection closed for inactivity) 2020-09-09T11:59:51Z webshinra quit (Remote host closed the connection) 2020-09-09T12:03:00Z webshinra joined #scheme 2020-09-09T12:13:16Z mdhughes_ is now known as mdhughes 2020-09-09T12:45:56Z mdhughes quit (Remote host closed the connection) 2020-09-09T12:48:02Z mdhughes joined #scheme 2020-09-09T12:50:07Z tryte quit (Remote host closed the connection) 2020-09-09T12:50:41Z tryte joined #scheme 2020-09-09T13:10:03Z joast quit (Quit: Leaving.) 2020-09-09T13:10:53Z tryte quit (Remote host closed the connection) 2020-09-09T13:11:40Z tryte joined #scheme 2020-09-09T13:17:40Z badkins joined #scheme 2020-09-09T13:21:05Z aeth quit (Ping timeout: 240 seconds) 2020-09-09T13:21:53Z X-Scale quit (Ping timeout: 260 seconds) 2020-09-09T13:21:55Z badkins quit (Ping timeout: 246 seconds) 2020-09-09T13:22:02Z X-Scale` joined #scheme 2020-09-09T13:22:20Z joast joined #scheme 2020-09-09T13:22:42Z X-Scale` is now known as X-Scale 2020-09-09T13:23:14Z aeth joined #scheme 2020-09-09T13:29:46Z terpri quit (Remote host closed the connection) 2020-09-09T13:30:07Z terpri joined #scheme 2020-09-09T13:47:26Z fadein joined #scheme 2020-09-09T13:51:33Z badkins joined #scheme 2020-09-09T13:52:16Z badkins quit (Remote host closed the connection) 2020-09-09T13:53:03Z badkins joined #scheme 2020-09-09T13:53:10Z badkins quit (Remote host closed the connection) 2020-09-09T13:53:20Z badkins joined #scheme 2020-09-09T14:03:43Z tryte quit (Remote host closed the connection) 2020-09-09T14:04:44Z rgherdt quit (Read error: Connection reset by peer) 2020-09-09T14:04:56Z tryte joined #scheme 2020-09-09T14:06:22Z rgherdt joined #scheme 2020-09-09T14:23:22Z lritter joined #scheme 2020-09-09T14:36:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-09T14:37:28Z hendursaga joined #scheme 2020-09-09T14:59:25Z ArneBab quit (Remote host closed the connection) 2020-09-09T15:00:40Z ArneBab joined #scheme 2020-09-09T15:00:40Z ArneBab quit (Changing host) 2020-09-09T15:00:40Z ArneBab joined #scheme 2020-09-09T15:02:27Z rgherdt_ joined #scheme 2020-09-09T15:03:22Z rgherdt quit (Ping timeout: 256 seconds) 2020-09-09T15:04:29Z theseb joined #scheme 2020-09-09T15:05:08Z theseb quit (Client Quit) 2020-09-09T15:05:24Z theseb joined #scheme 2020-09-09T15:12:00Z Zipheir joined #scheme 2020-09-09T15:17:05Z ArneBab quit (Remote host closed the connection) 2020-09-09T15:18:21Z ArneBab joined #scheme 2020-09-09T15:18:21Z ArneBab quit (Changing host) 2020-09-09T15:18:21Z ArneBab joined #scheme 2020-09-09T15:19:18Z brown121407 joined #scheme 2020-09-09T15:24:45Z ArneBab quit (Remote host closed the connection) 2020-09-09T15:25:12Z badkins quit (Remote host closed the connection) 2020-09-09T15:25:52Z badkins joined #scheme 2020-09-09T15:25:54Z amirouche quit (Quit: WeeChat 2.8) 2020-09-09T15:26:01Z ArneBab joined #scheme 2020-09-09T15:26:08Z seepel quit (Remote host closed the connection) 2020-09-09T15:26:32Z seepel joined #scheme 2020-09-09T15:30:49Z badkins quit (Ping timeout: 264 seconds) 2020-09-09T15:31:29Z brown121407 quit (Remote host closed the connection) 2020-09-09T15:36:07Z arew joined #scheme 2020-09-09T15:37:19Z rgherdt_ quit (Remote host closed the connection) 2020-09-09T15:42:20Z badkins joined #scheme 2020-09-09T15:48:22Z rgherdt joined #scheme 2020-09-09T15:48:41Z acarrico joined #scheme 2020-09-09T15:57:43Z skapata joined #scheme 2020-09-09T16:09:56Z hugh_marera joined #scheme 2020-09-09T16:16:52Z dbmikus joined #scheme 2020-09-09T16:25:06Z badkins quit (Remote host closed the connection) 2020-09-09T16:25:50Z badkins joined #scheme 2020-09-09T16:30:30Z badkins quit (Ping timeout: 258 seconds) 2020-09-09T16:34:14Z xelxebar quit (Remote host closed the connection) 2020-09-09T16:36:25Z xelxebar joined #scheme 2020-09-09T16:47:25Z ArneBab quit (Read error: Connection reset by peer) 2020-09-09T16:48:42Z ArneBab joined #scheme 2020-09-09T16:48:43Z ArneBab quit (Changing host) 2020-09-09T16:48:43Z ArneBab joined #scheme 2020-09-09T16:53:32Z bitmapper joined #scheme 2020-09-09T16:59:35Z ArneBab quit (Remote host closed the connection) 2020-09-09T17:00:49Z ArneBab joined #scheme 2020-09-09T17:02:38Z badkins joined #scheme 2020-09-09T17:15:15Z aaaaaa joined #scheme 2020-09-09T17:29:38Z jobol quit (Quit: Leaving) 2020-09-09T17:38:41Z hugh_marera quit (Quit: hugh_marera) 2020-09-09T17:38:59Z hugh_marera joined #scheme 2020-09-09T17:45:15Z ArneBab quit (Remote host closed the connection) 2020-09-09T17:46:29Z ArneBab joined #scheme 2020-09-09T17:46:29Z ArneBab quit (Changing host) 2020-09-09T17:46:29Z ArneBab joined #scheme 2020-09-09T17:47:23Z Zipheir: If you're going to be looking up signed integers in a trie-like structure, is there some way to correctly extend bitwise which work on unsigned ints to this case, or would you convert them to byte/bitvectors for simplicity? 2020-09-09T17:48:22Z Zipheir: If the latter, can you think of a way to avoid treating them as fixed-length bit strings? 2020-09-09T17:48:33Z dbmikus quit (Quit: WeeChat 2.9) 2020-09-09T17:48:37Z Zipheir: Bitwise *operations*, even. 2020-09-09T17:48:54Z Riastradh: You could have two tries, one for negatives and one for nonnegatives? 2020-09-09T17:49:02Z Zipheir: Yes, that's a way. 2020-09-09T17:50:01Z Zipheir: That's actually the best approach I can think of at the moment. 2020-09-09T17:50:08Z daviid joined #scheme 2020-09-09T17:50:28Z daviid is now known as Guest18371 2020-09-09T17:50:55Z ArneBab quit (Remote host closed the connection) 2020-09-09T17:51:46Z theseb quit (Quit: Leaving) 2020-09-09T17:52:11Z ArneBab joined #scheme 2020-09-09T17:52:11Z ArneBab quit (Changing host) 2020-09-09T17:52:11Z ArneBab joined #scheme 2020-09-09T17:54:24Z Zipheir: The kind of structure I'm thinking of is the Okasaki-Gill Patricia-tree from http://ittc.ku.edu/~andygill/papers/IntMap98.pdf . The paper is sweet and short, in length and on details. 2020-09-09T17:55:24Z Zipheir: That's a bit harsh. They go into detail, but a few crucial things are missing. 2020-09-09T17:55:25Z abralek[m] quit (Ping timeout: 264 seconds) 2020-09-09T17:55:35Z ArneBab quit (Remote host closed the connection) 2020-09-09T17:56:00Z abralek[m] joined #scheme 2020-09-09T17:56:25Z jcowan: That's so they can patent them later. 1/2 :-) 2020-09-09T17:56:49Z ArneBab joined #scheme 2020-09-09T17:56:49Z ArneBab quit (Changing host) 2020-09-09T17:56:49Z ArneBab joined #scheme 2020-09-09T17:56:57Z jcowan: But more likely a case of "what's obvs to me is not obvs to you" 2020-09-09T17:57:32Z jcowan: I've always thought ternary search trees were cool for long Unicode strings. 2020-09-09T17:57:59Z jcowan: basically a trie in which the huge potential fanout is dealt with by becoming a binary search tree. 2020-09-09T17:58:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-09T17:59:02Z hugh_marera quit (Quit: hugh_marera) 2020-09-09T17:59:14Z jcowan: Basically each node holds a character and three pointers: left, right, and straight down. If the character you are looking for is too small (in Unicode order), keep it and go left; if it is too big, keep it and go right, otherwise discard it as matched and go straight down. 2020-09-09T17:59:19Z hugh_marera joined #scheme 2020-09-09T17:59:54Z jcowan: It has the advantage over hashing that you don't have to pre-examine all the characters in order to hash them. (The character slot also has to allow an end-of-string marker.) 2020-09-09T17:59:55Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-09T18:00:02Z abralek[m] joined #scheme 2020-09-09T18:00:33Z jcowan: However, most long texts have very restricted vocabs, so while it is a general solution, it is beaten on all sides by specific solutions. 2020-09-09T18:01:13Z hendursaga joined #scheme 2020-09-09T18:01:31Z Riastradh: How does that improve on critbit trees? 2020-09-09T18:01:38Z jcowan: also the description is very much like Goldilocks and the Three Bears 2020-09-09T18:01:54Z Riastradh: Sounds like you may still have to examine lots of characters that the set of keys doesn't actually discriminate on? 2020-09-09T18:02:06Z Riastradh: (and by `examine' I mean `have branches for') 2020-09-09T18:02:06Z Zipheir: Riastradh: Interesting, it's hard to find any references to critbit trees outside of your implementation. 2020-09-09T18:02:16Z Zipheir: Interestingly, even. 2020-09-09T18:02:21Z Riastradh: Zipheir: https://cr.yp.to/critbit.html 2020-09-09T18:03:27Z Zipheir: Riastradh: Thanks. 2020-09-09T18:03:42Z Zipheir: Maybe I should add a WP page. 2020-09-09T18:04:57Z Riastradh: (djb's critbit code assumes NUL-terminated strings; mine encodes a finite string of octets, e.g. 2d 35 00 08, as the infinite string of 9-bit units 12d 13f 100 108 000 000 000 000 .... 2020-09-09T18:05:01Z Riastradh: ) 2020-09-09T18:05:20Z jcowan: What does "prefix-free" mean? Does that mean that no string can be a prefix of another string? 2020-09-09T18:05:34Z Riastradh: jcowan: correct 2020-09-09T18:06:16Z Riastradh: (hence the encoding requirements: fixed-length, or NUL-terminated, or encoded with #x100 as above) 2020-09-09T18:06:28Z abralek[m] quit (Ping timeout: 246 seconds) 2020-09-09T18:06:53Z Zipheir: Riastradh: So when storing integers, you'd have to pick a length? 2020-09-09T18:07:09Z abralek[m] joined #scheme 2020-09-09T18:08:29Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-09T18:08:30Z jcowan: You could use a byte which is simultaneously the sign bit and the terminator 2020-09-09T18:08:40Z abralek[m] joined #scheme 2020-09-09T18:09:13Z Riastradh: Zipheir: You could do that, or you could encode them as variable-length octet strings like the above, or -- if you don't mind losing lexicographic order -- you could reverse the bits (and handle only nonnegatives in a single trie, or use the first bit to discriminate). 2020-09-09T18:10:38Z Zipheir: Riastradh: Interesting, thanks. 2020-09-09T18:12:29Z Riastradh: I also made a variant I called `cradix trees' -- which I limited to fixed-length keys to avoid having to deal with the 0x100 | x encoding, but in principle you could still do that -- where each branch discriminates on up to (say) 5 consecutive bits at a time, but you only need to allocate storage for as many child pointers as you actually have in each branch. 2020-09-09T18:13:09Z Riastradh: It should have much better cache utilization for many workloads, owing to the larger fanout and smaller depths. 2020-09-09T18:14:07Z Riastradh: https://mumble.net/~campbell/hg/critbit, https://mumble.net/~campbell/hg/cradix 2020-09-09T18:14:18Z dbmikus joined #scheme 2020-09-09T18:15:15Z ArneBab quit (Read error: Connection reset by peer) 2020-09-09T18:15:58Z jcowan: Variable length encoding for non-negative integers is nice: 7 bits per byte, high-order bit is 1 for non-last, 0 for last. Both BE and LE versions are (unfortunately) in use. 2020-09-09T18:16:31Z ArneBab joined #scheme 2020-09-09T18:16:31Z ArneBab quit (Changing host) 2020-09-09T18:16:31Z ArneBab joined #scheme 2020-09-09T18:17:37Z Oddity_ quit (Ping timeout: 260 seconds) 2020-09-09T18:18:18Z jcowan: https://en.wikipedia.org/wiki/Variable-length_quantity for details 2020-09-09T18:19:05Z ByronJohnson quit (Ping timeout: 246 seconds) 2020-09-09T18:19:52Z ByronJohnson joined #scheme 2020-09-09T18:22:33Z Oddity joined #scheme 2020-09-09T18:27:28Z skapata left #scheme 2020-09-09T18:34:39Z Zipheir: Thanks, all. Lots of approaches to consider. 2020-09-09T18:43:37Z terpri quit (Ping timeout: 260 seconds) 2020-09-09T18:46:06Z terpri joined #scheme 2020-09-09T18:46:55Z ArneBab quit (Remote host closed the connection) 2020-09-09T18:48:11Z ArneBab joined #scheme 2020-09-09T18:48:11Z ArneBab quit (Changing host) 2020-09-09T18:48:11Z ArneBab joined #scheme 2020-09-09T18:49:14Z terpri_ joined #scheme 2020-09-09T18:50:37Z terpri quit (Read error: Connection reset by peer) 2020-09-09T18:56:18Z muelleme joined #scheme 2020-09-09T18:57:26Z terpri joined #scheme 2020-09-09T18:57:37Z terpri_ quit (Ping timeout: 260 seconds) 2020-09-09T19:00:49Z rgherdt quit (Quit: Leaving) 2020-09-09T19:01:54Z xelxebar quit (Remote host closed the connection) 2020-09-09T19:02:17Z xelxebar joined #scheme 2020-09-09T19:04:16Z terpri_ joined #scheme 2020-09-09T19:04:17Z terpri quit (Ping timeout: 260 seconds) 2020-09-09T19:04:36Z gravicappa quit (Ping timeout: 258 seconds) 2020-09-09T19:04:38Z gmaggior joined #scheme 2020-09-09T19:07:10Z gravicappa joined #scheme 2020-09-09T19:13:03Z terpri_ quit (Ping timeout: 260 seconds) 2020-09-09T19:18:52Z terpri joined #scheme 2020-09-09T19:20:46Z ggole quit (Quit: Leaving) 2020-09-09T19:22:33Z terpri_ joined #scheme 2020-09-09T19:23:18Z terpri quit (Ping timeout: 244 seconds) 2020-09-09T19:30:26Z muelleme quit (Ping timeout: 265 seconds) 2020-09-09T19:33:30Z phillbush joined #scheme 2020-09-09T19:35:42Z aeth quit (Ping timeout: 256 seconds) 2020-09-09T19:37:25Z aeth joined #scheme 2020-09-09T19:39:55Z arew: gambit does expose a debugger inside a browser popup with an input, ok button, and cancel button 2020-09-09T19:47:51Z jcowan: Perhaps a prefixed length is TRT for crit-bit trees, since it enables you to dismiss wrong-length strings very fast. 2020-09-09T19:54:41Z srandon111 joined #scheme 2020-09-09T20:06:25Z arew quit (Quit: WeeChat 2.8) 2020-09-09T20:07:16Z badkins quit (Remote host closed the connection) 2020-09-09T20:08:05Z ArneBab quit (Remote host closed the connection) 2020-09-09T20:09:20Z ArneBab joined #scheme 2020-09-09T20:09:20Z ArneBab quit (Changing host) 2020-09-09T20:09:20Z ArneBab joined #scheme 2020-09-09T20:09:20Z badkins joined #scheme 2020-09-09T20:10:29Z ArneBab quit (Client Quit) 2020-09-09T20:12:25Z choas quit (Ping timeout: 240 seconds) 2020-09-09T20:12:54Z laertus joined #scheme 2020-09-09T20:13:17Z rgherdt joined #scheme 2020-09-09T20:13:23Z laertus: is there an easy way to find the difference between two flat lists of strings? 2020-09-09T20:13:45Z jcowan: Sort them. 2020-09-09T20:13:46Z laertus: (in my use case, it can be assumed that the lists differ by only one element) 2020-09-09T20:13:52Z badkins quit (Ping timeout: 246 seconds) 2020-09-09T20:14:02Z jcowan: Same length, then? 2020-09-09T20:14:13Z jcowan: (the lists, not the strings) 2020-09-09T20:14:25Z hugh_marera quit (Quit: hugh_marera) 2020-09-09T20:14:46Z laertus: actually, different lengths 2020-09-09T20:14:56Z hugh_marera joined #scheme 2020-09-09T20:14:59Z rain1: hmm 2020-09-09T20:15:30Z laertus: one of the lists will be the same as the other except for one additional element 2020-09-09T20:15:44Z rain1: you can put the smaller list into a data strucutre thath supports fast lookup 2020-09-09T20:15:48Z laertus: and now i just realized that the function which creates the larger list from the smaller list always appends to the head of the list 2020-09-09T20:15:57Z laertus: so i can actually just take the head... doh! 2020-09-09T20:16:01Z rain1: then loop through the bigger list, checking if each element is in the data structure 2020-09-09T20:16:15Z rain1: even better :) 2020-09-09T20:16:23Z laertus: yep :) 2020-09-09T20:21:53Z choas joined #scheme 2020-09-09T20:22:11Z terpri_ quit (Remote host closed the connection) 2020-09-09T20:22:37Z terpri_ joined #scheme 2020-09-09T20:22:56Z choas quit (Remote host closed the connection) 2020-09-09T20:23:05Z laertus left #scheme 2020-09-09T20:23:40Z lritter quit (Ping timeout: 246 seconds) 2020-09-09T20:23:43Z choas joined #scheme 2020-09-09T20:24:34Z jcowan: Oh, I thought you meant just one of the strings was different. Saying "of strings" kinda confuses the issue. 2020-09-09T20:30:48Z lritter joined #scheme 2020-09-09T20:37:22Z arew joined #scheme 2020-09-09T20:40:12Z Blukunfando quit (Remote host closed the connection) 2020-09-09T20:44:10Z Guest35 joined #scheme 2020-09-09T20:46:51Z Guest35 left #scheme 2020-09-09T20:50:25Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-09T20:50:52Z Blukunfando joined #scheme 2020-09-09T20:56:17Z rain1: https://www.aoeu2code.com/post/251 2020-09-09T20:59:46Z hugh_marera quit (Quit: hugh_marera) 2020-09-09T21:00:07Z hugh_marera joined #scheme 2020-09-09T21:00:07Z hugh_marera quit (Remote host closed the connection) 2020-09-09T21:00:27Z hugh_marera joined #scheme 2020-09-09T21:03:43Z dbmikus joined #scheme 2020-09-09T21:13:27Z phillbush quit (Quit: Leaving) 2020-09-09T21:15:23Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-09T21:15:36Z hugh_marera quit (Quit: hugh_marera) 2020-09-09T21:29:34Z aaaaaa quit (Quit: leaving) 2020-09-09T21:32:20Z lavaflow quit (Quit: l8r) 2020-09-09T21:32:58Z jcowan: Oh, Ghu! Wholly illegible. 2020-09-09T21:35:05Z jcowan: Select All actually makes it worse 2020-09-09T21:35:43Z jcowan: and requires JS 2020-09-09T21:35:45Z jcowan: feh! 2020-09-09T22:05:22Z lavaflow joined #scheme 2020-09-09T22:10:41Z badkins joined #scheme 2020-09-09T22:11:01Z lritter quit (Quit: Leaving) 2020-09-09T22:14:59Z badkins quit (Ping timeout: 240 seconds) 2020-09-09T22:15:38Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-09T22:21:34Z badkins joined #scheme 2020-09-09T22:31:20Z Guest18371 quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-09T22:34:14Z daviid joined #scheme 2020-09-09T22:42:11Z phillbush joined #scheme 2020-09-09T22:42:56Z dbmikus joined #scheme 2020-09-09T22:52:05Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-09T23:03:03Z lavaflow quit (Quit: WeeChat 2.9) 2020-09-09T23:03:45Z lavaflow joined #scheme 2020-09-09T23:07:20Z skapata joined #scheme 2020-09-09T23:08:04Z skapata left #scheme 2020-09-09T23:27:00Z badkins quit (Remote host closed the connection) 2020-09-09T23:27:33Z badkins joined #scheme 2020-09-09T23:32:03Z gmaggior quit (Quit: Leaving) 2020-09-09T23:32:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-09T23:47:26Z mdhughes: Down Styphon! 2020-09-10T00:02:55Z badkins joined #scheme 2020-09-10T00:06:17Z aeth quit (Ping timeout: 258 seconds) 2020-09-10T00:08:09Z aeth joined #scheme 2020-09-10T00:37:43Z epony quit (Quit: reconfigure..nwo) 2020-09-10T00:37:56Z aaaaaa joined #scheme 2020-09-10T00:38:46Z epony joined #scheme 2020-09-10T00:38:56Z fadein quit (Ping timeout: 256 seconds) 2020-09-10T00:40:52Z fadein joined #scheme 2020-09-10T00:54:40Z phillbush quit (Quit: Leaving) 2020-09-10T00:54:56Z srandon111 quit (Remote host closed the connection) 2020-09-10T01:05:37Z dbmikus quit (Ping timeout: 264 seconds) 2020-09-10T01:19:51Z badkins quit (Remote host closed the connection) 2020-09-10T01:20:31Z badkins joined #scheme 2020-09-10T01:22:43Z Oddity quit (Remote host closed the connection) 2020-09-10T01:23:12Z Oddity joined #scheme 2020-09-10T01:25:25Z badkins quit (Ping timeout: 264 seconds) 2020-09-10T01:36:31Z vinvin quit (Quit: bye free world!) 2020-09-10T01:51:19Z phillbush joined #scheme 2020-09-10T02:31:21Z phillbush quit (Quit: Leaving) 2020-09-10T02:39:21Z deesix_ joined #scheme 2020-09-10T02:42:24Z deesix quit (Ping timeout: 256 seconds) 2020-09-10T02:45:04Z montxero quit (Remote host closed the connection) 2020-09-10T03:03:00Z aaaaaa quit (Ping timeout: 258 seconds) 2020-09-10T03:07:34Z aaaaaa joined #scheme 2020-09-10T03:09:47Z aaaaaa quit (Client Quit) 2020-09-10T03:22:00Z badkins joined #scheme 2020-09-10T03:26:36Z badkins quit (Ping timeout: 256 seconds) 2020-09-10T03:58:56Z klovett_ quit (Remote host closed the connection) 2020-09-10T03:59:30Z klovett joined #scheme 2020-09-10T04:02:44Z abralek[m] quit (Ping timeout: 260 seconds) 2020-09-10T04:04:57Z torbo joined #scheme 2020-09-10T04:07:25Z seepel quit (Ping timeout: 246 seconds) 2020-09-10T04:14:19Z torbo quit (Remote host closed the connection) 2020-09-10T04:14:32Z terpri_ quit (Remote host closed the connection) 2020-09-10T04:14:37Z terpri__ joined #scheme 2020-09-10T04:18:46Z gravicappa joined #scheme 2020-09-10T04:30:59Z klovett quit (Remote host closed the connection) 2020-09-10T04:31:18Z klovett joined #scheme 2020-09-10T04:35:47Z terpri__ is now known as terpri 2020-09-10T05:22:48Z badkins joined #scheme 2020-09-10T05:27:21Z badkins quit (Ping timeout: 265 seconds) 2020-09-10T05:46:17Z ggole joined #scheme 2020-09-10T06:41:38Z gravicappa quit (Read error: No route to host) 2020-09-10T07:05:37Z daviid quit (Ping timeout: 264 seconds) 2020-09-10T07:10:36Z arew quit (Quit: WeeChat 2.8) 2020-09-10T07:19:34Z dbmikus joined #scheme 2020-09-10T07:23:58Z badkins joined #scheme 2020-09-10T07:28:19Z badkins quit (Ping timeout: 246 seconds) 2020-09-10T07:33:25Z montxero joined #scheme 2020-09-10T07:37:24Z civodul joined #scheme 2020-09-10T07:38:01Z dbmikus quit (Ping timeout: 264 seconds) 2020-09-10T07:45:36Z Guest81071 quit (Changing host) 2020-09-10T07:45:36Z Guest81071 joined #scheme 2020-09-10T07:45:51Z Guest81071 is now known as C-Keen 2020-09-10T07:46:41Z amirouche joined #scheme 2020-09-10T08:10:15Z hendursa1 joined #scheme 2020-09-10T08:10:53Z hendursa1 quit (Remote host closed the connection) 2020-09-10T08:11:55Z hendursa1 joined #scheme 2020-09-10T08:12:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-10T08:21:15Z dbmikus joined #scheme 2020-09-10T08:25:23Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-10T08:35:22Z montxero quit (Remote host closed the connection) 2020-09-10T08:40:47Z montxero joined #scheme 2020-09-10T08:45:04Z cpressey joined #scheme 2020-09-10T08:48:48Z gravicappa joined #scheme 2020-09-10T09:03:48Z rgherdt joined #scheme 2020-09-10T09:18:59Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-10T09:25:06Z gravicappa joined #scheme 2020-09-10T09:50:48Z amirouche quit (Quit: WeeChat 2.8) 2020-09-10T09:52:23Z notzmv quit (Read error: Connection reset by peer) 2020-09-10T09:53:01Z notzmv joined #scheme 2020-09-10T09:53:02Z notzmv is now known as Guest32337 2020-09-10T10:05:43Z madage quit (Ping timeout: 240 seconds) 2020-09-10T10:14:30Z madage joined #scheme 2020-09-10T10:17:34Z hugh_marera joined #scheme 2020-09-10T10:23:04Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T10:23:20Z hugh_marera joined #scheme 2020-09-10T10:25:17Z arew joined #scheme 2020-09-10T10:34:43Z rgherdt_ joined #scheme 2020-09-10T10:35:00Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-10T10:37:23Z gravicappa joined #scheme 2020-09-10T10:37:31Z rgherdt_ quit (Client Quit) 2020-09-10T10:37:57Z dbmikus joined #scheme 2020-09-10T10:42:26Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-10T10:43:24Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T10:43:41Z hugh_marera joined #scheme 2020-09-10T10:50:40Z dmiles quit (Ping timeout: 258 seconds) 2020-09-10T10:54:19Z dmiles joined #scheme 2020-09-10T10:57:23Z madage quit (Ping timeout: 240 seconds) 2020-09-10T11:02:18Z bitmapper quit (Ping timeout: 265 seconds) 2020-09-10T11:03:45Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T11:04:01Z hugh_marera joined #scheme 2020-09-10T11:07:47Z madage joined #scheme 2020-09-10T11:08:26Z brendyyn joined #scheme 2020-09-10T11:09:26Z raingloom joined #scheme 2020-09-10T11:13:43Z madage quit (Ping timeout: 240 seconds) 2020-09-10T11:14:05Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T11:14:24Z hugh_marera joined #scheme 2020-09-10T11:15:56Z madage joined #scheme 2020-09-10T11:17:53Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-10T11:20:25Z gravicappa joined #scheme 2020-09-10T11:25:25Z badkins joined #scheme 2020-09-10T11:30:08Z badkins quit (Ping timeout: 260 seconds) 2020-09-10T11:31:25Z ArneBab joined #scheme 2020-09-10T11:46:17Z ArneBab quit (Remote host closed the connection) 2020-09-10T11:47:33Z ArneBab joined #scheme 2020-09-10T11:47:33Z ArneBab quit (Changing host) 2020-09-10T11:47:33Z ArneBab joined #scheme 2020-09-10T11:52:34Z hendursa1 quit (Quit: hendursa1) 2020-09-10T11:52:59Z hendursaga joined #scheme 2020-09-10T11:54:26Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T11:54:54Z hugh_marera joined #scheme 2020-09-10T12:01:35Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T12:02:32Z cpressey quit (Quit: Lunch) 2020-09-10T12:08:27Z ArneBab quit (Remote host closed the connection) 2020-09-10T12:09:43Z ArneBab joined #scheme 2020-09-10T12:11:24Z acarrico quit (Ping timeout: 256 seconds) 2020-09-10T12:11:41Z civodul quit (Quit: rebooting Emacs...) 2020-09-10T12:14:07Z ArneBab quit (Read error: Connection reset by peer) 2020-09-10T12:14:24Z ArneBab joined #scheme 2020-09-10T12:14:24Z ArneBab quit (Changing host) 2020-09-10T12:14:25Z ArneBab joined #scheme 2020-09-10T12:15:04Z civodul joined #scheme 2020-09-10T12:17:51Z sm2n quit (Quit: Leaving) 2020-09-10T12:17:52Z arew quit (Quit: WeeChat 2.8) 2020-09-10T12:29:38Z Guest323` joined #scheme 2020-09-10T12:32:41Z Guest32337 quit (Ping timeout: 265 seconds) 2020-09-10T12:35:27Z ArneBab quit (Ping timeout: 260 seconds) 2020-09-10T12:35:48Z ArneBab joined #scheme 2020-09-10T12:35:48Z ArneBab quit (Changing host) 2020-09-10T12:35:48Z ArneBab joined #scheme 2020-09-10T12:37:02Z Guest323` quit (Ping timeout: 265 seconds) 2020-09-10T12:38:49Z dbmikus joined #scheme 2020-09-10T12:43:19Z dbmikus quit (Ping timeout: 265 seconds) 2020-09-10T12:44:41Z ArneBab quit (Remote host closed the connection) 2020-09-10T12:45:55Z ArneBab joined #scheme 2020-09-10T12:45:55Z ArneBab quit (Changing host) 2020-09-10T12:45:55Z ArneBab joined #scheme 2020-09-10T12:49:15Z ArneBab quit (Excess Flood) 2020-09-10T12:49:29Z Guest323` joined #scheme 2020-09-10T12:49:34Z ArneBab joined #scheme 2020-09-10T12:50:18Z Guest323` is now known as notzmv 2020-09-10T12:50:29Z notzmv quit (Changing host) 2020-09-10T12:50:29Z notzmv joined #scheme 2020-09-10T12:54:39Z dbmikus joined #scheme 2020-09-10T12:54:58Z ArneBab quit (Remote host closed the connection) 2020-09-10T12:56:14Z ArneBab joined #scheme 2020-09-10T12:56:14Z ArneBab quit (Changing host) 2020-09-10T12:56:14Z ArneBab joined #scheme 2020-09-10T12:56:35Z lritter joined #scheme 2020-09-10T12:57:56Z Blukunfando quit (Ping timeout: 258 seconds) 2020-09-10T12:58:45Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-10T13:00:56Z cpressey joined #scheme 2020-09-10T13:01:38Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-10T13:02:21Z sm2n joined #scheme 2020-09-10T13:06:45Z brendyyn quit (Ping timeout: 258 seconds) 2020-09-10T13:08:44Z cpressey quit (Ping timeout: 260 seconds) 2020-09-10T13:08:51Z cpressey joined #scheme 2020-09-10T13:13:32Z notzmv` joined #scheme 2020-09-10T13:13:52Z acarrico joined #scheme 2020-09-10T13:16:05Z notzmv quit (Ping timeout: 240 seconds) 2020-09-10T13:22:01Z X-Scale` joined #scheme 2020-09-10T13:22:38Z ArneBab quit (Remote host closed the connection) 2020-09-10T13:23:51Z ArneBab joined #scheme 2020-09-10T13:24:11Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-10T13:24:11Z X-Scale` is now known as X-Scale 2020-09-10T13:26:35Z badkins joined #scheme 2020-09-10T13:29:18Z ArneBab quit (Remote host closed the connection) 2020-09-10T13:30:33Z ArneBab joined #scheme 2020-09-10T13:31:18Z badkins quit (Ping timeout: 256 seconds) 2020-09-10T13:34:24Z Blukunfando joined #scheme 2020-09-10T13:37:13Z ArneBab quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) 2020-09-10T13:54:22Z aeth quit (Ping timeout: 265 seconds) 2020-09-10T13:56:00Z aeth joined #scheme 2020-09-10T13:56:21Z notzmv` is now known as notzmv 2020-09-10T13:56:43Z notzmv quit (Changing host) 2020-09-10T13:56:43Z notzmv joined #scheme 2020-09-10T14:01:30Z aeth quit (Ping timeout: 256 seconds) 2020-09-10T14:02:23Z madage quit (Ping timeout: 240 seconds) 2020-09-10T14:02:31Z aeth joined #scheme 2020-09-10T14:07:57Z civodul joined #scheme 2020-09-10T14:08:01Z acarrico quit (Ping timeout: 264 seconds) 2020-09-10T14:10:36Z badkins joined #scheme 2020-09-10T14:16:31Z edgar-rft quit (Quit: Leaving) 2020-09-10T14:20:51Z phillbush joined #scheme 2020-09-10T14:22:15Z X-Scale` joined #scheme 2020-09-10T14:22:25Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-10T14:23:21Z X-Scale` is now known as X-Scale 2020-09-10T14:30:14Z tryte_ joined #scheme 2020-09-10T14:30:23Z tryte quit (Ping timeout: 240 seconds) 2020-09-10T14:52:33Z aeth quit (Ping timeout: 260 seconds) 2020-09-10T14:54:31Z aeth joined #scheme 2020-09-10T15:11:19Z dbmikus joined #scheme 2020-09-10T15:12:09Z madage joined #scheme 2020-09-10T15:16:08Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-10T15:48:18Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-10T15:58:41Z badkins quit (Remote host closed the connection) 2020-09-10T16:00:15Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-10T16:24:37Z arew joined #scheme 2020-09-10T16:29:51Z dbmikus joined #scheme 2020-09-10T16:34:00Z hugh_marera joined #scheme 2020-09-10T16:34:02Z bitmapper joined #scheme 2020-09-10T16:34:31Z dbmikus quit (Ping timeout: 258 seconds) 2020-09-10T16:34:56Z badkins joined #scheme 2020-09-10T16:41:02Z rgherdt quit (Quit: Leaving) 2020-09-10T16:45:36Z dbmikus joined #scheme 2020-09-10T16:50:08Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-10T17:02:14Z dbmikus joined #scheme 2020-09-10T17:05:54Z skapata joined #scheme 2020-09-10T17:21:45Z skapata quit (Ping timeout: 244 seconds) 2020-09-10T17:35:16Z terpri quit (Remote host closed the connection) 2020-09-10T17:36:16Z terpri joined #scheme 2020-09-10T17:41:13Z badkins quit (Remote host closed the connection) 2020-09-10T17:46:52Z ohama quit (Ping timeout: 256 seconds) 2020-09-10T17:47:28Z ohama joined #scheme 2020-09-10T18:02:08Z badkins joined #scheme 2020-09-10T18:06:26Z acarrico joined #scheme 2020-09-10T18:20:22Z daviid joined #scheme 2020-09-10T18:31:31Z even4void joined #scheme 2020-09-10T18:37:26Z gmaggior joined #scheme 2020-09-10T18:49:47Z even4void quit (Ping timeout: 240 seconds) 2020-09-10T18:53:53Z even4void joined #scheme 2020-09-10T18:55:32Z even4void quit (Remote host closed the connection) 2020-09-10T18:57:12Z gmaggior quit (Read error: Connection reset by peer) 2020-09-10T18:57:41Z gmaggior joined #scheme 2020-09-10T18:58:43Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-10T19:00:47Z gravicappa joined #scheme 2020-09-10T19:11:09Z edgar-rft joined #scheme 2020-09-10T19:19:39Z badkins quit (Remote host closed the connection) 2020-09-10T19:19:55Z badkins joined #scheme 2020-09-10T19:29:05Z Martha25 joined #scheme 2020-09-10T19:33:00Z Martha25 quit (Disconnected by services) 2020-09-10T19:33:58Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-10T19:37:21Z dbmikus joined #scheme 2020-09-10T19:38:04Z muelleme joined #scheme 2020-09-10T19:47:08Z aaaaaa joined #scheme 2020-09-10T19:48:18Z aaaaaa: Hi all. I have a list like (list 'a 'b 'c) and I want to evaluate some f(): (f 'c (f 'b (f input 'c))). is it a function composition? What should I do? 2020-09-10T19:50:39Z aeth: that looks like function composition with currying, e.g. of curry is ((curry + 1) 2) => 3 2020-09-10T19:50:46Z aeth: Your Scheme might have it, if it doesn't it's not too hard to define 2020-09-10T19:54:13Z aeth: You have to use something like currying to get a function with some constant inputs and a variable input into a function with one input (variable) 2020-09-10T19:54:50Z rain1: it is called fold-right 2020-09-10T19:55:23Z muelleme quit (Ping timeout: 258 seconds) 2020-09-10T19:55:29Z aeth: In Racket, because it has a procedure called curry built in: ((curry + 1) 2) or manually as ((lambda (x) (+ 1 x)) 2) although to be fair I'm cheating with + because I don't need to know if it's (+ 1 x) or (+ x 1) 2020-09-10T19:56:41Z aaaaaa: thanks! 2020-09-10T19:57:34Z aeth: rain1: Specifically for the special case of it all being f, you can use a fold, but I think that's only true if f is commutative like + because it's (f input 'c) and not (f 'c input) in the final call. 2020-09-10T19:57:40Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T19:57:59Z hugh_marera joined #scheme 2020-09-10T19:58:05Z rain1: oh good point 2020-09-10T19:58:12Z rain1: fold right would give (f 'c (f 'b (f 'c input))) 2020-09-10T19:58:35Z rain1: aaaaaa: are you sure you want (f input 'c) at the end? 2020-09-10T19:58:49Z aeth: With the specific example given, to use compose, you'd have to mix curry/rcurry. Although Racket doesn't have an rcurry, so I wonder what it's called there, if it has it. 2020-09-10T20:00:01Z aeth: The problem with Lisps is that the names are never consistent, especially between dialects. 2020-09-10T20:04:40Z ggole quit (Quit: Leaving) 2020-09-10T20:06:09Z notzmv` joined #scheme 2020-09-10T20:09:26Z notzmv quit (Ping timeout: 265 seconds) 2020-09-10T20:15:18Z notzmv`` joined #scheme 2020-09-10T20:17:45Z notzmv` quit (Ping timeout: 240 seconds) 2020-09-10T20:29:06Z lritter quit (Ping timeout: 256 seconds) 2020-09-10T20:33:36Z phillbush quit (Quit: Leaving) 2020-09-10T20:35:22Z lritter joined #scheme 2020-09-10T20:42:28Z aeth_ joined #scheme 2020-09-10T20:42:33Z aeth quit (Ping timeout: 260 seconds) 2020-09-10T20:44:14Z aeth_ is now known as aeth 2020-09-10T20:50:40Z hugh_marera quit (Read error: Connection reset by peer) 2020-09-10T20:51:25Z hugh_marera joined #scheme 2020-09-10T20:58:59Z phwalkr joined #scheme 2020-09-10T21:27:48Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-10T21:32:26Z daviid quit (Read error: Connection reset by peer) 2020-09-10T21:34:02Z Zipheir: fold/fold-right pass arguments to kons in a weird order. Passing the accumulated value first is preferable to me for all variadic folds. 2020-09-10T21:34:14Z daviid joined #scheme 2020-09-10T21:52:43Z aaaaaa: No. fold doesn't take arbitrary list on input. My list can be (list 9 5 4 3 etc) 2020-09-10T21:54:43Z aaaaaa: Oh no. My mistake. Fold can take a list on input. My bad. Please ignore me. 2020-09-10T21:55:22Z aaaaaa: and thanks 2020-09-10T22:03:56Z Zipheir: aaaaaa: What do you mean by "on input"? 2020-09-10T22:05:35Z hugh_marera quit (Quit: hugh_marera) 2020-09-10T22:22:35Z srandon111 joined #scheme 2020-09-10T22:36:56Z torbo joined #scheme 2020-09-10T22:44:11Z notzmv`` is now known as notzmv 2020-09-10T22:44:16Z notzmv quit (Changing host) 2020-09-10T22:44:16Z notzmv joined #scheme 2020-09-10T22:56:55Z phwalkr quit 2020-09-10T22:58:29Z lritter quit (Ping timeout: 260 seconds) 2020-09-10T23:19:29Z badkins quit (Remote host closed the connection) 2020-09-10T23:20:06Z badkins joined #scheme 2020-09-10T23:22:25Z gmaggior quit (Quit: Leaving) 2020-09-10T23:24:52Z badkins quit (Ping timeout: 246 seconds) 2020-09-10T23:26:14Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-10T23:28:41Z dbmikus joined #scheme 2020-09-10T23:38:23Z madage quit (Ping timeout: 240 seconds) 2020-09-10T23:43:07Z madage joined #scheme 2020-09-10T23:46:31Z madage quit (Remote host closed the connection) 2020-09-10T23:51:19Z madage joined #scheme 2020-09-11T00:03:58Z seepel joined #scheme 2020-09-11T00:04:26Z seepel quit (Remote host closed the connection) 2020-09-11T00:11:28Z xelxebar quit (Remote host closed the connection) 2020-09-11T00:11:50Z xelxebar joined #scheme 2020-09-11T00:13:27Z seepel joined #scheme 2020-09-11T00:19:42Z evdubs quit (Quit: Leaving) 2020-09-11T00:22:25Z evdubs joined #scheme 2020-09-11T00:30:39Z dbmikus quit (Ping timeout: 260 seconds) 2020-09-11T00:41:34Z edgar-rft quit (Quit: Leaving) 2020-09-11T01:11:58Z raingloom quit (Ping timeout: 246 seconds) 2020-09-11T01:21:45Z badkins joined #scheme 2020-09-11T01:25:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-11T01:37:58Z klovett quit (Remote host closed the connection) 2020-09-11T01:38:36Z klovett joined #scheme 2020-09-11T01:41:08Z mason left #scheme 2020-09-11T01:41:09Z seepel quit (Ping timeout: 258 seconds) 2020-09-11T01:43:36Z seepel joined #scheme 2020-09-11T01:45:28Z hugh_marera joined #scheme 2020-09-11T01:48:05Z hugh_marera quit (Client Quit) 2020-09-11T01:52:07Z cchristiansen joined #scheme 2020-09-11T02:00:48Z phillbush joined #scheme 2020-09-11T02:02:44Z dbmikus joined #scheme 2020-09-11T02:07:44Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-11T02:28:00Z klovett quit (Remote host closed the connection) 2020-09-11T02:28:19Z klovett joined #scheme 2020-09-11T02:36:41Z badkins joined #scheme 2020-09-11T02:36:52Z badkins quit (Remote host closed the connection) 2020-09-11T02:38:50Z badkins joined #scheme 2020-09-11T02:44:01Z badkins quit (Ping timeout: 264 seconds) 2020-09-11T03:30:09Z phillbush quit (Quit: Leaving) 2020-09-11T03:33:25Z xelxebar_ joined #scheme 2020-09-11T03:33:43Z xelxebar quit (Ping timeout: 240 seconds) 2020-09-11T04:02:25Z xelxebar_ quit (Remote host closed the connection) 2020-09-11T04:02:47Z xelxebar joined #scheme 2020-09-11T04:25:45Z friscosam quit (Ping timeout: 240 seconds) 2020-09-11T04:33:36Z friscosam joined #scheme 2020-09-11T04:37:09Z gravicappa joined #scheme 2020-09-11T04:39:57Z notzmv quit (Remote host closed the connection) 2020-09-11T04:40:05Z badkins joined #scheme 2020-09-11T04:42:49Z seepel quit (Ping timeout: 264 seconds) 2020-09-11T04:44:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-11T05:14:20Z seepel joined #scheme 2020-09-11T05:18:18Z torbo quit (Remote host closed the connection) 2020-09-11T05:31:29Z brendyyn joined #scheme 2020-09-11T05:41:37Z seepel quit (Ping timeout: 264 seconds) 2020-09-11T06:11:37Z ggole joined #scheme 2020-09-11T06:11:59Z dmiles quit (Read error: No route to host) 2020-09-11T06:14:57Z skapata joined #scheme 2020-09-11T06:15:02Z dmiles joined #scheme 2020-09-11T06:16:33Z skapata left #scheme 2020-09-11T06:23:45Z gnomon quit (Ping timeout: 265 seconds) 2020-09-11T06:27:16Z fadein_ joined #scheme 2020-09-11T06:29:04Z fadein quit (Ping timeout: 265 seconds) 2020-09-11T06:31:52Z fadein_ quit (Ping timeout: 256 seconds) 2020-09-11T06:32:13Z fadein joined #scheme 2020-09-11T06:41:08Z badkins joined #scheme 2020-09-11T06:45:31Z gnomon joined #scheme 2020-09-11T06:45:31Z badkins quit (Ping timeout: 258 seconds) 2020-09-11T07:04:15Z aaaaaa quit (Quit: leaving) 2020-09-11T07:06:43Z aeth quit (Ping timeout: 260 seconds) 2020-09-11T07:08:16Z aeth joined #scheme 2020-09-11T07:11:15Z arew quit (Quit: WeeChat 2.8) 2020-09-11T07:13:16Z civodul joined #scheme 2020-09-11T07:13:59Z jobol joined #scheme 2020-09-11T07:26:42Z seepel joined #scheme 2020-09-11T07:28:58Z fadein_ joined #scheme 2020-09-11T07:30:40Z fadein quit (Ping timeout: 246 seconds) 2020-09-11T07:49:39Z amirouche joined #scheme 2020-09-11T07:52:44Z montxero quit (Remote host closed the connection) 2020-09-11T07:57:02Z hendursaga quit (Remote host closed the connection) 2020-09-11T07:58:02Z hendursaga joined #scheme 2020-09-11T08:10:29Z hendursa1 joined #scheme 2020-09-11T08:12:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-11T08:16:59Z cpressey joined #scheme 2020-09-11T08:23:01Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-11T08:42:16Z badkins joined #scheme 2020-09-11T08:46:37Z badkins quit (Ping timeout: 246 seconds) 2020-09-11T09:19:57Z edgar-rft joined #scheme 2020-09-11T09:22:07Z amirouche: wip https://pre-srfi.github.io/webui/demos/03-todomvc/ 2020-09-11T09:22:53Z amirouche: :D 2020-09-11T09:24:36Z wasamasa: > // File generated by Gambit v4.9.3 2020-09-11T09:24:37Z wasamasa: RIP 2020-09-11T09:25:02Z wasamasa: I like griping about non-production webpack output but this is worse 2020-09-11T09:25:29Z wasamasa: actually, helpers.js seems to be that :D 2020-09-11T09:26:15Z wasamasa: or is it, hm, seems to be a mix 2020-09-11T09:27:00Z amirouche: startup time is not very bad on my connection.. it can improve :) 2020-09-11T09:27:17Z amirouche: the gambit runtime is 30MB before compressiong 3MB after gzip 2020-09-11T09:27:28Z amirouche: it is much better than chibi wasm 2020-09-11T09:29:38Z wasamasa: I sometimes ponder trying one of those small jslisps 2020-09-11T09:30:14Z wasamasa: spock-runtime-min.js is 80k 2020-09-11T09:30:31Z wasamasa: it's r5rs with suboptimal interop 2020-09-11T09:31:53Z wasamasa: code is very readable, but I haven't tried fixing the interop bits yet 2020-09-11T09:32:16Z wasamasa: ideally I'd have something like fennel with nicer syntax and JS semantics 2020-09-11T09:32:33Z wasamasa: so that the generated output is no weird unreadable soup 2020-09-11T09:58:11Z arew joined #scheme 2020-09-11T10:01:12Z deesix_ is now known as deesix 2020-09-11T10:03:22Z rgherdt joined #scheme 2020-09-11T10:11:04Z mdhughes quit (*.net *.split) 2020-09-11T10:11:06Z Boarders quit (*.net *.split) 2020-09-11T10:11:07Z heredoc quit (*.net *.split) 2020-09-11T10:11:07Z stephe quit (*.net *.split) 2020-09-11T10:11:07Z rickbutton quit (*.net *.split) 2020-09-11T10:11:07Z travv0 quit (*.net *.split) 2020-09-11T10:11:07Z aoh quit (*.net *.split) 2020-09-11T10:11:12Z heredoc joined #scheme 2020-09-11T10:11:24Z aoh joined #scheme 2020-09-11T10:11:42Z rickbutton joined #scheme 2020-09-11T10:11:49Z Boarders joined #scheme 2020-09-11T10:16:59Z travv0 joined #scheme 2020-09-11T10:16:59Z stephe joined #scheme 2020-09-11T10:16:59Z mdhughes joined #scheme 2020-09-11T10:17:01Z stephe quit (Changing host) 2020-09-11T10:17:01Z stephe joined #scheme 2020-09-11T10:17:01Z travv0 quit (Changing host) 2020-09-11T10:17:01Z travv0 joined #scheme 2020-09-11T10:49:38Z aeth quit (Ping timeout: 256 seconds) 2020-09-11T10:50:04Z aeth joined #scheme 2020-09-11T11:00:31Z raingloom joined #scheme 2020-09-11T11:12:54Z cpressey quit (Quit: Lunch) 2020-09-11T11:18:13Z seepel quit (Ping timeout: 264 seconds) 2020-09-11T11:56:15Z webshinra quit (Remote host closed the connection) 2020-09-11T11:58:33Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-11T12:00:48Z webshinra joined #scheme 2020-09-11T12:12:02Z arew quit (Quit: WeeChat 2.8) 2020-09-11T12:20:08Z hugo quit (Read error: Connection reset by peer) 2020-09-11T12:43:13Z bitmapper quit (Ping timeout: 246 seconds) 2020-09-11T12:44:02Z badkins joined #scheme 2020-09-11T12:45:03Z daviid quit (Ping timeout: 260 seconds) 2020-09-11T12:48:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-11T12:50:23Z hendursa1 quit (Quit: hendursa1) 2020-09-11T12:50:41Z hendursaga joined #scheme 2020-09-11T12:53:29Z lritter joined #scheme 2020-09-11T13:06:51Z aeth quit (Ping timeout: 265 seconds) 2020-09-11T13:08:34Z aeth joined #scheme 2020-09-11T13:35:02Z badkins joined #scheme 2020-09-11T14:09:20Z skapata joined #scheme 2020-09-11T14:09:34Z rgherdt quit (Remote host closed the connection) 2020-09-11T14:13:01Z jcowan: I finally did the research about different folds in SRFIs. The overwhelming majority work like SRFI 1 (new element before state), which is probably no accident. The counterexamples are vector-fold/@vector-fold/bitvector-fold and stream-fold. 2020-09-11T14:13:16Z skapata quit (Remote host closed the connection) 2020-09-11T14:13:24Z jcowan: So the discrepancy is All Riastradh's Fault 2020-09-11T14:13:54Z Riastradh: I TOLD YOU to stop paying attention to SRFI 43 over a decade ago. 2020-09-11T14:14:10Z Riastradh: (also Zipheir's argument is still reasonable) 2020-09-11T14:14:52Z jcowan: hmm, actually I only looked at folds, I'll have to do it again for fold-rights, I guess. 2020-09-11T14:15:51Z jcowan: at least I know where to look now, that was a big pain 2020-09-11T14:16:25Z raingloom quit (Ping timeout: 240 seconds) 2020-09-11T14:16:49Z jcowan: There is also the question of multiple seeds vs. multiple inputs: some folds take one, some the other, some neither (none take both for obvious reasons) 2020-09-11T14:22:01Z X-Scale` joined #scheme 2020-09-11T14:23:16Z X-Scale quit (Ping timeout: 256 seconds) 2020-09-11T14:23:25Z X-Scale` is now known as X-Scale 2020-09-11T14:36:01Z srandon111 quit (Quit: leaving) 2020-09-11T14:39:33Z raingloom joined #scheme 2020-09-11T14:52:50Z badkins quit (Remote host closed the connection) 2020-09-11T14:53:30Z badkins joined #scheme 2020-09-11T14:58:11Z badkins quit (Ping timeout: 240 seconds) 2020-09-11T15:04:38Z skapata joined #scheme 2020-09-11T15:06:02Z skapata left #scheme 2020-09-11T15:11:07Z raingloom quit (Ping timeout: 240 seconds) 2020-09-11T15:22:22Z rgherdt joined #scheme 2020-09-11T15:30:35Z badkins joined #scheme 2020-09-11T15:35:17Z badkins quit (Ping timeout: 258 seconds) 2020-09-11T15:48:03Z bitmapper joined #scheme 2020-09-11T15:49:58Z amirouche quit (Ping timeout: 256 seconds) 2020-09-11T15:52:22Z Zipheir: jcowan: Thanks for doing all of that work. 2020-09-11T15:52:57Z jcowan: Sure. There's a page in r7rs-work about it: FoldOrder.md 2020-09-11T15:53:03Z jcowan: I'll update it with fold-right 2020-09-11T15:56:09Z badkins joined #scheme 2020-09-11T15:57:32Z Zipheir: It's unfortunate that the SRFI 1 order is prevalent. For fold(-left), I think it's clearly the Wrong Thing. 2020-09-11T15:58:45Z Zipheir: (Elements before state seems more rational to me with fold-right, since it's "cons fold style". But still unfortunate with multiple structures.) 2020-09-11T16:00:27Z badkins quit (Ping timeout: 240 seconds) 2020-09-11T16:02:13Z arew joined #scheme 2020-09-11T16:04:23Z jcowan: I have no preference myself 2020-09-11T16:06:18Z Zipheir: I'd certainly argue for (apply proc state elts) as more idiomatic Scheme than (apply proc (append elts (list state))). But that doesn't have much impact on users of fold. 2020-09-11T16:07:25Z jcowan: Yes. We can't do anything about stream-fold, and the vectorish folds are at least all alike. I do hope there is no SRFI with a right-fold different from its left-fold, however. 2020-09-11T16:09:14Z Zipheir: Haskell/Miranda style. 2020-09-11T16:10:18Z Zipheir: (Oops, Miranda™ style.) 2020-09-11T16:11:04Z Zipheir: Trademarks on the names of obscure commercial languages are Very Important. 2020-09-11T16:16:15Z jobol quit (Quit: Leaving) 2020-09-11T16:31:42Z hugh_marera joined #scheme 2020-09-11T16:40:43Z tryte_ quit (Ping timeout: 240 seconds) 2020-09-11T16:43:25Z tryte joined #scheme 2020-09-11T17:03:27Z aeth quit (Ping timeout: 240 seconds) 2020-09-11T17:05:29Z aeth joined #scheme 2020-09-11T17:14:34Z dbmikus joined #scheme 2020-09-11T17:14:54Z jcowan: You could just put "Miranda is a trademark of " in the channel topic 2020-09-11T17:16:24Z jcowan: There was also a tradition whenever Soandso Miranda (a functional guy) was mentioned to add another footnote saying "Soandso Miranda is a person's name, and therefore *not* a trademark of Research Software Limited" 2020-09-11T17:21:17Z badkins joined #scheme 2020-09-11T17:22:23Z daviid joined #scheme 2020-09-11T17:25:55Z badkins quit (Ping timeout: 265 seconds) 2020-09-11T17:55:23Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-11T17:57:04Z gravicappa joined #scheme 2020-09-11T17:59:38Z notzmv joined #scheme 2020-09-11T18:13:04Z vinvin joined #scheme 2020-09-11T18:24:30Z gmaggior joined #scheme 2020-09-11T18:31:37Z badkins joined #scheme 2020-09-11T19:17:28Z Perkol joined #scheme 2020-09-11T19:32:47Z aeth quit (Ping timeout: 240 seconds) 2020-09-11T19:32:59Z Perkol quit (Remote host closed the connection) 2020-09-11T19:35:02Z aeth joined #scheme 2020-09-11T19:44:28Z raingloom joined #scheme 2020-09-11T19:52:40Z skapata joined #scheme 2020-09-11T19:52:57Z skapata left #scheme 2020-09-11T20:01:00Z badkins quit (Remote host closed the connection) 2020-09-11T20:01:41Z badkins joined #scheme 2020-09-11T20:06:24Z arew: classic exercise for web frontend done with gambit https://pre-srfi.github.io/webui/demos/03-todomvc/ 2020-09-11T20:06:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-11T20:10:48Z arew: \o/ 2020-09-11T20:18:30Z badkins joined #scheme 2020-09-11T20:22:06Z laxask quit (Ping timeout: 244 seconds) 2020-09-11T20:23:05Z laxask joined #scheme 2020-09-11T20:28:07Z dbmikus quit (Ping timeout: 240 seconds) 2020-09-11T20:32:41Z arew quit (Quit: WeeChat 2.8) 2020-09-11T20:33:28Z lritter quit (Ping timeout: 260 seconds) 2020-09-11T20:33:59Z lritter joined #scheme 2020-09-11T20:39:00Z dbmikus joined #scheme 2020-09-11T21:12:34Z jcowan: I am now sure that all right folds behave the same as left folds in the various SRFIs with the possible exception of stream-fold. Can someone look at SRFI 41 to make sure? I have sent an email to srfi-41@srfi.schemers.org as well. 2020-09-11T21:13:53Z gmaggior quit (Ping timeout: 246 seconds) 2020-09-11T21:19:12Z gwatt: a 2020-09-11T21:23:24Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-11T21:26:55Z gmaggior joined #scheme 2020-09-11T21:27:07Z civodul quit (Read error: Connection reset by peer) 2020-09-11T22:07:31Z ggole quit (Quit: Leaving) 2020-09-11T22:56:53Z badkins quit (Remote host closed the connection) 2020-09-11T22:57:28Z badkins joined #scheme 2020-09-11T23:02:24Z badkins quit (Ping timeout: 256 seconds) 2020-09-11T23:08:20Z epony quit (Quit: reconf) 2020-09-11T23:09:14Z epony joined #scheme 2020-09-11T23:25:43Z lritter quit (Quit: Leaving) 2020-09-11T23:33:39Z gmaggior quit (Read error: Connection reset by peer) 2020-09-11T23:52:27Z seepel joined #scheme 2020-09-11T23:56:30Z hugh_marera quit (Quit: hugh_marera) 2020-09-12T00:23:50Z TCZ joined #scheme 2020-09-12T00:43:53Z dbmikus quit (Quit: WeeChat 2.9) 2020-09-12T00:51:37Z badkins joined #scheme 2020-09-12T00:51:44Z badkins quit (Remote host closed the connection) 2020-09-12T00:52:17Z badkins joined #scheme 2020-09-12T00:56:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-12T01:03:40Z TCZ quit (Quit: Leaving) 2020-09-12T01:09:31Z cjb joined #scheme 2020-09-12T01:10:05Z rudybot quit (Ping timeout: 240 seconds) 2020-09-12T01:10:41Z rudybot joined #scheme 2020-09-12T01:19:18Z raingloom quit (Ping timeout: 260 seconds) 2020-09-12T01:40:18Z seepel quit (Ping timeout: 260 seconds) 2020-09-12T02:22:13Z cjb quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-12T02:53:53Z badkins joined #scheme 2020-09-12T02:59:01Z badkins quit (Ping timeout: 264 seconds) 2020-09-12T03:00:11Z aaaaaa joined #scheme 2020-09-12T04:04:44Z raingloom joined #scheme 2020-09-12T04:30:14Z gravicappa joined #scheme 2020-09-12T04:40:45Z raingloom quit (Ping timeout: 240 seconds) 2020-09-12T04:53:03Z brendyyn joined #scheme 2020-09-12T05:27:15Z hugh_marera joined #scheme 2020-09-12T05:50:55Z lavaflow quit (Quit: WeeChat 2.9) 2020-09-12T05:56:18Z lavaflow joined #scheme 2020-09-12T06:06:29Z klovett_ joined #scheme 2020-09-12T06:08:45Z klovett_ quit (Remote host closed the connection) 2020-09-12T06:09:21Z klovett_ joined #scheme 2020-09-12T06:09:28Z terpri quit (Ping timeout: 244 seconds) 2020-09-12T06:10:23Z klovett quit (Ping timeout: 260 seconds) 2020-09-12T06:42:34Z gmaggior joined #scheme 2020-09-12T06:55:21Z badkins joined #scheme 2020-09-12T06:56:47Z lavaflow quit (Quit: WeeChat 2.9) 2020-09-12T07:00:20Z badkins quit (Ping timeout: 265 seconds) 2020-09-12T07:02:27Z hugh_marera quit (Quit: hugh_marera) 2020-09-12T07:02:43Z hugh_marera joined #scheme 2020-09-12T07:06:01Z rotty joined #scheme 2020-09-12T07:08:20Z lavaflow joined #scheme 2020-09-12T07:18:20Z terpri joined #scheme 2020-09-12T07:24:01Z lavaflow quit (Quit: WeeChat 2.9) 2020-09-12T07:24:28Z timwis quit (Ping timeout: 244 seconds) 2020-09-12T07:24:28Z mats quit (Ping timeout: 244 seconds) 2020-09-12T07:24:59Z kilimanjaro quit (Ping timeout: 244 seconds) 2020-09-12T07:25:56Z Gnuxie[m] quit (Ping timeout: 240 seconds) 2020-09-12T07:26:15Z mats joined #scheme 2020-09-12T07:26:25Z kilimanjaro joined #scheme 2020-09-12T07:26:40Z arew joined #scheme 2020-09-12T07:27:19Z Gnuxie[m] joined #scheme 2020-09-12T07:27:36Z wasa joined #scheme 2020-09-12T07:29:07Z even4void[m] quit (Ping timeout: 244 seconds) 2020-09-12T07:30:15Z wasamasa quit (Ping timeout: 244 seconds) 2020-09-12T07:33:56Z siraben quit (Ping timeout: 240 seconds) 2020-09-12T07:37:16Z hugh_marera quit (Quit: hugh_marera) 2020-09-12T07:39:07Z lavaflow joined #scheme 2020-09-12T07:41:43Z timwis joined #scheme 2020-09-12T07:43:53Z siraben joined #scheme 2020-09-12T07:50:14Z even4void[m] joined #scheme 2020-09-12T08:10:41Z arew: How can I use a well balanced tree as an indexed list where I can insert elements in the middle of the list? 2020-09-12T08:11:46Z hendursa1 joined #scheme 2020-09-12T08:12:19Z arew: \cc Riastradh ^ 2020-09-12T08:12:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-12T08:31:38Z klovett joined #scheme 2020-09-12T08:34:06Z klovett_ quit (Ping timeout: 265 seconds) 2020-09-12T08:49:28Z daviid quit (Ping timeout: 256 seconds) 2020-09-12T08:56:55Z badkins joined #scheme 2020-09-12T09:01:07Z badkins quit (Ping timeout: 240 seconds) 2020-09-12T09:30:56Z raingloom joined #scheme 2020-09-12T09:52:57Z wasa is now known as wasamasa 2020-09-12T10:02:01Z vinvin quit (Ping timeout: 264 seconds) 2020-09-12T10:02:18Z vinvin joined #scheme 2020-09-12T10:04:53Z aeth quit (Ping timeout: 260 seconds) 2020-09-12T10:06:31Z aeth joined #scheme 2020-09-12T10:38:36Z remix2000 joined #scheme 2020-09-12T10:39:20Z remix2000 quit (Remote host closed the connection) 2020-09-12T10:57:35Z badkins joined #scheme 2020-09-12T11:02:03Z badkins quit (Ping timeout: 260 seconds) 2020-09-12T11:23:11Z raingloom quit (Quit: No Ping reply in 180 seconds.) 2020-09-12T11:24:41Z raingloom joined #scheme 2020-09-12T11:31:48Z raingloom quit (Ping timeout: 260 seconds) 2020-09-12T11:31:52Z raingloom_ joined #scheme 2020-09-12T11:39:16Z ggole joined #scheme 2020-09-12T11:46:33Z brown121407 joined #scheme 2020-09-12T11:52:04Z aaaaaa quit (Quit: leaving) 2020-09-12T11:56:01Z bitmapper quit (Ping timeout: 264 seconds) 2020-09-12T11:57:11Z raingloom_ quit (Ping timeout: 244 seconds) 2020-09-12T12:04:45Z gmaggior quit (Quit: Leaving) 2020-09-12T12:15:19Z skapata joined #scheme 2020-09-12T12:18:51Z skapata quit (Remote host closed the connection) 2020-09-12T12:26:52Z brown121408 joined #scheme 2020-09-12T12:30:15Z brown121407 quit (Ping timeout: 244 seconds) 2020-09-12T12:31:23Z madage quit (Ping timeout: 240 seconds) 2020-09-12T12:40:52Z deinernstjetzt joined #scheme 2020-09-12T12:43:52Z siraben: arew: how fast do you need to be able to insert elements in the middle? 2020-09-12T12:44:14Z siraben: Is this list sorted? 2020-09-12T12:44:31Z madage joined #scheme 2020-09-12T12:44:55Z ArneBab joined #scheme 2020-09-12T12:44:55Z ArneBab quit (Changing host) 2020-09-12T12:44:55Z ArneBab joined #scheme 2020-09-12T12:49:31Z raingloom joined #scheme 2020-09-12T12:58:49Z badkins joined #scheme 2020-09-12T13:01:20Z ArneBab quit (Ping timeout: 244 seconds) 2020-09-12T13:01:32Z ArneBab joined #scheme 2020-09-12T13:03:13Z badkins quit (Ping timeout: 264 seconds) 2020-09-12T13:10:42Z remix2000 joined #scheme 2020-09-12T13:10:55Z remix2000 quit (Remote host closed the connection) 2020-09-12T13:21:46Z hendursa1 quit (Quit: hendursa1) 2020-09-12T13:22:04Z hendursaga joined #scheme 2020-09-12T13:26:59Z ArneBab quit (Remote host closed the connection) 2020-09-12T13:28:01Z klovett quit (Remote host closed the connection) 2020-09-12T13:28:12Z ArneBab joined #scheme 2020-09-12T13:28:17Z klovett joined #scheme 2020-09-12T13:29:00Z raingloom quit (Ping timeout: 256 seconds) 2020-09-12T13:45:06Z rain1: if you want to be able to do that fast and nothing else: (l1 . l2) where l1 is the first half the list reversed 2020-09-12T13:49:58Z aeth_ joined #scheme 2020-09-12T13:50:58Z aeth quit (Disconnected by services) 2020-09-12T13:51:03Z aeth_ is now known as aeth 2020-09-12T13:51:49Z dnm quit (Ping timeout: 272 seconds) 2020-09-12T13:52:36Z dnm joined #scheme 2020-09-12T13:53:43Z kilimanjaro quit (Ping timeout: 272 seconds) 2020-09-12T13:53:43Z sbates quit (Ping timeout: 272 seconds) 2020-09-12T13:53:43Z cemerick quit (Ping timeout: 272 seconds) 2020-09-12T13:54:21Z OptimusMKD joined #scheme 2020-09-12T13:54:47Z cemerick joined #scheme 2020-09-12T13:54:59Z rann quit (Ping timeout: 272 seconds) 2020-09-12T13:55:33Z kilimanjaro joined #scheme 2020-09-12T13:56:13Z sbates joined #scheme 2020-09-12T13:56:53Z rann joined #scheme 2020-09-12T13:58:28Z X-Scale` joined #scheme 2020-09-12T13:59:24Z X-Scale quit (Ping timeout: 260 seconds) 2020-09-12T13:59:39Z X-Scale` is now known as X-Scale 2020-09-12T14:03:40Z jcowan: Or you could use SRFI 134 2020-09-12T14:07:09Z ArneBab quit (Read error: Connection reset by peer) 2020-09-12T14:08:22Z ArneBab joined #scheme 2020-09-12T14:12:49Z ArneBab quit (Remote host closed the connection) 2020-09-12T14:14:05Z ArneBab joined #scheme 2020-09-12T14:21:13Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-12T14:34:36Z Riastradh: arew: For a bounded-balance/weight-balance tree, you just use the number of nodes under each branch to decide where to put it. Once you have a place to put it, inserting it is easy -- it just requires at most a single rotation or a double rotation. 2020-09-12T14:35:27Z Riastradh: arew: In , this is what the (join-balanced left k d right) operation does (but nothing intrinsically requires a distinct key and datum). 2020-09-12T14:36:30Z Riastradh: (This assumes left and right are already siblings in a balanced tree; the (join left k d right) operation is similar, but makes no such assumption, so left and right can be totally unrelated trees.) 2020-09-12T14:41:44Z jcowan: Sounds like the hokey-pokey to me. 2020-09-12T14:46:24Z Riastradh: you put your left branch in, you take your left branch out; you put your right branch in, you balance it around... 2020-09-12T14:46:29Z ArneBab quit (Remote host closed the connection) 2020-09-12T14:47:45Z ArneBab joined #scheme 2020-09-12T14:56:27Z ArneBab_ joined #scheme 2020-09-12T14:56:33Z ArneBab quit (Ping timeout: 244 seconds) 2020-09-12T14:58:23Z lritter joined #scheme 2020-09-12T15:00:41Z ArneBab_ quit (Ping timeout: 244 seconds) 2020-09-12T15:01:02Z ArneBab joined #scheme 2020-09-12T15:10:29Z ArneBab quit (Remote host closed the connection) 2020-09-12T15:11:45Z ArneBab joined #scheme 2020-09-12T15:11:45Z ArneBab quit (Changing host) 2020-09-12T15:11:45Z ArneBab joined #scheme 2020-09-12T15:31:36Z bitmapper joined #scheme 2020-09-12T15:37:39Z ArneBab quit (Read error: Connection reset by peer) 2020-09-12T15:38:52Z ArneBab joined #scheme 2020-09-12T15:42:03Z jcowan: Exactly! 2020-09-12T15:42:42Z jcowan was once up to single rotations in constrained circumstances: double ones, not hardly. 2020-09-12T15:43:29Z ArneBab quit (Ping timeout: 244 seconds) 2020-09-12T15:43:34Z ArneBab_ joined #scheme 2020-09-12T15:49:32Z arew: Riastradh: my goal is to represent an editor buffer that is I can insert a character in the middle of a line or a line just after another 2020-09-12T15:54:09Z jcowan: The two-list algorithm works fine, but you do have to chase a lot of links. The alternative is a gap buffer, where all the characters before dot (the current position) are at the bottom of the buffer and all the characters after dot are at the top. So inserts or deletes at dot are trivial (just have to check for overrun) and so is moving dot along by N characters. 2020-09-12T15:54:58Z jcowan: You can keep a list of line offsets if you like, or just recompute on the fly what a line is, which is simpler and probably just as fast for typical use cases like editing by hand. 2020-09-12T15:54:59Z ArneBab_ quit (Remote host closed the connection) 2020-09-12T15:55:02Z aeth quit (Ping timeout: 256 seconds) 2020-09-12T15:56:15Z ArneBab joined #scheme 2020-09-12T15:56:15Z ArneBab quit (Changing host) 2020-09-12T15:56:15Z ArneBab joined #scheme 2020-09-12T15:56:44Z aeth joined #scheme 2020-09-12T15:58:40Z Zipheir: arew: Zippers are awesome for editor buffers. 2020-09-12T15:59:25Z Zipheir: An editor based on zipper piece tables is something I've been meaning to do for a while. But editor frontend programming is tedious. 2020-09-12T16:04:39Z ArneBab quit (Remote host closed the connection) 2020-09-12T16:05:52Z ArneBab joined #scheme 2020-09-12T16:11:19Z ArneBab quit (Remote host closed the connection) 2020-09-12T16:12:35Z ArneBab joined #scheme 2020-09-12T16:12:35Z ArneBab quit (Changing host) 2020-09-12T16:12:35Z ArneBab joined #scheme 2020-09-12T16:16:07Z rgherdt_ joined #scheme 2020-09-12T16:17:29Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-12T16:27:13Z brown121408 quit (Read error: Connection reset by peer) 2020-09-12T16:28:37Z brown121407 joined #scheme 2020-09-12T16:33:08Z raingloom joined #scheme 2020-09-12T16:37:13Z ArneBab quit (Quit: http://quassel-irc.org - Chat comfortably. Anywhere.) 2020-09-12T16:46:08Z brown121407 quit (Remote host closed the connection) 2020-09-12T17:00:30Z badkins joined #scheme 2020-09-12T17:01:26Z arew: I looked into zippers in the past I did not feel very inspired. I guess more than an datastructure wrangler, I am frontend chore person. 2020-09-12T17:02:07Z arew: Most of what I do is put together existing material. I prolly need to learn more about those datastructures. 2020-09-12T17:03:05Z arew: I remember in engineering school, two woman alone in a big room working on red black trees, I told them that it was useless and that they will never use it 2020-09-12T17:03:25Z arew: I feel shameful today, even to some extent is true. 2020-09-12T17:03:31Z arew: I feel shameful today, even if to some extent is true. 2020-09-12T17:04:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-12T17:12:19Z Zipheir: arew: Ouch. 2020-09-12T17:14:12Z Zipheir: arew: I hope you see that judging an idea based on whether it seems like someone will "use it" isn't very helpful. 2020-09-12T17:15:32Z Zipheir: Most people probably thought no-one would ever find a use for those weird expressions James Clerk Maxwell was messing around with. 2020-09-12T17:15:36Z aeth: If you want to use a concept later on, make a game. That's a good way to wind up using everything. 2020-09-12T17:15:47Z aeth: (You probably won't finish the game, though.) 2020-09-12T17:19:28Z daviid joined #scheme 2020-09-12T17:21:25Z Zipheir: aeth: Good idea. 2020-09-12T17:21:59Z Zipheir: aeth: I've had a similar thought WRT new languages. 2020-09-12T17:22:33Z Zipheir: (Not specifically implementing a game in a new languages--holy hell--but using the language in some high-level way within the game.) 2020-09-12T17:24:32Z Zipheir: The Maxwell example was by no means idle, BTW. Carl Sagan argues in one of his books that Maxwell's equations are the canonical "useless" (but eventually incredibly useful) scientific discovery. 2020-09-12T17:26:30Z Zipheir: (And by "useful" I mean in the implementation of certain technologies, which may or may not, in their applications, be useful to humans.) 2020-09-12T17:28:27Z arew: you think of mes? 2020-09-12T17:28:33Z arew: you think about gnu mes? 2020-09-12T17:31:55Z raingloom quit (Ping timeout: 240 seconds) 2020-09-12T17:32:16Z arew: gnu mes is inspired from Maxwell Equations of Software (https://gnu.org/s/mes/) 2020-09-12T17:35:27Z titanbiscuit quit (Ping timeout: 258 seconds) 2020-09-12T17:36:19Z titanbiscuit joined #scheme 2020-09-12T17:37:14Z Zipheir: arew: Thanks. I'd never heard of that. 2020-09-12T17:38:06Z klovett quit (Remote host closed the connection) 2020-09-12T17:38:08Z jcowan: mes is cool, and getting to be less of a mess all the tess^Wtime. 2020-09-12T17:38:44Z klovett joined #scheme 2020-09-12T17:39:47Z Zipheir: arew: You may be interested in William Byrd's talk in which he describes the 5-line Scheme λ-calculus intepreter as "Maxwell's equations of programming". https://www.youtube.com/watch?v=OyfBQmvr2Hc 2020-09-12T17:39:57Z Zipheir: (Hilarious talk, also.) 2020-09-12T17:41:53Z arew: bookmarked :) 2020-09-12T17:58:00Z klovett quit (Remote host closed the connection) 2020-09-12T17:58:17Z klovett joined #scheme 2020-09-12T18:27:36Z aeth: Zipheir: The third type of thing that uses "everything" is probably a web browser, but a web browser is so much that it's the most foolish thing to make. 2020-09-12T18:28:03Z aeth: In particular, a web browser is going to use pretty much any kind of media (video, audio, images, etc.) that anyone uses (since if web browsers don't support it, it's probably not popular anymore) 2020-09-12T18:28:36Z aeth: Zipheir: Extra bonus points if you find a way to combine the three projects, not just the two 2020-09-12T18:30:00Z aeth: (Embedding a new web browser inside of a new game (in your custom game engine), all written in a custom language, I guess? That would actually be easier than a general web browser since it doesn't need to read the entire web.) 2020-09-12T18:30:29Z DKordic joined #scheme 2020-09-12T18:33:19Z aeth: But, anyway, between the three very different kinds of software, you'd probably wind up using everything that you "will never use". Maybe throw in an OS, too, so you wind up doing very low level things. 2020-09-12T18:33:37Z Zipheir: aeth: Tangentially, why don't more games provide languages as gameplay interfaces? Text adventures did it. In strategy games, I often wish the game just provided a high-level language for describing tasks. 2020-09-12T18:38:47Z autumn[m]: the SerenityOS folks seem undaunted by making a web browser 2020-09-12T18:39:02Z autumn[m]: well, trying to make* 2020-09-12T18:41:33Z aeth: Zipheir: probably to prevent multiplayer cheating even though I bet < 5% of players in those elaborate strategy games ever try to play them online since they're like 20+ hours a game. 2020-09-12T18:41:52Z aeth: They do often have a "cheat" console with ` though 2020-09-12T18:43:47Z aeth: Or / commands that can be done in the chat window. Or both. 2020-09-12T18:43:48Z Zipheir: Pfft. The gaming world is so consumer-minded. 2020-09-12T18:43:59Z aeth: I mean, yes. 2020-09-12T18:44:45Z aeth: Name a FOSS game (there are some decent ones) and they're probably all > 10 years old. I mean full FOSS, engine and assets (not just the engine)... either CC assets or assets under the same license as the source. 2020-09-12T18:45:32Z Zipheir: aeth: It's strange to me. FOSS has become dominant in many other areas. 2020-09-12T18:46:47Z rain1: https://libregamewiki.org/Extreme_Tux_Racer 2020-09-12T18:49:01Z aeth: Zipheir: Why wouldn't you sell a game if you could? Most areas aren't competitive anymore... e.g. you can't make money selling a web browser thanks to Microsoft, and there's always the incentive to turn related software into freeware to lock people into your ecosystem. 2020-09-12T18:49:39Z aeth: And FOSS isn't really dominant outside of infrastructure. 2020-09-12T18:54:01Z Zipheir: aeth: "Why wouldn't you sell X if you could?" would, if accurate, mean no FOSS whatsoever. 2020-09-12T18:54:39Z Zipheir: (Though not necessarily. There's no contradiction in selling open-source software, as RMS did with early Emacs.) 2020-09-12T18:54:59Z Zipheir: (We're just not living in a time where selling physical media makes much sense.) 2020-09-12T18:55:19Z aeth: Zipheir: no, the popular/quality FOSS is in areas where you couldn't sell it, like programming languages (only niches are still sold), editors (only niches are still sold), OSes (Windows monopoly), web browsers, office suits (MS Office monopoly), desktop environments (very closely linked to OSes), Unix shells/terminals (lol, imagine trying to sell one) etc. 2020-09-12T18:55:31Z aeth: s/suits/suites/ 2020-09-12T18:56:23Z aeth: Where there is a market, it's much harder to compete. I can name a few that can compete anyway, e.g. PostgreSQL for databases. 2020-09-12T18:56:41Z Zipheir: aeth: Nevertheless, people keep writing open-source software. In all areas. 2020-09-12T18:57:43Z aeth: Yes, all areas, including games. e.g. Godot for game engines or Wesnoth for a FOSS game that's good/unique enough that it could be sold. 2020-09-12T18:58:55Z aeth: But note that Wesnoth's code is (apparently) a mess and it stands out as a quality game because of its art/maps/etc... not really programming tasks. Artists are much more likely to want to sell their art. 2020-09-12T18:59:21Z Zipheir: The worrying thing is that the number of FOSS projects seems to be declining (https://www.techdirt.com/articles/20200831/03420345216/academic-study-says-open-source-has-peaked-why.shtml) 2020-09-12T18:59:44Z terpri_ joined #scheme 2020-09-12T19:00:14Z Zipheir: aeth: I like its game design and AI. The art is often beautiful, but that's icing on the cake. 2020-09-12T19:00:24Z rain1: enigma is a good game 2020-09-12T19:00:25Z rgherdt_ quit (Ping timeout: 244 seconds) 2020-09-12T19:00:33Z rain1: https://www.nongnu.org/enigma/ 2020-09-12T19:00:47Z terpri quit (Ping timeout: 240 seconds) 2020-09-12T19:01:06Z badkins joined #scheme 2020-09-12T19:02:21Z Zipheir: rain1: ty! 2020-09-12T19:02:42Z aeth: Zipheir: Everything good about it (like the game design) isn't programming. The AI is... eh... if you play the MP a bit, you learn how to properly play the game and then you realize that the AI doesn't play it properly (e.g. attacking during times of day when it's weak) and is just masked by having way more resources than you do 2020-09-12T19:05:09Z autumn[m]: I could never actually do very well against the AI, and I never played multiplaer 2020-09-12T19:05:12Z autumn[m]: multiplayer* 2020-09-12T19:05:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-12T19:06:17Z Zipheir: aeth: The AI looks good compared to the (abysmal) AIs of most commercial strategy games. 2020-09-12T19:07:06Z aeth: Zipheir: Most commercial strategy games are real-time, so the AI is actually pretty "good". Turn based exposes the weakness in such AIs because now their fast thinking and ability to control a lot of things simultaneously can't be used for their advantage. 2020-09-12T19:07:25Z gravicappa quit (Ping timeout: 264 seconds) 2020-09-12T19:07:27Z Zipheir: aeth: Right. 2020-09-12T19:07:59Z gravicappa joined #scheme 2020-09-12T19:08:09Z aeth: You probably can't really do a good game AI here without machine learning. 2020-09-12T19:08:28Z aeth: Chess is basically the limits of a traditional AI approach in a turn based strategy game and it's way, way simpler than most. 2020-09-12T19:09:45Z aeth: With 100% attack probability and complete information, too. 2020-09-12T19:23:11Z hugh_marera joined #scheme 2020-09-12T19:24:46Z edgar-rft quit (Quit: Leaving) 2020-09-12T20:07:58Z gmaggior joined #scheme 2020-09-12T20:29:26Z rgherdt joined #scheme 2020-09-12T20:33:25Z lritter quit (Ping timeout: 244 seconds) 2020-09-12T20:40:27Z lritter joined #scheme 2020-09-12T21:02:10Z badkins joined #scheme 2020-09-12T21:04:48Z muelleme joined #scheme 2020-09-12T21:06:24Z badkins quit (Ping timeout: 244 seconds) 2020-09-12T21:12:37Z mats quit (Ping timeout: 272 seconds) 2020-09-12T21:13:00Z ggole quit (Quit: Leaving) 2020-09-12T21:14:23Z mats joined #scheme 2020-09-12T21:30:41Z gravicappa quit (Ping timeout: 244 seconds) 2020-09-12T21:39:52Z hugh_marera quit (Quit: hugh_marera) 2020-09-12T21:45:45Z edgar-rft joined #scheme 2020-09-12T21:51:23Z lritter quit (Ping timeout: 240 seconds) 2020-09-12T22:00:31Z aeth: I finally have the time to sit down and focus on the Scheme reader and it looks like there's not much left beyond the various modifications I'll have to make for the procedures in §6.13. (e.g. I don't actually have an implementation of read yet because read reads one expression at a time, while scheme-read reads an entire .scm file at once) 2020-09-12T22:00:59Z aeth: If numbers were removed from Scheme, it wouldn't be that bad... :-P 2020-09-12T22:01:04Z aeth: So much for "minimalism" :-P 2020-09-12T22:03:24Z wasamasa: arrowlisp is over there 2020-09-12T22:06:41Z aeth: arrowlisp? so, a Lisp built around a million different ascii arrows arrows? so, Haskell? 2020-09-12T22:10:05Z wasamasa: I have no idea what Nils Holm was thinking, but it does symbols 2020-09-12T22:24:33Z DGASAU quit (Ping timeout: 260 seconds) 2020-09-12T22:26:45Z muelleme quit (Ping timeout: 240 seconds) 2020-09-12T22:38:04Z raingloom joined #scheme 2020-09-12T22:38:51Z terpri joined #scheme 2020-09-12T22:39:24Z terpri_ quit (Ping timeout: 244 seconds) 2020-09-12T22:55:09Z seepel joined #scheme 2020-09-12T23:03:08Z sp1ff joined #scheme 2020-09-12T23:03:09Z badkins joined #scheme 2020-09-12T23:03:55Z deinernstjetzt quit (Ping timeout: 240 seconds) 2020-09-12T23:07:48Z badkins quit (Ping timeout: 258 seconds) 2020-09-12T23:09:28Z seepel quit (Ping timeout: 260 seconds) 2020-09-12T23:23:36Z muelleme joined #scheme 2020-09-12T23:27:58Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T00:01:05Z raingloom quit (Ping timeout: 240 seconds) 2020-09-13T00:14:20Z marusich joined #scheme 2020-09-13T00:15:27Z raingloom joined #scheme 2020-09-13T00:23:11Z jcowan: aeth: Are the go AI's not "traditional AI"? 2020-09-13T00:24:19Z muelleme joined #scheme 2020-09-13T00:29:23Z muelleme quit (Ping timeout: 260 seconds) 2020-09-13T00:29:32Z raingloom quit (Ping timeout: 244 seconds) 2020-09-13T00:33:40Z raingloom joined #scheme 2020-09-13T00:45:17Z mdhughes: Game development requires actual skill at user interface design, art, sound, music (at least direction for the last 3), the actual gameplay, writing for story, possibly voice acting. Nobody's going to do that for free/give away all their work. 2020-09-13T00:45:30Z mdhughes: And the "FOSS" people who want everything to be free don't have any of those skills. 2020-09-13T00:49:32Z Zipheir: Many people do, in fact, do those things with out pay all the time. 2020-09-13T00:49:39Z Zipheir: s/with out/without/ 2020-09-13T00:49:40Z mdhughes: All of my games are currently "free", but only the support libraries are open source; I don't mind if you use my tools to make your own game, but ripping off my art is unacceptable. 2020-09-13T00:50:08Z mdhughes: No, they really don't. The proof is look at any FOSS software, which clearly was never made to be used by humans. 2020-09-13T00:50:55Z mdhughes: Every couple years I do a tour of "best of Linux software", and it's just hilarious. 2020-09-13T00:51:07Z Zipheir: Hmm, IRC shouldn't work then, given that the protocal is an open standard. 2020-09-13T00:51:28Z Zipheir: s/protocal/protocal/ Ech, can't type tonight. 2020-09-13T00:51:38Z mdhughes: IRC is a network protocol. The clients are universally absolute ass. 2020-09-13T00:52:12Z mdhughes: I'm using LimeChat, which is the least suck on the Mac right now, and it's like someone in 1990 bashed together 3 widgets and called it a day. 2020-09-13T00:53:24Z torbo joined #scheme 2020-09-13T00:53:43Z Zipheir: Open-source projects by no means have a monopoly on suckiness. 2020-09-13T00:54:34Z mdhughes: No, but there's no example of a FOSS project with good user experience, art, any aesthetic sense at all. "The problem is they just have no taste.", as Steve Jobs said about MS, applies 100x to Linux software. 2020-09-13T00:55:37Z Zipheir: It's popular to say "all software sucks", but that seems to be rather trivial, somewhat like saying "people suck". 2020-09-13T00:56:35Z mdhughes: But all software doesn't suck. 2020-09-13T00:56:36Z Zipheir: GNOME is trying hard to follow the Mac aesthetic. They remove hundreds of options a year! Soon they will have a beautiful, single-button program for everything. 2020-09-13T00:57:39Z mdhughes: Well, they have a long way to go, but yes, they're *trying*. UX is not "put 500 buttons on a panel". 2020-09-13T00:59:05Z mdhughes: I do have to be fair about one thing: Krita's open source, and it's OK. But that's because it's made by artists, and financially supported by companies who need their artists to have nice tools. 2020-09-13T00:59:19Z mdhughes: Without that paycheck, Krita would be GIMP. 2020-09-13T01:01:27Z Zipheir: Nice that there are some more options in the FOSS graphics software world. 2020-09-13T01:02:46Z Zipheir: Too bad it's not programmable in Scheme! 2020-09-13T01:03:34Z Zipheir: I find it surprising that someone would find reusing software acceptable, but strenuously objects to reusing artwork. 2020-09-13T01:03:44Z Zipheir: s/objects/object/ 2020-09-13T01:04:19Z badkins joined #scheme 2020-09-13T01:06:37Z mdhughes: Software libraries are a means to an end, programmers get paid regardless of whether it's released or not. Art is generally the end. There are free art libraries, but mostly you have to buy a license because otherwise the artist starves. 2020-09-13T01:07:44Z mdhughes: But all of this is easy to prove for yourself. Write a free game or other software, try to make a nice user interface, and see if you want to give it away or not. 2020-09-13T01:08:07Z Zipheir: Hah, I'm sure I would. 2020-09-13T01:08:37Z badkins quit (Ping timeout: 246 seconds) 2020-09-13T01:08:46Z Zipheir: And of course many programmers don't get paid, but keep working on their software (cf. Gnupg) 2020-09-13T01:09:40Z Zipheir: Strange, perhaps, but it sometimes seems that people don't always work for monetary gain. 2020-09-13T01:11:21Z Zipheir: (Actually, Gnupg was a sad case, since the author very nearly couldn't afford to pay bills and keep working on it.) 2020-09-13T01:12:05Z mdhughes: You're almost at a realization there. 2020-09-13T01:16:11Z Zipheir: I think we'd certainly live in a nicer world if more people rejected the Glengarry-Glen-Ross worldview that claims "only suckers work for free". 2020-09-13T01:18:13Z Zipheir: Making things is a joy, and sharing them a joy. 2020-09-13T01:18:24Z mdhughes: FOSS programmers are the only people in the world who claim their own work is valueless. 2020-09-13T01:18:54Z mdhughes: I like sharing my things, and then getting *PAID* for them. 2020-09-13T01:19:39Z mdhughes: That's fantastic. A lot of my stuff is on itch.io, patreon, and other shareware models, so people get to try it out, and the people who pay me liked it. 2020-09-13T01:22:43Z madage quit (Ping timeout: 240 seconds) 2020-09-13T01:23:45Z Zipheir: Do any FOSS adherents really claim their work is valueless? GnuPG turned out to be worth a lot to Facebook, at least after they noticed it was about to die. This is a current challenge with corporately-popular FOSS projects, riffed on in https://xkcd.com/2347/ 2020-09-13T01:24:26Z Zipheir: "Everything is worth what its purchaser is willing to pay for it", but purchasers aren't compelled to pay anything. 2020-09-13T01:24:52Z madage joined #scheme 2020-09-13T01:25:04Z muelleme joined #scheme 2020-09-13T01:29:28Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T01:43:41Z aeth: jcowan: "traditional AI" as opposed to "machine/deep learning" 2020-09-13T01:44:03Z madage quit (Ping timeout: 240 seconds) 2020-09-13T01:45:16Z madage joined #scheme 2020-09-13T01:45:26Z aeth: mdhughes: As I said, Wesnoth has good art, especially considering that most of it is pre-2010 pixel art. e.g. https://www.wesnoth.org/images/sshots/wesnoth-1.14.0-2.jpg 2020-09-13T01:46:09Z aeth: It seems to be the exception, though. Most of the FOSS games are really ugly, e.g. Freeciv, and are very derivative of another game, e.g. Freeciv. 2020-09-13T01:48:23Z aeth: Writing/story and voice acting definitely aren't necessary components of a game. Voice acting would probably be the hardest to do right for free. My advice for anyone who wants to is don't. It's the easiest way to make your game look cheap... especially if you use text to speech. 2020-09-13T01:50:00Z Zipheir: *Sound* cheap. 2020-09-13T01:50:22Z aeth: Speaking of sound, Wesnoth has great music, too 2020-09-13T01:50:29Z aeth: But, again, the only one. 2020-09-13T01:50:34Z Zipheir: Yes. That must have been long in the making. 2020-09-13T01:52:22Z Zipheir imagines all of the interesting writing in Braid being read by voice synth and shudders. 2020-09-13T02:03:00Z zooey_ quit (Remote host closed the connection) 2020-09-13T02:03:29Z zooey joined #scheme 2020-09-13T02:07:36Z fadein_ is now known as fadein 2020-09-13T02:11:05Z jcowan: The music for _2001_ was originally just copyright-free place-holders until the original score could be composed, but somehow it stuck. 2020-09-13T02:12:35Z Zipheir: Except for the György Ligeti pieces (e.g. the monolith music, which is part of his Requiem, IIRC) 2020-09-13T02:13:21Z Zipheir: But Kubrick didn't get permission for those, so ... same thing. 2020-09-13T02:13:39Z jcowan: Ha, didn't know that. 2020-09-13T02:15:56Z Zipheir: As a result, though, Ligeti became about as famous as any mid-20th century composer and went on to contribute to other Kubrick soundtracks (The Shining, Eyes Wide Shut) so I doubt he cared much. 2020-09-13T02:19:15Z zooey quit (Remote host closed the connection) 2020-09-13T02:19:44Z zooey joined #scheme 2020-09-13T02:20:26Z jcowan nods 2020-09-13T02:25:51Z muelleme joined #scheme 2020-09-13T02:30:21Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T02:35:41Z aeth: 100 years from now, Kevin MacLeod will probably be the most famous composer of the 2000s. https://en.wikipedia.org/wiki/Kevin_MacLeod 2020-09-13T02:35:53Z aeth: Everyone uses his music. 2020-09-13T02:38:38Z brendyyn joined #scheme 2020-09-13T03:06:41Z phillbush joined #scheme 2020-09-13T03:11:46Z klovett quit (Remote host closed the connection) 2020-09-13T03:11:55Z raingloom quit (Ping timeout: 240 seconds) 2020-09-13T03:12:24Z klovett joined #scheme 2020-09-13T03:26:39Z muelleme joined #scheme 2020-09-13T03:31:32Z muelleme quit (Ping timeout: 258 seconds) 2020-09-13T03:43:56Z DKordic quit (Ping timeout: 240 seconds) 2020-09-13T03:46:49Z ft quit (Ping timeout: 244 seconds) 2020-09-13T03:58:01Z klovett quit (Remote host closed the connection) 2020-09-13T03:58:18Z klovett joined #scheme 2020-09-13T04:07:01Z ft joined #scheme 2020-09-13T04:10:36Z phillbush quit (Remote host closed the connection) 2020-09-13T04:14:00Z Riastradh: (...maybe gnupg should have been let to die...) 2020-09-13T04:27:19Z muelleme joined #scheme 2020-09-13T04:31:47Z muelleme quit (Ping timeout: 240 seconds) 2020-09-13T04:46:24Z seepel joined #scheme 2020-09-13T04:46:58Z Zipheir: Riastradh: I find it an astonishingly unintuitive and overengineered tool. 2020-09-13T04:48:02Z torbo quit (Remote host closed the connection) 2020-09-13T04:48:23Z gravicappa joined #scheme 2020-09-13T04:57:41Z brendyyn quit (Ping timeout: 244 seconds) 2020-09-13T05:05:43Z foof: I only ever use it indirectly via emacs. 2020-09-13T05:06:01Z badkins joined #scheme 2020-09-13T05:06:39Z raingloom joined #scheme 2020-09-13T05:10:33Z badkins quit (Ping timeout: 260 seconds) 2020-09-13T05:13:00Z edgar-rft quit (Quit: Leaving) 2020-09-13T05:28:07Z muelleme joined #scheme 2020-09-13T05:30:13Z raingloom quit (Ping timeout: 264 seconds) 2020-09-13T05:32:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-13T05:40:04Z brendyyn joined #scheme 2020-09-13T06:00:26Z skapata joined #scheme 2020-09-13T06:00:37Z skapata left #scheme 2020-09-13T06:08:56Z seepel quit (Ping timeout: 256 seconds) 2020-09-13T06:11:36Z ggole joined #scheme 2020-09-13T06:28:49Z muelleme joined #scheme 2020-09-13T06:29:16Z mdhughes: Classical music can be copyright-free for the score, but usually the performance costs a lot. 2020-09-13T06:31:49Z badkins joined #scheme 2020-09-13T06:33:16Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T06:38:11Z friscosam quit (Ping timeout: 240 seconds) 2020-09-13T06:44:23Z Zipheir: Scores are usually heavily protected. Check out the amount of misery IMSLP.org has gone through over the years with scores (even editions of public-domain pieces!). 2020-09-13T06:45:17Z Zipheir: (Copyright in music is implemented even more insanely than is copyright elsewhere.) 2020-09-13T06:45:29Z friscosam joined #scheme 2020-09-13T06:46:51Z Zipheir: (Also, as though there were any money to be made in selling *scores*; it's not 1880 anymore, and music notation literacy is probably very low. "It's all a mad scramble over crumbs." (Milton Babbitt)) 2020-09-13T06:48:04Z siraben quit (*.net *.split) 2020-09-13T06:48:05Z Gnuxie[m] quit (*.net *.split) 2020-09-13T06:48:05Z Boarders quit (*.net *.split) 2020-09-13T06:48:08Z mbakke quit (*.net *.split) 2020-09-13T06:48:08Z cky quit (*.net *.split) 2020-09-13T06:48:08Z mario-goulart quit (*.net *.split) 2020-09-13T06:48:43Z zooey quit (*.net *.split) 2020-09-13T06:48:43Z madage quit (*.net *.split) 2020-09-13T06:48:43Z hendursaga quit (*.net *.split) 2020-09-13T06:48:43Z tryte quit (*.net *.split) 2020-09-13T06:48:44Z xelxebar quit (*.net *.split) 2020-09-13T06:48:44Z cantstanya quit (*.net *.split) 2020-09-13T07:10:30Z badkins quit (Remote host closed the connection) 2020-09-13T07:12:55Z badkins joined #scheme 2020-09-13T07:17:06Z badkins quit (Ping timeout: 244 seconds) 2020-09-13T07:25:04Z siraben joined #scheme 2020-09-13T07:25:04Z Gnuxie[m] joined #scheme 2020-09-13T07:25:04Z Boarders joined #scheme 2020-09-13T07:25:04Z mbakke joined #scheme 2020-09-13T07:25:04Z cky joined #scheme 2020-09-13T07:25:04Z mario-goulart joined #scheme 2020-09-13T07:28:22Z casaca quit (Ping timeout: 246 seconds) 2020-09-13T07:29:09Z xelxebar joined #scheme 2020-09-13T07:29:09Z tryte joined #scheme 2020-09-13T07:29:09Z zooey joined #scheme 2020-09-13T07:29:34Z muelleme joined #scheme 2020-09-13T07:30:23Z hendursaga joined #scheme 2020-09-13T07:30:39Z cantstanya joined #scheme 2020-09-13T07:32:19Z xelxebar quit (Remote host closed the connection) 2020-09-13T07:32:41Z xelxebar joined #scheme 2020-09-13T07:34:14Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T07:34:54Z madage joined #scheme 2020-09-13T07:40:18Z brown121408 joined #scheme 2020-09-13T07:40:31Z brown121408 quit (Client Quit) 2020-09-13T07:46:39Z DKordic joined #scheme 2020-09-13T08:09:19Z muelleme joined #scheme 2020-09-13T08:10:07Z hendursa1 joined #scheme 2020-09-13T08:11:23Z brown121407 joined #scheme 2020-09-13T08:12:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-13T08:29:23Z brown121407 quit (Quit: ZNC 1.8.2 - https://znc.in) 2020-09-13T08:29:34Z brown121407 joined #scheme 2020-09-13T08:36:38Z brown121407 quit (Quit: ZNC 1.8.2 - https://znc.in) 2020-09-13T08:39:25Z brown121407 joined #scheme 2020-09-13T08:41:49Z arew: hello #scheme :) 2020-09-13T08:42:19Z brown121407 quit (Client Quit) 2020-09-13T08:43:47Z brown121407 joined #scheme 2020-09-13T08:50:22Z brown121407 quit (Quit: ZNC 1.8.2 - https://znc.in) 2020-09-13T08:52:09Z brown121407 joined #scheme 2020-09-13T08:53:13Z brown121407 quit (Client Quit) 2020-09-13T08:53:34Z brown121407 joined #scheme 2020-09-13T08:53:45Z brown121407 quit (Client Quit) 2020-09-13T08:54:46Z brown121407 joined #scheme 2020-09-13T08:55:09Z brown121407 quit (Client Quit) 2020-09-13T08:55:19Z brown121407 joined #scheme 2020-09-13T08:58:09Z brown121407 quit (Client Quit) 2020-09-13T08:58:46Z brown121407 joined #scheme 2020-09-13T09:02:28Z brown121407 quit (Client Quit) 2020-09-13T09:03:30Z brown121407 joined #scheme 2020-09-13T09:04:25Z daviid quit (Ping timeout: 240 seconds) 2020-09-13T09:13:44Z badkins joined #scheme 2020-09-13T09:17:55Z badkins quit (Ping timeout: 240 seconds) 2020-09-13T09:27:22Z casaca joined #scheme 2020-09-13T09:30:06Z vinvin quit (Quit: <3) 2020-09-13T09:38:20Z arew: the forefront of modern dynamically typed programming language, so called, JavaScript, you can not even use the REPL :? 2020-09-13T09:41:51Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T10:15:28Z marusich quit (Remote host closed the connection) 2020-09-13T10:30:12Z Tirifto joined #scheme 2020-09-13T10:30:51Z sp1ff quit (Ping timeout: 244 seconds) 2020-09-13T10:37:38Z rain1: hello 2020-09-13T10:42:06Z mdhughes: Open the dev console in your browser, it's a full-featured repl. 2020-09-13T10:42:39Z mdhughes: At least the Safari one is, with debugger/breakpoints. 2020-09-13T10:54:13Z brendyyn quit (Ping timeout: 264 seconds) 2020-09-13T10:55:30Z muelleme joined #scheme 2020-09-13T11:13:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-13T11:14:38Z badkins joined #scheme 2020-09-13T11:14:40Z brendyyn joined #scheme 2020-09-13T11:18:59Z badkins quit (Ping timeout: 240 seconds) 2020-09-13T11:23:07Z arew: yeah, I can open the dev console but that is a lot of friction 2020-09-13T11:27:23Z brendyyn quit (Ping timeout: 260 seconds) 2020-09-13T11:28:12Z bitmapper quit (Ping timeout: 244 seconds) 2020-09-13T11:32:57Z dyeplexer joined #scheme 2020-09-13T11:36:28Z brendyyn joined #scheme 2020-09-13T11:41:16Z dyeplexer: what does this syntax do?: #'apple 2020-09-13T11:41:54Z dyeplexer: This is chez scheme. the interpreter returns # 2020-09-13T11:42:58Z arew: that is a syntax object, that you use in some macros 2020-09-13T11:43:46Z arew: > (syntax->datum #'apple) 2020-09-13T11:43:48Z arew: apple 2020-09-13T11:44:25Z dyeplexer: I see. Is this therefore some sort of self referential macro?: #1=#(1 2 3 #1# 5 6) 2020-09-13T11:44:47Z dyeplexer: #1=#'(1 2 3 #1# 5 6) 2020-09-13T11:45:55Z rain1: some schemes support that 2020-09-13T11:46:08Z rain1: at least for regular quotating, not sure about syntax quotation 2020-09-13T11:46:25Z rain1: an infinite piece of syntax is probably something to avoid 2020-09-13T11:46:34Z rain1: a compler would have to run forever to process it 2020-09-13T11:46:45Z dyeplexer: Yes. It nearly crashed my system 2020-09-13T11:56:17Z muelleme joined #scheme 2020-09-13T12:02:29Z mdhughes: I use the JS console exactly like I use the Scheme REPL: I edit code in BBEdit (sometimes Atom) and paste into another window. Slightly easier to type ⌘⌥C than ⌘^4 (mapped in iTerm to a profile in my Scheme dir) then 'scheme' 2020-09-13T12:03:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-13T12:05:41Z muelleme joined #scheme 2020-09-13T12:05:53Z dyeplexer left #scheme 2020-09-13T12:18:49Z epony quit (Remote host closed the connection) 2020-09-13T12:20:55Z epony joined #scheme 2020-09-13T12:21:54Z DKordic quit (Remote host closed the connection) 2020-09-13T12:36:56Z DKordic joined #scheme 2020-09-13T12:43:21Z muelleme quit (Ping timeout: 265 seconds) 2020-09-13T12:43:31Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-13T12:54:10Z rain1: yaeh i do'nt find the repl very useful often 2020-09-13T13:09:02Z civodul joined #scheme 2020-09-13T13:15:33Z badkins joined #scheme 2020-09-13T13:19:03Z mdhughes: I highly recommend getting productive with it. 2020-09-13T13:19:58Z badkins quit (Ping timeout: 260 seconds) 2020-09-13T13:20:19Z mdhughes: Probably half my more complex code, I write by making a simplified data model, then develop piece by piece in REPL, then grab the history and edit it into a useful, clean function in editor. The other half, I do the other way, just testing edge cases. 2020-09-13T13:20:38Z rain1: i alway worry about grabbing the history, losing something or desync 2020-09-13T13:21:06Z mdhughes: .chezscheme_history never forgets! 2020-09-13T13:21:45Z mdhughes: Browsers can (rarely) crash, you can close the tab and that sucks, but Safari's been pretty stable. 2020-09-13T13:22:29Z mdhughes: Even if I did lose the text, I'd have it in my head because I just did it, it's just easier to not retype it. 2020-09-13T13:24:01Z mdhughes: (I don't have photographic memory, but anything I've written, seen, or heard recently is perfectly encoded for a few minutes. After that it decays quickly. I know humans don't all have that ability.) 2020-09-13T13:25:18Z rain1: that's impressivie 2020-09-13T13:25:23Z rain1: i definitely don't have that 2020-09-13T13:35:54Z badkins joined #scheme 2020-09-13T13:40:08Z edgar-rft joined #scheme 2020-09-13T13:46:58Z epony quit (Remote host closed the connection) 2020-09-13T13:48:01Z epony joined #scheme 2020-09-13T13:57:39Z X-Scale` joined #scheme 2020-09-13T13:58:45Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-13T13:58:47Z X-Scale` is now known as X-Scale 2020-09-13T14:08:38Z hendursa1 quit (Quit: hendursa1) 2020-09-13T14:08:56Z hendursaga joined #scheme 2020-09-13T14:50:20Z civodul quit (Remote host closed the connection) 2020-09-13T15:00:51Z badkins quit (Remote host closed the connection) 2020-09-13T15:01:27Z badkins joined #scheme 2020-09-13T15:06:14Z badkins quit (Ping timeout: 244 seconds) 2020-09-13T15:07:50Z Riastradh: arew: Not sure where you get the idea that there's no JavaScript REPL, but every major browser provides one and node has one outside a browser. 2020-09-13T15:15:41Z badkins joined #scheme 2020-09-13T15:19:19Z badkins quit (Remote host closed the connection) 2020-09-13T15:19:28Z badkins joined #scheme 2020-09-13T15:25:30Z hugh_marera joined #scheme 2020-09-13T15:45:13Z phillbush joined #scheme 2020-09-13T15:54:58Z rain1: but other than that 2020-09-13T16:17:49Z hugh_marera quit (Read error: Connection reset by peer) 2020-09-13T16:19:05Z hugh_marera joined #scheme 2020-09-13T16:23:22Z Riastradh quit (Remote host closed the connection) 2020-09-13T16:31:41Z lritter joined #scheme 2020-09-13T16:32:42Z Riastradh joined #scheme 2020-09-13T16:34:33Z libre joined #scheme 2020-09-13T16:57:48Z badkins quit (Remote host closed the connection) 2020-09-13T16:57:48Z libre left #scheme 2020-09-13T16:59:40Z badkins joined #scheme 2020-09-13T17:03:05Z hugh_marera quit (Quit: hugh_marera) 2020-09-13T17:04:07Z badkins quit (Ping timeout: 244 seconds) 2020-09-13T17:04:53Z lrf joined #scheme 2020-09-13T17:06:11Z ski quit (Ping timeout: 244 seconds) 2020-09-13T17:13:08Z jcowan: "But besides that, Mrs. Lincoln, how did you like the play?" 2020-09-13T17:15:13Z lrf quit (Ping timeout: 264 seconds) 2020-09-13T17:20:42Z aeth: Riastradh: To be fair, the JS REPL in the browsers is more like "enter this one liner to fix this current page" rather than a standalone thing. 2020-09-13T17:21:47Z aeth: The equivalent would probably be if you were forced to connect to swank inside of a running application to get a Lisp/Scheme REPL (on topic here because apparently at least one Scheme does SLIME/swank) 2020-09-13T17:22:32Z Riastradh *blink* 2020-09-13T17:22:36Z aeth: i.e. it's a "developer tool" 2020-09-13T17:22:56Z Riastradh: Your objection is that it is too well integrated into the application that you're doing development for? 2020-09-13T17:23:08Z Riastradh: Or that the REPL is a developer tool? 2020-09-13T17:23:20Z Riastradh: Do you hear yourself? 2020-09-13T17:23:23Z aeth: No, I'm just saying that there's no "JavaScript REPL" button afaik and the JS console is the console to make patches to the currently open tab. At least in Firefox afaik. 2020-09-13T17:23:48Z aeth: Compare it to slime/geiser/the-million-python-ones/etc. 2020-09-13T17:24:07Z Riastradh: How would you want it to work instead? 2020-09-13T17:24:26Z aeth: My point is, you don't have a blank canvas afaik (the closest is probably the new tab page, which is far from blank) 2020-09-13T17:24:43Z aeth: I would change it with one addition, which would just be... a blank "sandbox" tab specifically for REPL use 2020-09-13T17:24:46Z Riastradh: You can make a web page that is as blank as you want...? 2020-09-13T17:24:53Z Riastradh: You can make the new tab page be blank too? 2020-09-13T17:25:08Z Riastradh: It sounds like you're reaching pretty far just to raise an objection to a tool you've already decided to object to. 2020-09-13T17:25:09Z aeth: I'm not sure, about:blank doesn't seem to work in Firefox anymore 2020-09-13T17:25:28Z aeth: Oh, it still works, it just implicitly inserts a / at the end and fails :-) 2020-09-13T17:25:36Z aeth: If you delete the implicit / it works 2020-09-13T17:27:21Z aeth: Riastradh: There's a difference in intent between the REPL and the JS console, even though the JS console on about:blank is a REPL. For one, it's about:blank and then Ctrl+Shift+K, not about:repl. Ctrl+Shift+K is designed for patching the current page, with the blank "about:blank" just accidentally composing well with it. 2020-09-13T17:27:44Z Riastradh: Difference in intent? What does it matter? 2020-09-13T17:28:24Z aeth: Yes, it does matter. People have been getting REPL-like behavior out of debuggers for decades. 2020-09-13T17:28:54Z Riastradh: Why does it matter? 2020-09-13T17:29:14Z Riastradh: Do you understand why it sounds like you're just making up excuses to hate on a tool, without actually having any substantive criticism of it? 2020-09-13T17:29:45Z aeth: I'm saying that it is not a read-eval-print-loop by intent, even though you can treat it like one, that's all. 2020-09-13T17:30:23Z Riastradh: What does the `intent' matter? Does it work as an interactive development tool? 2020-09-13T17:32:10Z aeth: We're talking about the definition of "read eval print loop", and by my definition of "read eval print loop", I don't think the JavaScript console in Firefox applies because it's not quite intended to be used like a traditional REPL (at least in the Lisp/Scheme sense) even though you can use it to mostly behave like one (it's still sandboxed to the current tab, though). 2020-09-13T17:32:15Z Riastradh: It's been common in Lisp culture for decades to smugly extol how Lisp had REPLs before everyone else did, but times have changed -- lots of other languages have REPLs now, and indeed the browser's REPL is pretty remarkably well-integrated for extensive interactive exploration of the application. 2020-09-13T17:32:52Z Riastradh: It sounds like you're clinging to the old Lisp smugness about having had REPLs before everyone else did, without actually having a substantive criticism of the tool you're objecting to, like some kind of excuse for gatekeeping. 2020-09-13T17:33:42Z aeth: I guess when it comes down to it, it's the browser sandbox that makes it not really feel like a true REPL. It's tied to the current tab, and it's for debugging/changing the current tab. In a "normal" REPL, you can do pretty much anything from it. 2020-09-13T17:34:09Z aeth: And you really are meant to do pretty much anything from a lot of REPLs, particularly inside of Emacs. 2020-09-13T17:34:41Z Riastradh: So you can use the node REPL, under Emacs if you want? 2020-09-13T17:35:16Z aeth: I didn't say JS didn't have a REPL, I said one of your examples doesn't quite fit my personal definition of REPL. 2020-09-13T17:37:08Z aeth: I define $term one way, $something doesn't quite fit $my_definition of $term but $something fits $your_definition of $term and it doesn't have anything to really do with "clinging to the old Lisp smugness" and "some kind of excuse for gatekeeping". 2020-09-13T17:37:39Z aeth: I think your hostility there was uncalled for. 2020-09-13T17:37:41Z Riastradh: Okay...so you have a weirdly restrictive definition of `REPL' (even though the browser literally reads input, evaluates it, prints output, and does that in a loop); why are you arguing about that? Originally I was pointing out that arew's assessment that in JavaScript `you can not even use the REPL' which struck me as completely divorced from reality. 2020-09-13T17:38:36Z Riastradh: Why is this restrictive definition of REPL, which seems to have been concocted specifically to exclude a modern web development environment, relevant? 2020-09-13T17:38:51Z aeth: In a sense, what arew said is sort of true and sort of not. It's sandboxed so you can't use The REPL, but you can sort of use a sort of REPL, the JS console, depending on your definition of the REPL (if it counts) within that tab's sandbox. If the browser lets you. Mobile browsers might not. 2020-09-13T17:39:23Z aeth: Lua has a similar problem. Yes, you can have a Lua REPL, but it's pretty useless because anything meaningful you want to do is defined by the application's API (usually a game API) that you might not be able to access from any Lua REPL. 2020-09-13T17:39:42Z aeth: At least most browsers give you a JS console, though. That's better than the experience with Lua. 2020-09-13T17:39:59Z arew: sorry, I did not mean to start such a convo. 2020-09-13T17:40:01Z Riastradh: uh? 2020-09-13T17:40:09Z Riastradh: % lua 2020-09-13T17:40:09Z Riastradh: Lua 5.3.5 Copyright (C) 1994-2018 Lua.org, PUC-Rio 2020-09-13T17:40:09Z Riastradh: > 1 + 2 2020-09-13T17:40:09Z Riastradh: 3 2020-09-13T17:40:21Z arew: The problem with browser REPL is that I need to compile the whole javascript to be able to interact with library I want to test 2020-09-13T17:40:27Z aeth: Riastradh: Right, now test out some Wesnoth scripts from that REPL. 2020-09-13T17:40:35Z Riastradh: % node 2020-09-13T17:40:35Z Riastradh: Welcome to Node.js v14.8.0. 2020-09-13T17:40:35Z Riastradh: Type ".help" for more information. 2020-09-13T17:40:35Z Riastradh: > 1 + 2 2020-09-13T17:40:35Z Riastradh: 3 2020-09-13T17:40:45Z Riastradh: These are not REPLs??? 2020-09-13T17:40:50Z arew: can you import a library found in node_modules? 2020-09-13T17:40:53Z aeth: Did you not read the lines I wrote? 2020-09-13T17:41:21Z arew: with nodejs specifically, I do not hink on can import anything as of stable release of nodejs 2020-09-13T17:41:30Z Riastradh: arew: yes...? 2020-09-13T17:41:35Z Riastradh: Works for me? 2020-09-13T17:41:49Z arew: then I am clueless. 2020-09-13T17:42:23Z aeth: Lua has a REPL at "% lua". This exists. You can run "1 + 2". You cannot run meaningful Lua code because all meaningful Lua code (it's so minimalist of a language, this is pretty much true) is dependent on a specific application's exposed scripting's API, which is separate from the "% lua" universe. 2020-09-13T17:42:25Z Riastradh: aeth: Does it make sense to run Wesnoth scripts outside the context of Wesnoth? 2020-09-13T17:42:39Z arew: what I do is recompile a helpers.js library where I need to import then re-export everything I want to test. 2020-09-13T17:42:45Z Riastradh: If so, is your objection that _Lua_ doesn't have a REPL or that _Wesnoth_ doesn't provide a REPL? 2020-09-13T17:43:05Z arew: and use the browser repl. 2020-09-13T17:43:11Z aeth: It sort of provides a REPL in that you can run Lua scripts, although iirc it doesn't print the output so you then have to wrap it in a print and manually REPL that bit. 2020-09-13T17:43:20Z rain1: you lot have names thaht are confusing me 2020-09-13T17:43:56Z Riastradh: https://nodejs.org/api/repl.html 2020-09-13T17:44:14Z aeth: Riastradh: I guess the real complaint I have with Lua, though, is that the REPL just checks a box. It's there because scripting languages have REPLs. But it's almost entirely useless in practice if you've written a lot of Lua. As opposed to a Lisp/Scheme, where the whole thing is often entirely REPL-driven. 2020-09-13T17:44:29Z aeth: If Lua didn't offer a REPL, no one would care and no one would miss it. 2020-09-13T17:44:36Z aeth: I've probably used it 4 times. 2020-09-13T17:44:51Z Riastradh: I am totally confused about what the point is. 2020-09-13T17:45:10Z arew: (my problem is related to the previously absence of module in nodejs...) 2020-09-13T17:45:10Z aeth: Virtually any non-trivial Lua code you might want to test has an explicit or implicit dependency on the API of the application you're scripting, meaning the REPL has very little utility. 2020-09-13T17:45:49Z Riastradh: arew claimed that in JavaScript `you can not even use the REPL' and seems to have learned that that is not the case. 2020-09-13T17:46:15Z aeth: Riastradh: The weaker claim of "in development, you do not even use the REPL" rather than "you cannot" might still be true; it is with Lua. 2020-09-13T17:46:58Z Riastradh: Umm... I used the browser _and_ node REPLs extensively at my last day job. 2020-09-13T17:47:26Z aeth: You've used node's REPL? What for? 2020-09-13T17:47:53Z Riastradh: For... developing software in node? 2020-09-13T17:48:50Z Riastradh: For example, and . 2020-09-13T17:49:44Z rain1: so you have a github! 2020-09-13T17:50:57Z arew: my fault sorry for the noise everybody :) 2020-09-13T17:51:35Z Riastradh: arew: it's cool, happy to help people learn, if they want! 2020-09-13T17:53:10Z arew: say, I call "const EventEmitter = require('events')" inside nodejs repl, it will import 'events' ? 2020-09-13T17:55:26Z arew: it works! 2020-09-13T17:55:30Z arew: :D 2020-09-13T18:20:39Z bitmapper joined #scheme 2020-09-13T18:25:50Z badkins joined #scheme 2020-09-13T18:30:49Z badkins quit (Ping timeout: 264 seconds) 2020-09-13T18:42:20Z badkins joined #scheme 2020-09-13T18:45:47Z arew quit (Ping timeout: 240 seconds) 2020-09-13T18:46:31Z even4void joined #scheme 2020-09-13T18:51:55Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-13T18:52:49Z gravicappa joined #scheme 2020-09-13T19:09:54Z muelleme joined #scheme 2020-09-13T19:11:31Z raingloom joined #scheme 2020-09-13T19:11:52Z jcowan: aeth: Not all Lua code is embedded by any means: there are plenty of people who write scripts a la Perl in Lua. 2020-09-13T19:15:06Z Zipheir: It's actually nice as a cleaner, smaller alternative to Perl 5. 2020-09-13T19:21:02Z bitmapper: perl6 is ok 2020-09-13T19:23:22Z civodul joined #scheme 2020-09-13T19:32:25Z Zipheir: bitmapper: Don't you mean "Raku"? :) 2020-09-13T19:32:42Z bitmapper: i mean personally i hate raku 2020-09-13T19:32:56Z jcowan: I love Cicero's works, but I detest Tully's. 2020-09-13T19:32:58Z even4void quit (Remote host closed the connection) 2020-09-13T19:33:16Z even4void joined #scheme 2020-09-13T19:37:25Z arew joined #scheme 2020-09-13T19:45:52Z X-Scale` joined #scheme 2020-09-13T19:46:11Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-13T19:47:02Z X-Scale` is now known as X-Scale 2020-09-13T19:56:25Z izh_ joined #scheme 2020-09-13T19:59:42Z even4void quit (Remote host closed the connection) 2020-09-13T20:04:26Z arew quit (Ping timeout: 244 seconds) 2020-09-13T20:06:42Z aeth: Tangential, but the interesting extensions to Lua to make it generally useful as a scripting language seem to be for LuaJIT... e.g. https://luafun.github.io/ 2020-09-13T20:07:02Z aeth: Probably not that interesting to Schemers, though, since I bet the inspiration went in the other direction. 2020-09-13T20:07:33Z aeth: well, actually, it looks like it's more of Python-style with e.g. its map() 2020-09-13T20:08:41Z Zipheir: Lua has very imperative-flavored design overall. 2020-09-13T20:26:23Z muelleme quit (Ping timeout: 260 seconds) 2020-09-13T20:38:58Z lritter quit (Ping timeout: 244 seconds) 2020-09-13T20:43:03Z jcowan: Lua 5 has full Scheme/CL closures after restricted versions in earlier Luas, and that is explicitly said to be Scheme influence. 2020-09-13T20:45:43Z lritter joined #scheme 2020-09-13T21:04:59Z ggole quit (Quit: Leaving) 2020-09-13T21:08:24Z aeth: I'm surprised we don't see more Lua implementations. It's a tiny language and a good "second language" to test a language platform out with. I intend to implement it after Airship Scheme so I can librarify a lot of Airship Scheme's implementation. 2020-09-13T21:08:34Z aeth: Compare to e.g. Scheme where everyone and their pet has written one. 2020-09-13T21:08:51Z aeth: I guess there's a difference in that Scheme is specified... and the parsing is easier. 2020-09-13T21:13:02Z mdhughes: Of course Node also has a REPL, and it's 100% the same as a Scheme REPL. Everything you can do in running programs, you can do in REPL. 2020-09-13T21:15:13Z mdhughes: The browser/dev console is just where I mostly live, my Node server is very minimal. 2020-09-13T21:17:35Z Riastradh: (parsing is not actually that difficult if you have the tools to do it; Scheme is easier to write a naive recursive-descent parser for, sure, but naive recursive-descent parsers are also much easier to get horribly wrong than lexers and LALR parsers...) 2020-09-13T21:19:04Z daviid joined #scheme 2020-09-13T21:22:17Z muelleme joined #scheme 2020-09-13T21:22:52Z aeth: Riastradh: Scheme isn't as easy to parse as you might think, either. In particular, the numeric syntax and the dotted lists. 2020-09-13T21:23:17Z mdhughes: And even embedded Lua or whatever, you can still use a REPL: Just run it from a drop-down console, or in chat. Literally that's what most MMOs do, ESO just exposes Lua from chat with /run WHATEVS 2020-09-13T21:23:52Z aeth: Oh, and you have to decide what to do with things that are almost, but not quite numbers in Scheme. You can turn them into an identifier (the CL way iirc), which will probably not be defined, and give an error that way... but then someone might actually use them as an identifier and it'll be harder to extend your numeric syntax later. 2020-09-13T21:24:00Z gravicappa quit (Ping timeout: 244 seconds) 2020-09-13T21:24:12Z Riastradh: Woulda been nice to have lex to write MIT Scheme's number parser but instead it's a hand-kludged finite state machine. 2020-09-13T21:24:21Z mdhughes: Why can't you just use (read) to read Scheme back in? 2020-09-13T21:24:51Z mdhughes: (yes, you have to reimplement read in your outer lang, if you have one. But that's often another Scheme/LISP) 2020-09-13T21:24:53Z Riastradh: https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/runtime/numpar.scm 2020-09-13T21:25:55Z aeth: Riastradh: If you're talking about generated parsers, people tend to hate them because the error messages are often not very helpful at all. Meanwhile, I can give style warnings that warn you about a particular flaw in the default configuration for paredit for Emacs because I know exactly where that shows up. 2020-09-13T21:26:58Z muelleme quit (Ping timeout: 246 seconds) 2020-09-13T21:27:45Z Riastradh: Giving reasonable error messages in LALR parsers is not actually that difficult. 2020-09-13T21:27:55Z Riastradh: What's the flaw in the default paredit configuration? 2020-09-13T21:28:08Z rgherdt quit (Ping timeout: 244 seconds) 2020-09-13T21:29:18Z aeth: Riastradh: prefixed "("s like "#u8(", which it turns into "#u8 (", which is actually non portable and won't parse in every r7rs because it's specified formally as "#u8(" so parsers don't have to permit a space there. 2020-09-13T21:29:51Z aeth: the solution is (setq paredit-space-for-delimiter-predicates '((lambda (endp delimiter) nil))) 2020-09-13T21:29:57Z Riastradh: not a solution 2020-09-13T21:30:19Z aeth: I guess you could in thoery special case #u8( but now you have to special case every #...( which is impossible in general, especially if reader macros are allowed (like in CL) 2020-09-13T21:30:41Z Riastradh: If R7RS requires `#u8(' and rejects `#u8 (' that's kind of silly. But anyway, the trouble is that -- yes, you need to know which things take a space there and which things don't, and it's not the same from Lisp to Lisp. 2020-09-13T21:31:17Z aeth: In general, paredit *should* assume #...( is a valid extension to the s-expression syntax, especially if it wants to work on every Lisp, including ones with reader macros. 2020-09-13T21:31:20Z Riastradh: #t(...) #f(...) #u8 (...) #P "..." 2020-09-13T21:31:53Z aeth: If you write #t(...) that's on you. In fact, I should be able to style warning things like that. 2020-09-13T21:31:54Z Riastradh: #+ (...) #- (...) 2020-09-13T21:32:01Z aeth: You can't automatically manage everything. 2020-09-13T21:32:24Z Riastradh: Heh. So is it a flaw in paredit or not? 2020-09-13T21:32:47Z aeth: This is why I prefer Scheme's identifier conventions to CL's, actually. It permits more things to be "automatic" if an IDE is smart enough, e.g. foo? instead of foop and foo! instead of half a dozen ways to express it 2020-09-13T21:33:25Z aeth: Riastradh: it's absolutely a flaw in Paredit because it attempts to automate something that is impossible to automate in general, and does a poor job at it because it doesn't even detect any (or at least not many) things beyond #(, even language built-ins like #u8( 2020-09-13T21:33:44Z badkins quit (Remote host closed the connection) 2020-09-13T21:33:48Z jcowan: The grammar of Lua is certainly specified, and most of the semantics are simple enough. A good step would be to write an S-expression language with Lua semantics, like Tinylisp (for Fortran), LFE, etc. 2020-09-13T21:33:51Z Riastradh: #t and #f have been language builtins for much longer than #u8 2020-09-13T21:33:58Z aeth: It being "smart" there is worse than it not even trying, since it'll automatically re-format the correct #u8( into #u8 ( 2020-09-13T21:34:22Z Riastradh: Nothing in paredit will automatically change `#u8(' to `#u8 ('. 2020-09-13T21:34:25Z badkins joined #scheme 2020-09-13T21:34:40Z aeth: Riastradh: If it detected Scheme and special cased #t and #f and #true and #false for Scheme, that would be a smarter way of being smart, since #t ( is the exception, while #...( is to be expected in far more cases 2020-09-13T21:35:20Z aeth: Riastradh: Paredit absolutely automatically changes #u8( into #u8 (, even in Scheme, not Lisps in general. I disabled my configuration file and tested it out before I commented the solution into my source code. 2020-09-13T21:36:20Z Riastradh: It does not. If you have `#u8(' in your buffer, no paredit command will reformat it into `#u8 ('. 2020-09-13T21:36:43Z Riastradh: When you type the ( key after `#u8' then it will _insert_ ` (' but that's different from reformatting what's already there. 2020-09-13T21:37:44Z Riastradh: Before the R7RS, there were no alphanumeric #xyz(...) notations in widespread use in Scheme. There was #t, #f, #e, #i, #x, #d, #b, #o -- none of which ever take () after. 2020-09-13T21:39:03Z badkins quit (Ping timeout: 258 seconds) 2020-09-13T21:39:37Z badkins joined #scheme 2020-09-13T21:39:39Z aeth: Riastradh: The comment in my source is more precise, and says "produces" not "reformats", although I wouldn't be surprised if there's a case where it reformats. One place where it will reformat is if the #u8 and the ( get separated on separate lines, and then you merge them back together with M-^ on the line with the (, although that still happens even with my fix 2020-09-13T21:39:56Z Riastradh: M-^ isn't paredit 2020-09-13T21:41:03Z aeth: Annoyingly, it will still treat #u8( as two tokens, so you'll have to pull it into a list twice with C-{right-arrow} 2020-09-13T21:41:34Z Riastradh: I appreciate it's not ideal, and I agree that it can't be automated in general. I just think you should be a little more open to hearing other people's existing experiences solving problems you haven't put much effort into before dismissing them as wrong -- a common theme, I feel! 2020-09-13T21:41:49Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-13T21:42:36Z aeth: Defaults matter. Default behavior matters. Default behavior of an auto-formatter that takes code that you typed in a syntactically correct way and turns it into UB-formatted code that might not work is a bug or at least a misfeature. 2020-09-13T21:42:43Z Riastradh: The mechanism that Emacs uses for M-^ is the syntax-table, which is a good approximation for many purposes, but also very naive and therefore sometimes limited. 2020-09-13T21:43:05Z Riastradh: Do you think I'm claiming defaults don't matter? 2020-09-13T21:43:12Z aeth: As for M-^, I wouldn't be surprised if paredit overrides it, or at least can. It overrides quite a bit of Emacs. 2020-09-13T21:43:23Z Riastradh: If you think that then you're evidently not listening. 2020-09-13T21:44:04Z badkins quit (Ping timeout: 244 seconds) 2020-09-13T21:44:33Z aeth: I'm just bringing up paredit because it's a commonly used tool with poor default behavior that produces invalid Scheme syntax, requiring me to extend the syntax beyond what is specified in order to support it. 2020-09-13T21:44:41Z Riastradh: This isn't a matter of mere defaults; _any_ default choice in a system that works as simply and reliably as paredit is going to be wrong for some subset of cases. 2020-09-13T21:46:19Z Riastradh: I spenta while trying to find a good answer and I couldn't find one that was definitely better, on balance, than what is there now. That's _why_ the parameter you were able to set exists at all, in spite of my efforts for years to limit any kind of customizability in favour of having the `right way' be the default and only way. 2020-09-13T21:46:55Z Riastradh: Do you see why it might be frustrating to hear you argue to me that `defaults matter' as if I'd never thought of that before? 2020-09-13T21:47:00Z aeth: jcowan: Your implementation approach is the correct approach for languages, imo. Essentially, a reversal of what quite a lot of languages have (e.g. Hy on Python), going language->sxp instead of sxp->language. 2020-09-13T21:48:01Z badkins joined #scheme 2020-09-13T21:48:21Z jcowan: Gotta watch those spenta whiles, they can give you problems down the road. 2020-09-13T21:48:37Z badkins quit (Remote host closed the connection) 2020-09-13T21:49:11Z badkins joined #scheme 2020-09-13T21:51:24Z aeth: Riastradh: As I said, its default behavior is an attempt to be too smart in an area that is impossible, at least in s-expression languages with (structured! doesn't have to be CL-style! it can mandate the "#...(" form!) reader macros. 2020-09-13T21:52:32Z aeth: But even without reader macros, changing syntax happens (like in Scheme). 2020-09-13T21:52:58Z aeth: I'm not sure there's anything else I can say on the matter, since you clearly disagree and any further comments will just go around in circles. 2020-09-13T21:53:55Z badkins quit (Ping timeout: 240 seconds) 2020-09-13T21:58:43Z Riastradh: Gosh, wow, I didn't realize how much thought you'd already put into it, interesting. I wonder what other cases I hadn't thought about. 2020-09-13T22:00:54Z Riastradh: I don't even know what you think I disagree about, exactly. Yes, it's hard to do this right, simply and reliably, in a way that will please everyone. Mostly I think you like to pontificate from an armchair without engaging. 2020-09-13T22:02:01Z aeth: "#u8 (" is now a syntax error in Airship Scheme. 2020-09-13T22:02:19Z Riastradh: Added out of spite from this conversation? 2020-09-13T22:02:20Z aeth: As permitted, and even suggested, by the plain reading of the standard. 2020-09-13T22:02:50Z aeth: I suppose you can get R7RS-large to extend it. The syntax docket isn't up to vote yet. 2020-09-13T22:04:48Z aeth: My reading of §7.1 is stricter than Chibi's, and so Airship Scheme already errors on many other things that Chibi permits. 2020-09-13T22:06:24Z Riastradh: (`the' standard, heh) 2020-09-13T22:07:23Z whiteline_ quit (Ping timeout: 240 seconds) 2020-09-13T22:07:40Z aeth: The idea to put more permissive behavior under a flag is from mdhughes and I might add such a flag later. 2020-09-13T22:07:48Z jcowan: The standard that both Airship and Chibi have chosen to adhere to, yes. 2020-09-13T22:07:51Z Riastradh: but which one will be the default 2020-09-13T22:08:37Z aeth: I'm very strongly leaning to being strict with the syntax precisely because Chibi is not. This helps keep portable Scheme portable, even if another future Scheme implementation is strict with the syntax, rather than creating an implicit standard that's more lax. 2020-09-13T22:08:57Z aeth: Nothing's wrong with either approach, of course. 2020-09-13T22:09:27Z aeth: s/leaning to/leaning towards/ 2020-09-13T22:10:10Z jcowan: however, # (1 2 3) doesn't work in either implementaiton 2020-09-13T22:10:47Z jcowan: R7RS-large, following on SRFI 4, already has the ambiguity problem of #f32(1.0 2.0), which can be read as #f 32 (1.0 2.0) 2020-09-13T22:11:07Z aeth: jcowan: in particular, Airship Scheme currently treats "# (..." as an attempt to use the unsupported syntax "# " 2020-09-13T22:11:52Z izh_ quit (Quit: Leaving) 2020-09-13T22:12:06Z aeth: It actually took a bit of effort to work around "#u8 (". Maybe a dozen lines. 2020-09-13T22:13:31Z aeth: This is because it's specifically whitespace separated rather than delimiter separated iirc. Since e.g. #u8 ; should still be nonsense 2020-09-13T22:14:21Z Riastradh: Anyway, if you have an idea for how to improve things -- one that doesn't just leave "foo"(xyz) or #t(xyz) or bar(xyz) in the buffer -- I'm happy to hear constructive suggestions. In my experience, #u8 is an exceptional case compared to just about everything else in Scheme -- there's a reason my first attempts at improving the heuristics were prompted by Common Lisp, not by Scheme. 2020-09-13T22:17:20Z rmura joined #scheme 2020-09-13T22:19:05Z jcowan: Well, SRFI 4 and 160 have a whole batch of homogeneous-array syntaxes, although they are not yet (if ever) part of R7RS-large. There may be something for multidimensional arrays, perhaps on CL lines but perhaps more complex (lower bounds and/or types) 2020-09-13T22:19:06Z aeth: Scheme has gotten a lot more CLified with R7RS (and none of that was my doing!) 2020-09-13T22:19:17Z jcowan: How so? 2020-09-13T22:19:33Z aeth: CL is one of the main sources of inspiration for new extensions 2020-09-13T22:19:39Z aeth: (none of which were written by me!) 2020-09-13T22:20:24Z aeth: Interestingly, it looks like CL does permit #b 101010101010101 for its bitvectors 2020-09-13T22:20:35Z Riastradh: CL bit vector notation is #* 2020-09-13T22:21:01Z aeth: or, sorry, its bits 2020-09-13T22:21:09Z aeth: I use that more than bitvectors 2020-09-13T22:21:15Z jcowan: #* is the notation for a bit *vector*, #b is the notation for base 2 *integers*. 2020-09-13T22:21:34Z jcowan: CL and R7RS-large support both, or at least I assume bitvectors will be voted in. 2020-09-13T22:21:36Z Riastradh: By the way, it's possible that GNU Emacs has sprouted or will sprout a new way to detect #u8 for use by, e.g., M-^, that is more sophisticated than the dumb syntax table method. If that has happened, then presumably paredit could take advantage of it. 2020-09-13T22:21:55Z aeth: "#* 10101" isn't an error, but that's because #* is treated as an empty bitvector. "#b 10101" for its numeric syntax is supported, though 2020-09-13T22:22:39Z aeth: I tested both out in the same time in the REPL and messed up which was which 2020-09-13T22:22:55Z aeth: thanks for the correction 2020-09-13T22:23:00Z jcowan: The Red and Tangerine editions don't have anything CL-ish that I can see, except things shared with R6RS like hash tables. 2020-09-13T22:23:04Z muelleme joined #scheme 2020-09-13T22:25:30Z aeth: Riastradh: I wasn't aware that paredit didn't override any M-^ behavior. I assumed it did, like with almost everything else. 2020-09-13T22:26:41Z aeth: I guess I'll have to treat M-^ with suspicion when I use it now, since it's "dumber" than I thought. 2020-09-13T22:27:09Z Riastradh: Nope, paredit doesn't actually override that much: character/line/word insertion and deletion commands, and forward/backward/up/down. Plenty of other commands like C-M-t and C-M-k are untouched. 2020-09-13T22:27:28Z Riastradh: M-; too 2020-09-13T22:27:33Z muelleme quit (Ping timeout: 244 seconds) 2020-09-13T22:27:34Z Riastradh: I mean paredit overrides M-; too. 2020-09-13T22:28:04Z Riastradh: I thought you wanted the heuristic to be dumber, not smarter? 2020-09-13T22:28:30Z Riastradh: I have gathered that you don't like the status quo, but I am genuinely confused about what change you want to see happen! 2020-09-13T22:28:40Z jcowan: Beyond that (and into the domain of the speculative), multidimensional arrays are conceptually shared with CL, but few of the details. Beyond that, all I see is the META port-regex library and `tagbody`. 2020-09-13T22:28:48Z Riastradh: tagbody? 2020-09-13T22:29:17Z jcowan: Your very own definition. But it's the very last thing on the current list of dockets. 2020-09-13T22:29:18Z aeth: For #...( I do want the heuristic to be dumber, not smarter, since there's a well-defined convention of #...( that's used all over the place in syntax extensions, both official (#u8) and unofficial (virtually all well-behaved reader macros in Lisps that have them) 2020-09-13T22:29:38Z aeth: But, I mean, clearly we had that discussion already. 2020-09-13T22:29:42Z Riastradh: aeth: How do you think it could be dumber, without being too dumb? 2020-09-13T22:30:00Z Riastradh: Exactly what logic in paredit already considers `#...'? 2020-09-13T22:30:27Z aeth: I suppose it could also be *smarter* not dumber, and consider #...( as a special case, and then #t( in Scheme/Racket as a special case on a special case, and so on 2020-09-13T22:31:27Z Riastradh: A moment ago you wanted it dumber; now you want it smarter; either way it seems like you don't even know what the logic does or what other cases it handles or how it relies on Emacs's built-in heuristic parsing machinery. 2020-09-13T22:31:55Z aeth: It's in a sweet spot where I don't like it. Proposing that it's dumber is simpler (and it can be overriden to be dumber, which I do in my configuration). But being smarter is also an alternative. 2020-09-13T22:32:27Z aeth: s/Proposing that it's/Proposing that it becomes/ 2020-09-13T22:32:31Z Riastradh: It's totally cool to be unaware of all that; I just suggest you have a little more humility, and acknowledge that it's complicated before telling me I did it wrong and implying that I don't understand and haven't thought about how important defaults are. 2020-09-13T22:33:49Z aeth: I probably would have been a bit more diplomatic about it if I had known that you're the author (as you seem to be implying throughout this conversation, at least), but if a user gave me such feedback for something I wrote, I'd consider it useful that someone gave more blunt feedback than humans are normally socialized to give. 2020-09-13T22:34:53Z jcowan: Some humans. It's a cultural trait. (New Yorkers' idea of polite is other Americans' idea of rude.) 2020-09-13T22:35:29Z Riastradh: Yes, I am the author of paredit. You're not the first to have pointed out that there are annoying edge cases here, but I think you are the first to insinuate that there is any easy answer or suggesting that the author must not have considered that defaults matter. 2020-09-13T22:36:27Z aeth: jcowan: good point 2020-09-13T22:38:05Z Riastradh: May I suggest being more diplomatic about considering other perspectives whether or not you're talking to the author, before pontificating about how easy it is or how wrong someone else is? 2020-09-13T22:38:29Z aeth: It is one of the most annoying issues I have faced in any of the tooling I use, and it took me a while to track down and disable the behavior (at least there was a way to disable it), and I gave it both a colorful commit message and comment when I did finally resolve it, in so far the only instance of me doing either in over 10 years of programming with source control (mostly git, but a bunch of SVN in the early days). 2020-09-13T22:38:35Z aeth: So this particular issue is clouded by emotion for me. :-) 2020-09-13T22:39:09Z Riastradh: I think that's a testament to how well _everything else_ about the heuristics works! The exception that proves the rule, as they say. 2020-09-13T22:39:15Z aeth: Right. 2020-09-13T22:39:31Z aeth: I suggested the solution "make it dumber" because it's easier, but "make it smarter" is also a solution, assuming GNU Emacs permits it. 2020-09-13T22:41:25Z Riastradh: It's possible that parse-partial-sexp will return information that can fruitfully discriminate the state after #t from the state after #u8 but I don't see how. 2020-09-13T22:41:36Z jcowan: Exceptio probat regulam: the (specified) exception establishes the (unspecified) rule in cases not excepted. 2020-09-13T22:43:21Z aeth: (Something else that fails is the auto-indentation of complicated conditional clauses in CL:LOOPs, even with the patch to make LOOP indentation work properly... but it's CL's LOOP so I forgive the tools there) 2020-09-13T22:43:33Z Riastradh: (solution: use foof-loop instead of cl loop) 2020-09-13T22:47:05Z Riastradh: Here, by the way, is an example customization for Common Lisp: . Note that it's not uniformly `#X(foo)' there either for any X, e.g. one generally writes `#2A(...)' but `#+sbcl (...)'. 2020-09-13T22:47:38Z Riastradh: On the other hand, one also generally writes `#+(or sbcl abcl) ...'. 2020-09-13T22:48:04Z aeth: Now, Airship Scheme wouldn't really be fulfilling its promise if I didn't fully port CL's LOOP into Scheme, even if one shouldn't use it. 2020-09-13T22:48:05Z Riastradh: So simply omitting a space after `#...' is wrong in both Scheme and Common Lisp. 2020-09-13T22:48:55Z aeth: #+foo ( or alternatively #-foo ( is the exception in CL afaik. 2020-09-13T22:49:11Z aeth: (although, to be fair, #+foo\n is even better style in almost all, if not all, cases.) 2020-09-13T22:49:57Z Riastradh: Not saying anything about relative prelavence in Common Lisp -- just that a uniform rule doesn't work there either. 2020-09-13T22:49:58Z aeth: tangential, but "octothorpe" is such a strange word for "hashtag" 2020-09-13T22:50:45Z Riastradh: This is the point at which I get to call you a whippersnapper for inflecting the word `hash' with the suffix `tag', while jcowan chuckles at the absurdity of the dynamic. 2020-09-13T22:51:18Z aeth: In Lisps that support it, #h( is the hash table hash tag syntax. 2020-09-13T22:51:24Z aeth: usually. 2020-09-13T22:51:44Z aeth: Clearly, that's the origin of the word :-p 2020-09-13T22:51:46Z jcowan: Examples? 2020-09-13T22:52:34Z Tirifto quit (Quit: Leaving.) 2020-09-13T22:53:02Z jcowan: I've never understood why you believe Airship Scheme should support CL *syntax*, any more than Elisp (or Lua or Fortran) syntax. CL *procedures*, yes, absolutely. 2020-09-13T22:53:18Z aeth: jcowan: It's a common reader macro in CL, implemented independently at least twice iirc. Unless I'm getting the syntax wrong in my memory. I also recall seeing it elsewhere built-in, perhaps in some Schemes. It looks like it might be #hash() in Racket, though (almost a helpful error message, since Racket told me "a" was expected after "h", leading me to guess "#hash()"). 2020-09-13T22:54:38Z aeth: jcowan: As for CL syntax, I will probably support some, like #*1234. Others would be very problematic to support, like #'foo, which has a different meaning in (some) Schemes, and which isn't very useful in a Scheme, anyway. 2020-09-13T22:54:47Z Riastradh: #*1234 is not CL syntax 2020-09-13T22:55:03Z jcowan: I meant "syntax" in the Scheme sense, i.e. macros and special forms. 2020-09-13T22:55:30Z jcowan: which is comparable to the use of "syntax" in other languages. In CL "syntax" means lexical syntax for whatever reasons. 2020-09-13T22:55:55Z aeth: Riastradh: To be precise, it's an error (unlike, say, #*1010), but it's as much syntax as a lot of the special cases in your octothorpe link, like #2A "foo bar", which is also an error. 2020-09-13T22:56:14Z jcowan: Although #0A"foo bar" is perfectly valid in CL. 2020-09-13T22:56:33Z aeth: #*1234 is probably a useful syntax error, though, since it will attempt a bit vector and fail at the #\2 2020-09-13T22:57:38Z aeth: jcowan: Good point, and that's one of the "hashtag" cases I didn't test. Apparently #0A "foo bar" works, too, at least in SBCL. #0A"foo bar" is the syntax I'd expect. 2020-09-13T22:57:47Z Riastradh: #2A "foo bar" is an example where inserting the space is supposed to be jarring because the syntax is wrong. 2020-09-13T22:58:15Z aeth: I hope one day I'll use a tool where #*1234 becomes #*1 234 then :-P 2020-09-13T22:58:29Z aeth: I'm not sure if that's a case of too smart or not. 2020-09-13T22:58:35Z Riastradh: Gonna take a lot more engineering work to manage that! 2020-09-13T22:59:02Z jcowan: I think #0A is fine, since (unlike the cases from 1 on up) the (...) is not part of the syntax. 2020-09-13T22:59:29Z Riastradh: I think a big part of what made paredit successful is that it gets a lot of heuristics very close to being the right thing, without requiring substantial re-engineering -- and maintenance -- of the underlying editor engine. 2020-09-13T23:00:07Z jcowan: One of the few things I don't like about SRFI 179 (the latest and IMO greatest in Scheme array SRFIs) is it's lack of support for 0-dimensional arrays. 2020-09-13T23:00:23Z jcowan: also for degenerate arrays without storage. 2020-09-13T23:00:30Z aeth: 0D arrays are great fun as an edge case that has some uses, but Scheme does have boxes for that, unlike CL. 2020-09-13T23:00:45Z aeth: s/that has/that have/ 2020-09-13T23:00:48Z Riastradh: (and that was made much easier, and much more reliable, by an early decision _not_ to allow customization, except for just changing key bindings) 2020-09-13T23:01:09Z aeth: s/that have/that has/ 2020-09-13T23:01:18Z aeth: I wrote a sentence that's hard to parse :-) 2020-09-13T23:01:58Z jcowan: One obvious edge case is the definition of inner product, which (assuming its arrays are conformable) has a rank of a_rank + b_rank - 2. 2020-09-13T23:02:16Z jcowan: that is, the result does 2020-09-13T23:02:18Z aeth: Riastradh: Any attempt to be substantially smarter than paredit would probably have to be built into a custom Emacs clone (many have been attempted, but none have taken off) 2020-09-13T23:02:22Z Riastradh: (that is, `defaults matter' -- and `you should be able to type what you would have typed before, but you have the option of omitting keystrokes' -- was part of my philosophy for paredit pretty much since day 1 in 2005) 2020-09-13T23:03:02Z autumn[m]: isn't hemlock a thing? I saw a (dead) repo on github asserting it was a port of the thing to other CLs or something 2020-09-13T23:03:05Z aeth: of course, if your editor is really smart, I'm not sure if #*1234 into #*1 234 (what you might have meant) is a good idea, or just instantly underlining that red is more helpful 2020-09-13T23:03:14Z jcowan: https://github.com/johnwcowan/r7rs-work/blob/master/LexicalDocket.md is the current list of lexical proposals in SRFIs 2020-09-13T23:03:40Z jcowan: If it's hemlock, I"m not surprised the repo is dead, just like Socrates. 2020-09-13T23:03:57Z Riastradh: Hemlock and Climacs and Edwin and Zmacs are all things, but GNU Emacs is actually a living project that a lot of people use and rely on. 2020-09-13T23:04:15Z aeth: RIP XEmacs 2020-09-13T23:04:15Z jcowan: There is also Second Climacs, a WIP. 2020-09-13T23:04:51Z cjb joined #scheme 2020-09-13T23:05:35Z jcowan: One reasonable possibility that there isn't a SRFI for is raw strings, but they only make much sense if you deal in raw backslashes a lot, since Lisp strings are allowed to contain explicit newlines. 2020-09-13T23:05:47Z aeth: I intend to one day sneak a(n Emacs-like) text editor into my game engine, which is part of the natural bloating process for game engines. 2020-09-13T23:05:53Z aeth: Not anytime soon, though. 2020-09-13T23:06:06Z jcowan: Can your game engine read email? 2020-09-13T23:06:11Z jcowan: If not, it is incomplete. 2020-09-13T23:06:16Z aeth: That's the natural bloating process for a text editor 2020-09-13T23:06:19Z aeth: So, probably one day. 2020-09-13T23:06:41Z aeth: The new version of "read email" is probably "IM" 2020-09-13T23:06:54Z aeth: Everything bloated enough has its own implementation of IM, including quite a few websites. 2020-09-13T23:07:29Z aeth: That's definitely coming, since text chat makes sense in a multiplayer game... far more sense than in most places where text chat winds up. 2020-09-13T23:08:26Z aeth: (Ironically, an email client, Gmail, was the thing that transformed the old rule of application bloat from "read mail" to "has IM") 2020-09-13T23:08:33Z jcowan: There otta be a law saying that when chatting on a commercial website, the customer has to be told whether the messages they see are coming from a human or a robot. 2020-09-13T23:08:52Z aeth: oh, that's easy: it's always a robot! 2020-09-13T23:09:18Z jcowan: No, that's clearly not true, unless state of the art Eliza can do a lot more than I think. 2020-09-13T23:09:52Z edgar-rft quit (Quit: Leaving) 2020-09-13T23:09:56Z jcowan: (SRFI 109 is raw-string-capable, but it's tremendously over-engineered for string interpolation) 2020-09-13T23:09:59Z aeth: jcowan: There are at least two string syntax extensions that I see as more useful than raw strings when they show up... translatable strings and regex strings. 2020-09-13T23:10:32Z aeth: (translatable strings are more like "text" in Scheme terms... but with a lookup based on localization preferences) 2020-09-13T23:10:43Z cjb quit (Ping timeout: 252 seconds) 2020-09-13T23:10:50Z jcowan: (_"foo") is a perfectly good translatable string that doesn't need any new lexical syntax, and I hope regex strings will die the death in Scheme. 2020-09-13T23:11:26Z jcowan: _ is probably not ideal, but any other character would do 2020-09-13T23:11:57Z aeth: jcowan: (_"foo") can exist (although paredit will hate it!) but I'd prefer to see it as #_"foo", which is still using the _ homage to gettext 2020-09-13T23:12:24Z aeth: In fact, lacking a better character, I'll probably implement it as such if I get around to doing that. 2020-09-13T23:12:25Z jcowan: But what's the point? Translatable strings show up in code, not in data. 2020-09-13T23:12:51Z aeth: one example is error strings. 2020-09-13T23:12:52Z jcowan: And in code, (_"foo") is just fine. 2020-09-13T23:13:04Z jcowan: Eh? 2020-09-13T23:13:35Z aeth: (_"foo") might also be (_foo) where foo is mutable, which is imo surprising. #_"foo" ensures the string is literal, which may or may not be preferable. 2020-09-13T23:14:05Z jcowan: Well, _foo is not _ foo, whereas _"foo" is _ "foo" 2020-09-13T23:14:06Z cjb joined #scheme 2020-09-13T23:14:15Z jcowan: so _foo is probably an error 2020-09-13T23:14:38Z jcowan: whereas (_"foo") calls the localizing macro on "foo" 2020-09-13T23:15:36Z aeth: good point 2020-09-13T23:15:49Z aeth: although that won't stop (_ foo) from existing afaik 2020-09-13T23:16:07Z aeth: and if that's a macro, not a function, then that might be really surprising! 2020-09-13T23:16:45Z jcowan: Well, if you have imported the l10n library, you get the _ macro. 2020-09-13T23:17:10Z jcowan: in which case (_ foo) will not match anything. 2020-09-13T23:17:35Z jcowan: Damn, I just realized (again) that .foo is not a valid identifier in R6RS 2020-09-13T23:18:33Z aeth: You wouldn't want to do (_ foo) at macro time because it might be in a GUI application where the user just changed their language in the settings screen. It has to be a runtime lookup. I guess (_ "foo") could be a macro that turns into the runtime lookup, but that seems more like a procedure sort of thing to me. 2020-09-13T23:20:57Z jcowan: Yes, I meant it to call an underlying procedure named "localize" or the like. 2020-09-13T23:21:39Z jcowan: that works e.g. when the message to be localized is coming from a server vel sim. 2020-09-13T23:22:06Z aeth: .foo doesn't seem like a valid identifier in R7RS, either. At least, it shouldn't be, since I think ".1" is valid syntax for "0.1", so anything starting with . without a delimiter immediately after the . should attempt to be a number. I don't think I took this into account in my dotted list processing, actually. 2020-09-13T23:23:08Z aeth: CL and Racket let failed numbers like 1foo be identifiers, but R7RS itself doesn't seem to like this sort of approach, and it makes sense, since that makes extending numerical syntax harder. 2020-09-13T23:23:44Z muelleme joined #scheme 2020-09-13T23:23:51Z aeth: CL and Racket do seem to permit .foo because of this, not just 1foo. 2020-09-13T23:28:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-13T23:28:53Z cjb quit (Ping timeout: 272 seconds) 2020-09-13T23:30:40Z jcowan: R6RS disallows anything with begins with a character that can begin a number; R7RS disallows anything whose prefix is a number. 2020-09-13T23:31:13Z jcowan: So R6RS can tell within one character, whereas R7RS takes the (very common) approach "try to parse a number" 2020-09-13T23:31:24Z aeth: jcowan: which leaves . ambiguous, which seems worse than R6RS to me 2020-09-13T23:31:42Z jcowan: How so? It is neither a number nor an identifier: it is part of pair syntax. 2020-09-13T23:31:51Z cjb joined #scheme 2020-09-13T23:32:04Z aeth: I mean, #\., not #\. 2020-09-13T23:32:25Z klovett quit (Remote host closed the connection) 2020-09-13T23:33:02Z klovett joined #scheme 2020-09-13T23:33:18Z aeth: But this is a useful discussion because of #\+ and #\- start numbers so I currently error with +foo and I guess I need to be able to turn those into identifiers, since CL uses +foo+ as a convention for its constants, and interop is important. 2020-09-13T23:33:24Z aeth: s/because of/because/ 2020-09-13T23:33:56Z aeth: This will complicate things quite a bit, just as I thought I was wrapping things up. :-) 2020-09-13T23:35:39Z jcowan: Depends on how much you care about R6RS compat. 2020-09-13T23:36:20Z jcowan: So .123 is a number, whereas .abc is an identifier (R7) or an error (R6) 2020-09-13T23:36:36Z jcowan: and the same for +123, -123, +abc, and -abc. 2020-09-13T23:39:39Z cjb quit (Ping timeout: 272 seconds) 2020-09-13T23:39:49Z jcowan: Well, / has no such issues, and I guess I can use that, even though it's noisy. Perhaps . is not noisy enough. 2020-09-13T23:40:30Z Riastradh: *2 should be a synonym for 2 and /2 for for 1/2 just like +2 is a synonym for 2 and -2 is a synonym for 0-2, obviously. 2020-09-13T23:42:13Z aeth: jcowan: .abc or +abc or -abc will have to be special-cased if valid, which means a hypothetical R6RS compat mode for the reader is still fairly easy. 2020-09-13T23:42:43Z aeth: Well, I mean, it's easier to turn something that's not an error into an error if certain conventions are met than having it not be an error. 2020-09-13T23:42:52Z aeth: (At least, in this case.) 2020-09-13T23:43:01Z cjb joined #scheme 2020-09-13T23:43:46Z aeth: /2 as 1/2 could actually make a lot of sense since (/ 2) is 1/2 2020-09-13T23:44:26Z jcowan: Riastradh: If you want APL, you know where to find it. 2020-09-13T23:44:47Z jcowan: (I watched a talk on APRIL, an APL-to-CL compiler that allows hosted APL 2020-09-13T23:44:49Z jcowan: ) 2020-09-13T23:47:43Z aeth: /foo is noisy, but /foo/ looks interesting, and could be useful as a convention for something 2020-09-13T23:50:34Z badkins joined #scheme 2020-09-13T23:51:44Z jcowan: I could go with $foo instead, but it's noisy too. 2020-09-13T23:53:19Z jcowan: I have a pre-SRFI that introduces the idea of layer between lexical syntax and S-expressions that provides the ability to notate arbitrary objects 2020-09-13T23:54:54Z badkins quit (Ping timeout: 256 seconds) 2020-09-13T23:56:12Z lavaflow quit (Quit: WeeChat 2.9) 2020-09-13T23:58:02Z jcowan: https://github.com/johnwcowan/r7rs-work/blob/master/LexmacsCowan.md 2020-09-13T23:58:31Z jcowan: the REPL becomes a Read-Internalize-Evaluate-Externalize loop 2020-09-13T23:58:40Z jcowan: s/Externalize/&-Print 2020-09-14T00:06:51Z lavaflow joined #scheme 2020-09-14T00:13:15Z aeth: oh, hmm, the r6rs way I guess special cases + and - themselves? Since obviously (+) and (-) are procedures 2020-09-14T00:15:43Z mdhughes: > '(|+1| |-1| |.|) 2020-09-14T00:15:44Z mdhughes: (\x2B;1 \x2D;1 \x2E;) 2020-09-14T00:24:31Z muelleme joined #scheme 2020-09-14T00:26:35Z rmura quit (Quit: Connection closed for inactivity) 2020-09-14T00:28:55Z muelleme quit (Ping timeout: 240 seconds) 2020-09-14T00:43:20Z phillbush quit (Remote host closed the connection) 2020-09-14T00:48:59Z sp1ff joined #scheme 2020-09-14T01:25:17Z muelleme joined #scheme 2020-09-14T01:25:19Z aeth: This came up a long time ago, but it's probably easier to ask than to try to grep logs... which Scheme runs in SLIME? 2020-09-14T01:26:53Z aeth: Chicken? 2020-09-14T01:27:46Z aeth: It looks like it's Chicken, unless there's another. http://wiki.call-cc.org/eggref/4/slime http://www.doof.me.uk/2010/12/12/using-slime-with-chicken-scheme/ 2020-09-14T01:28:59Z klovett quit (Remote host closed the connection) 2020-09-14T01:29:17Z klovett joined #scheme 2020-09-14T01:29:51Z muelleme quit (Ping timeout: 244 seconds) 2020-09-14T01:49:10Z aeth_ joined #scheme 2020-09-14T01:51:05Z aeth quit (Disconnected by services) 2020-09-14T01:51:10Z aeth_ is now known as aeth 2020-09-14T01:51:37Z badkins joined #scheme 2020-09-14T01:52:37Z raingloom quit (Ping timeout: 246 seconds) 2020-09-14T01:55:19Z cjb quit (Quit: brb) 2020-09-14T01:56:33Z badkins quit (Ping timeout: 260 seconds) 2020-09-14T01:58:48Z cjb joined #scheme 2020-09-14T02:00:44Z Zipheir: aeth: Well, you were right about Nvidia/ARM. https://www.bbc.co.uk/news/technology-54142567 2020-09-14T02:04:23Z raingloom joined #scheme 2020-09-14T02:18:53Z lritter quit (Quit: Leaving) 2020-09-14T02:21:27Z skapata joined #scheme 2020-09-14T02:21:43Z skapata left #scheme 2020-09-14T02:26:02Z muelleme joined #scheme 2020-09-14T02:30:35Z muelleme quit (Ping timeout: 240 seconds) 2020-09-14T02:43:52Z whiteline joined #scheme 2020-09-14T03:26:44Z muelleme joined #scheme 2020-09-14T03:31:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-14T03:52:24Z badkins joined #scheme 2020-09-14T03:57:11Z badkins quit (Ping timeout: 244 seconds) 2020-09-14T04:10:59Z gravicappa joined #scheme 2020-09-14T04:27:31Z muelleme joined #scheme 2020-09-14T04:32:19Z muelleme quit (Ping timeout: 260 seconds) 2020-09-14T05:28:13Z muelleme joined #scheme 2020-09-14T05:33:12Z muelleme quit (Ping timeout: 256 seconds) 2020-09-14T06:04:49Z klovett quit (Remote host closed the connection) 2020-09-14T06:05:28Z klovett joined #scheme 2020-09-14T06:20:35Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-14T06:29:00Z muelleme joined #scheme 2020-09-14T06:33:38Z muelleme quit (Ping timeout: 260 seconds) 2020-09-14T06:45:15Z arew joined #scheme 2020-09-14T06:53:30Z wasamasa: jcowan: tiny lisp with lua semantics exists, it's called fennel 2020-09-14T06:53:49Z wasamasa: jcowan: it happens to look like clojure which may or may not be a reason for shunning it on #scheme and ##lisp and whatnot 2020-09-14T06:55:50Z wasamasa: jcowan: the biggest programs using it seem to be the now self-hosting compiler and games that technomancy keeps winning the lisp game jam with because he doesn't reinvent a game engine like everyone else on #lispgames 2020-09-14T06:57:36Z weinholt: Lassi has made a Docker image for Texas Instruments PC Scheme 3.03, if anyone is feeling nostalgic for 1988: docker run -it --rm schemers/pc-scheme 2020-09-14T06:59:40Z wasamasa: is that the one used for the Programming in Scheme (1987) book? 2020-09-14T07:00:14Z wasamasa: the video bits is something I've always been curious about, but I suspect even docker won't help with that 2020-09-14T07:03:23Z civodul joined #scheme 2020-09-14T07:29:47Z muelleme joined #scheme 2020-09-14T07:34:11Z muelleme quit (Ping timeout: 240 seconds) 2020-09-14T07:38:54Z ManDay joined #scheme 2020-09-14T07:52:43Z ManDay_clone joined #scheme 2020-09-14T07:53:33Z ManDay quit (Quit: WeeChat 2.8) 2020-09-14T07:53:55Z badkins joined #scheme 2020-09-14T07:58:00Z klovett quit (Remote host closed the connection) 2020-09-14T07:58:17Z klovett joined #scheme 2020-09-14T07:58:23Z badkins quit (Ping timeout: 244 seconds) 2020-09-14T08:00:08Z cjb quit (Quit: end of day) 2020-09-14T08:05:19Z cpressey joined #scheme 2020-09-14T08:07:04Z notzmv` joined #scheme 2020-09-14T08:10:00Z hendursa1 joined #scheme 2020-09-14T08:10:05Z notzmv quit (Ping timeout: 240 seconds) 2020-09-14T08:10:28Z mdhughes quit (Read error: Connection reset by peer) 2020-09-14T08:11:08Z mdhughes joined #scheme 2020-09-14T08:11:34Z whiteline quit (Remote host closed the connection) 2020-09-14T08:12:01Z whiteline joined #scheme 2020-09-14T08:12:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-14T08:30:32Z muelleme joined #scheme 2020-09-14T08:35:37Z muelleme quit (Ping timeout: 264 seconds) 2020-09-14T08:44:26Z rgherdt joined #scheme 2020-09-14T09:00:06Z gravicappa joined #scheme 2020-09-14T09:03:02Z ggole joined #scheme 2020-09-14T09:31:17Z muelleme joined #scheme 2020-09-14T09:34:08Z even4void joined #scheme 2020-09-14T09:36:07Z muelleme quit (Ping timeout: 244 seconds) 2020-09-14T09:45:00Z mario-goulart quit (Remote host closed the connection) 2020-09-14T09:45:04Z whiteline quit (Remote host closed the connection) 2020-09-14T09:45:25Z kilimanjaro quit (Ping timeout: 244 seconds) 2020-09-14T09:45:30Z mario-goulart joined #scheme 2020-09-14T09:45:32Z whiteline joined #scheme 2020-09-14T09:45:44Z tryte quit (Quit: _) 2020-09-14T09:45:48Z zooey quit (Remote host closed the connection) 2020-09-14T09:46:04Z zooey joined #scheme 2020-09-14T09:46:05Z tryte joined #scheme 2020-09-14T09:46:22Z sbates quit (Ping timeout: 244 seconds) 2020-09-14T09:46:55Z sbates joined #scheme 2020-09-14T09:46:57Z kilimanjaro joined #scheme 2020-09-14T09:55:01Z badkins joined #scheme 2020-09-14T09:58:54Z bitmapper quit (Ping timeout: 256 seconds) 2020-09-14T09:59:53Z badkins quit (Ping timeout: 244 seconds) 2020-09-14T10:08:25Z even4void quit (Ping timeout: 240 seconds) 2020-09-14T10:32:00Z muelleme joined #scheme 2020-09-14T10:33:43Z ManDay_clone quit (Quit: WeeChat 2.8) 2020-09-14T10:36:50Z muelleme quit (Ping timeout: 258 seconds) 2020-09-14T10:50:43Z notzmv` is now known as notzmv 2020-09-14T10:50:53Z notzmv quit (Changing host) 2020-09-14T10:50:53Z notzmv joined #scheme 2020-09-14T10:53:01Z arew quit (Ping timeout: 244 seconds) 2020-09-14T10:53:27Z arew joined #scheme 2020-09-14T10:59:08Z even4void joined #scheme 2020-09-14T11:01:16Z even4void quit (Remote host closed the connection) 2020-09-14T11:01:31Z even4void joined #scheme 2020-09-14T11:27:33Z even4void quit (Remote host closed the connection) 2020-09-14T11:30:58Z aaaaaa joined #scheme 2020-09-14T11:32:46Z muelleme joined #scheme 2020-09-14T11:33:23Z madage quit (Ping timeout: 240 seconds) 2020-09-14T11:36:36Z z0d quit (Ping timeout: 256 seconds) 2020-09-14T11:37:23Z muelleme quit (Ping timeout: 240 seconds) 2020-09-14T11:38:10Z z0d joined #scheme 2020-09-14T11:44:07Z madage joined #scheme 2020-09-14T11:53:30Z civodul quit (Read error: Connection reset by peer) 2020-09-14T11:54:35Z civodul joined #scheme 2020-09-14T11:54:36Z cpressey quit (Quit: Lunch.) 2020-09-14T11:55:41Z supercoven joined #scheme 2020-09-14T11:56:07Z badkins joined #scheme 2020-09-14T12:00:47Z badkins quit (Ping timeout: 258 seconds) 2020-09-14T12:01:09Z whiteline quit (Remote host closed the connection) 2020-09-14T12:02:56Z whiteline joined #scheme 2020-09-14T12:13:44Z xelxebar: Is there a better way of detecting avx/avx2 support than scraping /proc/cpuinfo? 2020-09-14T12:27:02Z sm2n quit (Ping timeout: 256 seconds) 2020-09-14T12:33:31Z muelleme joined #scheme 2020-09-14T12:36:16Z ggole: cpuid? 2020-09-14T12:38:08Z muelleme quit (Ping timeout: 256 seconds) 2020-09-14T12:39:04Z DGASAU joined #scheme 2020-09-14T12:39:07Z wasamasa: but that would like, require ffi 2020-09-14T12:48:03Z ggole: Isn't that kind of on the cards given avx-specific instructions are going to be used? (I assume that's what is going on.) 2020-09-14T12:51:07Z wasamasa: possibly 2020-09-14T13:02:00Z cpressey joined #scheme 2020-09-14T13:32:54Z badkins joined #scheme 2020-09-14T13:34:16Z muelleme joined #scheme 2020-09-14T13:38:53Z muelleme quit (Ping timeout: 260 seconds) 2020-09-14T13:40:40Z dTal: you could execute an AVX instruction and look out for an illegal instruction error 2020-09-14T14:02:50Z aaaaaa quit (Quit: leaving) 2020-09-14T14:28:26Z lritter joined #scheme 2020-09-14T14:34:57Z muelleme joined #scheme 2020-09-14T14:38:10Z ManDay joined #scheme 2020-09-14T14:39:24Z muelleme quit (Ping timeout: 244 seconds) 2020-09-14T14:47:46Z even4void joined #scheme 2020-09-14T14:50:03Z ManDay_clone joined #scheme 2020-09-14T14:52:45Z ManDay quit (Ping timeout: 244 seconds) 2020-09-14T14:54:40Z hendursa1 quit (Quit: hendursa1) 2020-09-14T14:54:58Z hendursaga joined #scheme 2020-09-14T14:58:48Z ManDay_clone is now known as ManDay 2020-09-14T14:59:42Z badkins quit (Remote host closed the connection) 2020-09-14T15:00:17Z badkins joined #scheme 2020-09-14T15:04:53Z todun joined #scheme 2020-09-14T15:05:10Z badkins quit (Ping timeout: 258 seconds) 2020-09-14T15:06:08Z DGASAU quit (Read error: Connection reset by peer) 2020-09-14T15:06:38Z even4void quit (Remote host closed the connection) 2020-09-14T15:08:40Z rgherdt quit (Remote host closed the connection) 2020-09-14T15:09:42Z DGASAU joined #scheme 2020-09-14T15:20:56Z badkins joined #scheme 2020-09-14T15:28:45Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-14T15:30:44Z rgherdt joined #scheme 2020-09-14T15:35:18Z bitmapper joined #scheme 2020-09-14T15:35:46Z muelleme joined #scheme 2020-09-14T15:39:04Z sm2n joined #scheme 2020-09-14T15:40:11Z muelleme quit (Ping timeout: 240 seconds) 2020-09-14T15:43:43Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-14T15:46:35Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-14T15:52:37Z todun quit (Quit: todun) 2020-09-14T16:18:42Z hugh_marera joined #scheme 2020-09-14T16:25:12Z gravicappa joined #scheme 2020-09-14T16:29:25Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-14T16:36:32Z muelleme joined #scheme 2020-09-14T16:41:20Z muelleme quit (Ping timeout: 244 seconds) 2020-09-14T17:00:00Z gravicappa joined #scheme 2020-09-14T17:01:23Z bitmapper quit 2020-09-14T17:11:30Z bitmapper joined #scheme 2020-09-14T17:27:07Z ManDay_clone joined #scheme 2020-09-14T17:27:45Z ManDay quit (Ping timeout: 240 seconds) 2020-09-14T17:28:49Z even4void joined #scheme 2020-09-14T17:35:27Z aeth: wasamasa: To be fair, winning a game jam is different from making a game. The time constraints mean that you want to create something as quickly as possible, and in general, engines like Unity win out here as the game engine of choice (obviously not for the Lisp game jams, though), even though at the higher end of budgets in money/time, engines like UE4 are perfectly reasonable options, too. 2020-09-14T17:36:55Z gmaggior quit (Ping timeout: 246 seconds) 2020-09-14T17:37:14Z muelleme joined #scheme 2020-09-14T17:38:40Z aeth: xelxebar: I personally use `lscpu` instead of `cat /proc/cpuinfo` these days, although there might be even better ways. In particular, lscpu gives 1 result instead of dozens of mostly-duplicate results in the world of modern multicores. 2020-09-14T17:38:50Z wasamasa: yes, it's a game jam after all, not a how to make games workshop 2020-09-14T17:39:16Z wasamasa: I just find it funny how different he is from the usual people chatting on #lispgames 2020-09-14T17:40:52Z aeth: wasamasa: the usual people these days is borodust, and he has an apparently functional 2D engine in CL using lots of C/C++ FFI. https://borodust.org/projects/trivial-gamekit/ 2020-09-14T17:41:21Z aeth: (functional in the sense that you could make a real game from it, not in the sense that it's written in Haskell) 2020-09-14T17:41:31Z badkins quit (Remote host closed the connection) 2020-09-14T17:41:47Z muelleme quit (Ping timeout: 244 seconds) 2020-09-14T17:42:09Z badkins joined #scheme 2020-09-14T17:42:26Z aeth: wasamasa: #lispgames is a lot less active these days because a lot of the CL regulars banded together to some engine formerly called First Light (idk what the current name is) and it has its own IRC channel. 2020-09-14T17:42:37Z aeth: s/together to some engine/together to make some engine/ 2020-09-14T17:43:15Z wasamasa: still, there's a big difference between using someone else's game engine that has been used for who knows how many games and your own where you're likely to run into bugs under that jam deadline 2020-09-14T17:43:20Z aeth: hmm, well https://github.com/HackerTheory/first-light redirects to https://github.com/bufferswap/ViralityEngine now so it's probably "Virality Engine". 2020-09-14T17:44:56Z aeth: wasamasa: There's not that much of a difference between gluing together C++ libraries and using a premade engine/framework, since the premade engine/framework is probably using a lot of those same engines. Now, the mostly-pure-CL engines are clearly going to surface a lot of new bugs. 2020-09-14T17:45:15Z aeth: s/a lot of those same engines/a lot of those same libraries/ 2020-09-14T17:45:17Z wasamasa: that thing is just wrapping opengl, lol 2020-09-14T17:45:51Z wasamasa: it's most likely going to fall apart on some less than perfect GPU 2020-09-14T17:45:56Z aeth: OpenGL+SDL2 (or some SDL2 replacement) is about as low-level as you can get without dealing with a lot of annoying OS portability issues. 2020-09-14T17:46:48Z aeth: lots of things fall apart on a less than perfect GPU, which is why we have a triopoly (or whatever one more than a duopoly is) in consumer GPUs. And Intel iGPUs can't run a lot of things ime with my laptop. 2020-09-14T17:47:01Z badkins quit (Ping timeout: 264 seconds) 2020-09-14T17:47:05Z wasamasa: they don't do sound, do they 2020-09-14T17:48:09Z aeth: idk, but ime, sound's a good thing to procrastinate because it's complicated, you might want to bring in a 3rd foreign library, and it can be entirely set aside until you need it (i.e. until you have an almost-complete game), unlike almost everything else (so many things are tied together, which is why these projects are so difficult) 2020-09-14T17:48:55Z aeth: This last point, though, (about everything being so tied together) means that it looks like you've made 0 progress until you're almost done, at which point it looks like your game framework/engine appeared overnight. 2020-09-14T17:48:59Z Zipheir: Agreed. As programs, games have incredibly complex architecture. 2020-09-14T17:50:24Z Zipheir: It also seems like games are the subject of (1) incredible amounts of commercial work and (2) incredibly little theoretical work. 2020-09-14T17:50:41Z gmaggior joined #scheme 2020-09-14T17:51:19Z aeth: And few game engines are from scratch. So many are just a fork of the Quake engine (one of the first "true" FPS engines). https://upload.wikimedia.org/wikipedia/commons/6/63/Quake_-_family_tree.svg 2020-09-14T17:51:23Z Zipheir: Perhaps this is why game programming looks like what compiler programmers would come up with if there had never been any compiler research... 2020-09-14T17:51:42Z aeth: That SVG is out of date, too, since it doesn't include Source 2 (from Valve) and the newer Id games, like Doom 2016. 2020-09-14T17:52:34Z aeth: (and it should really put Source 2 at the same level as the Quake3 engine, and have it a lot more parallel, since it makes all Valve games look like they're on par with the Quake 1 engine just because they forked from the Quake 1 engine) 2020-09-14T17:52:42Z aeth: s/Source 2/Source 1/ 2020-09-14T17:52:52Z Zipheir: Source 1 = GoldSrc? 2020-09-14T17:53:15Z Riastradh: xelxebar: What are you planning to do with the information about avx/avx2 support once you detect it? 2020-09-14T17:53:31Z aeth: Zipheir: No. Quake [1] engine -> GoldSrc -> Source -> Source 2, which the SVG does a poor job of showing (especially since it doesn't have Source 2) 2020-09-14T17:53:41Z Zipheir: aeth: Ah, ok, thanks. 2020-09-14T17:54:13Z aeth: Zipheir: So GoldSrc should be parallel to Quake 2 and Source 1 should be parallel to Quake 3 (which should be idtech 3) and/or Doom 3 (id tech 4). 2020-09-14T17:54:51Z aeth: And Source 2 is (in time) parallel to Doom Eternal's engine, which is beyond what that graph shows. Of course, at that point, these engines have been separated for so long that they might not have any code in common anymore. 2020-09-14T17:55:07Z aeth: But the point is, they didn't start from scratch and they had working code during the entire process, which helps a lot 2020-09-14T17:56:23Z Zipheir: aeth: Right. 2020-09-14T17:56:23Z aeth: Zipheir: As for the theoretical work, there's a lot of it, just mostly around linear algebra. You know, the stuff GPUs are optimized to do, since they came from accelerating game graphics. 2020-09-14T17:56:29Z aeth: Zipheir: One book on the theory is https://smile.amazon.com/gp/product/1435458869/ 2020-09-14T17:56:49Z aeth: There are, of course, books specifically on game engine architecture, etc., and those are more practical and more likely to become outdated. 2020-09-14T17:56:57Z aeth: (You'll probably see those in the recommendations at the bottom) 2020-09-14T17:57:49Z ManDay_clone quit (Quit: WeeChat 2.8) 2020-09-14T17:59:50Z aeth: Zipheir: But, anyway, if you wanted to optimize a Lisp/Scheme for game engines, you'd probably want to make it look like a Fortran (although ironically I don't think anyone has written a notable game in Fortran). Well, in particular, you'd want lots of arrays of single/double floats, good access to GPUs/FFI, and if GCed, you'd want a real-time GC optimized to minimize pauses rather than batch-oriented GC. Basic latency vs. throughput trad 2020-09-14T17:59:51Z Zipheir: aeth: Obviously the mathematics get a lot of attention. But there's no real theory of game architecture. 2020-09-14T18:00:11Z aeth: *Basic latency vs. throughput tradeoff afaik. 2020-09-14T18:00:13Z aeth: (I got cut off) 2020-09-14T18:00:39Z aeth: This is probably why most engines use C++... since it's not just Fortran-style numerical stuff, it's also CFFI (which C++ does the best) and no GC (which is probably easier than writing a RTGC) 2020-09-14T18:00:45Z Zipheir: aeth: And of course I'm not referring to specific engines. Compiler design, e.g., is a subject that depends only broadly on the source/target languages. 2020-09-14T18:01:45Z Zipheir: Optimization is perennially overrated. :) 2020-09-14T18:02:02Z aeth: Zipheir: If you want a theory of game engine architecture, it's generally under the phrase "data-oriented design", e.g. https://www.dataorienteddesign.com/dodbook/ 2020-09-14T18:02:33Z aeth: Or at the very least, entity component systems... but there are a lot of varying approaches per language, with e.g. C++ ones focusing on cache coherency and e.g. Lua ones focusing just on composition. 2020-09-14T18:03:16Z aeth: That's just the trendy approach for new architectures, though. Most still don't use ECSes 2020-09-14T18:03:17Z Zipheir: How about something more mathematical and without all of the OOP snake-oil? 2020-09-14T18:03:31Z aeth: Zipheir: ECS is a rejection of OOP, or at the very least, inheritance. 2020-09-14T18:04:02Z Zipheir: If someone can write me some formal semantics for it, then I'll understand. 2020-09-14T18:05:06Z Zipheir: ECSs can definitely be described rigorously, and I think that might be an interesting paper. 2020-09-14T18:05:24Z phillbush joined #scheme 2020-09-14T18:05:48Z aeth: Well, "entity component systems" has 0 results on arxiv and "ecs" (even in quotes!) is too short to search for (don't you love it when search boxes show you results that you didn't search for, like e.g. "EC"?) 2020-09-14T18:06:02Z Zipheir: Yeah, I'm not surprised. 2020-09-14T18:06:03Z aeth: but that doesn't mean that there's nothing formal there 2020-09-14T18:06:27Z aeth: You'd want the more formal terms, like "data-oriented", 70 results, perhaps a few related to game engines. https://arxiv.org/search/?query=%22data-oriented%22&searchtype=all&abstracts=show&order=-announced_date_first&size=50 2020-09-14T18:06:28Z rudybot: https://teensy.info/JvoOyak0oI 2020-09-14T18:06:50Z Zipheir: Again, the lack of attention to game programming from computer scientists is disappointing. 2020-09-14T18:07:58Z aeth: Zipheir: hmm... arxiv doesn't have much, but it's not the sum of human knowledge... if you had access to some... hub of science, then maybe you'd find what you're looking for. 2020-09-14T18:08:26Z Zipheir laughs. 2020-09-14T18:09:02Z aeth: Zipheir: but I think game engine people tend to be a lot less open than most programmers because game engines are really huge and really difficult so a lot of their decisions are probably considered trade secrets to make it harder for the competition. 2020-09-14T18:09:27Z aeth: It's software that hasn't been driven to $0 yet. 2020-09-14T18:10:28Z aeth: Zipheir: But computer scientists working in the relevant fields (like graphics) ime tend to be more involved with the movie industry than the game industry, though, because the movie industry does the interesting stuff (running on huge server farms overnight), and the game industry makes it real time decades later. 2020-09-14T18:10:36Z Zipheir: aeth: Right, and then there's that issue. 2020-09-14T18:11:14Z aeth: I think it's starting to change, though, because of how ridiculous GPUs are (and you can take computational shortcuts with machine learning these days... if you have enough data) 2020-09-14T18:11:41Z aeth: Some TV shows are just using game engines for their CG now. 2020-09-14T18:12:02Z Zipheir: aeth: I'm thinking also that the focus on graphics über alles has had a massive negative effect on the quality of game design and programming. 2020-09-14T18:12:13Z arew: on the subject of graphics, do you know an alternative to GEGL? It is the engine powering gimp / glimpse. 2020-09-14T18:12:13Z gravicappa quit (Read error: Connection reset by peer) 2020-09-14T18:13:26Z aeth: Zipheir: to make up numbers... GPUs have improved like 1,000,000 times if not more, while CPUs have improved like... 1,000 times in that same time, with a lot of that CPU budget going to moving data to the GPU. So it's no surprise that the focus has been on doing things that can be done on GPUs instead, as CPUs stagnated. Maybe things will change now that (even consumer!) CPUs are moving from multicore to manycore. 2020-09-14T18:13:30Z Zipheir: arew: No, unfortunately. 2020-09-14T18:15:22Z Zipheir: aeth: Sure, but that's more an issue of shifting processing to the GPU. I think, from the beginning, the idea that video games were basically trying to be the holodeck from Star Trek resulted in people striving for amazing graphics and little else. 2020-09-14T18:15:22Z arew: interesting conversion, thanks for sharing :) 2020-09-14T18:15:47Z badkins joined #scheme 2020-09-14T18:16:06Z Zipheir: aeth: So we have dozens of AAA games which are mechanically just Doom, but with incredible visuals. 2020-09-14T18:16:09Z aeth: Zipheir: idk, the only games I would describe as the Holodeck are VR games, and that really started in 2016 or so. 2020-09-14T18:16:18Z Zipheir: aeth: That's not my point. 2020-09-14T18:16:48Z Zipheir: aeth: The point was that people had the idea that "graphics quality = game quality" for a long time, because GPUs sucked for so long. 2020-09-14T18:17:42Z aeth: Zipheir: And, no, the modern FPSes are not Doom, they're more like Quake 1, although to be fair, the modern FPS controls emerged from competitive Quake 1 multiplayer and weren't the default controls in early Quake 1... if you play Half-Life 1 (GoldSrc, from Quake 1), then pretty much all of the controls are familiar and modern. It took a bit longer for console FPSes to standardize, though. 2020-09-14T18:17:53Z Zipheir: aeth: OK, yes, Quake. 2020-09-14T18:18:17Z aeth: Zipheir: But the complaint about graphics is kind of 10 years out of date. Graphics have leveled out considerably in the past 10 years or so, because even though GPus are getting better, it's too expensive to make photorealistic content anymore for most games. And a lot of the popular games don't even try to play the photorealism game, e.g. Minecraft or Fortnite. 2020-09-14T18:18:22Z gravicappa joined #scheme 2020-09-14T18:19:19Z Zipheir: aeth: Yes. And many indie games have picked up the low-graphics-high-mechanics approach, which I like. 2020-09-14T18:19:39Z Zipheir: (Braid and FTL are still personal favorites.) 2020-09-14T18:19:41Z aeth: An ultra-high-budget game from 2008 or a mid-budget game from 2016 look pretty much the same, and both could mostly hold up today, unlike e.g. what was going on in the pre-2010 era in game graphics. 2020-09-14T18:20:26Z aeth: (And a lot of people still like HL2's graphics (2004), which are dated, but not that dated.) 2020-09-14T18:20:41Z Zipheir nods. 2020-09-14T18:20:52Z Zipheir: HL2 still looks pretty good to me. 2020-09-14T18:21:11Z aeth: Compare to something from 1998-2003 and those have aged so poorly. 2020-09-14T18:21:19Z aeth: Not as bad as early console 3D, though. 2020-09-14T18:22:09Z Zipheir: I actually love the look of late-90s 2D games. A lot of beautiful pixel art. But yes, I've always hated the early 3D console stuff. 2020-09-14T18:23:17Z aeth: Zipheir: And, yeah, HL2 aged very well. I can barely tell the difference between HL2 and the remake of the same assets in HL:A, and HL:A got a 93/100 (it's currently still the highest-rated PC game on Metacritic for 2020), which absolutely couldn't be done if its graphics weren't really good (for better or worse, FPSes lose review points for graphics). 2020-09-14T18:24:52Z aeth: I mean, the humans/monsters/etc. are obviously heavily remade, but the environments barely look any different. 2020-09-14T18:27:51Z aeth: So that probably shows that graphics is a losing game now, since HL:A's asset remakes were probably an order of magnitude or two more expensive to make than the HL2 assets. 2020-09-14T18:30:21Z Zipheir: Interesting. 2020-09-14T18:37:57Z muelleme joined #scheme 2020-09-14T18:42:30Z muelleme quit (Ping timeout: 256 seconds) 2020-09-14T18:43:20Z poga quit (Remote host closed the connection) 2020-09-14T18:48:23Z gwatt: aeth: RE: "Compare to something from 1998-2003 and those have aged so poorly" It depends on the game though. 2020-09-14T18:49:08Z gwatt: I was into RTS (AoE2, Warcraft 3) at the time, and while they're not the prettiest games today they still look good for what they are 2020-09-14T18:49:54Z aeth: gwatt: AoE 2 was (late) 2D, which of course will hold up... although AoE 2's units are really ugly... it's the rest that has remained OK 2020-09-14T18:51:23Z gwatt: did the HD / Definitive Editions change the units? That's what I've played most recently and they look fine 2020-09-14T18:52:01Z aeth: or I hold 2D unit graphics to a higher standard because I've seen (much) better. 2020-09-14T18:52:13Z gwatt: Does Age of Mythology count as 3D? because that still looks fine to my eyes 2020-09-14T18:52:42Z aeth: Yes, AoM and AoE III were 3D afaik 2020-09-14T18:53:15Z gwatt: I know AoM had a fully rotatable map 2020-09-14T18:53:17Z aeth: It looks like AoM was going for a stylized look, which helps it still look OK today. 2020-09-14T18:53:30Z gwatt: That's for sure 2020-09-14T18:53:35Z aeth: e.g. the old Mario games look OK, but the more "realistic" 3D games of the same era are all ugly 2020-09-14T18:54:26Z aeth: It's the same with 2D, but on the much older NES. Mario (after the first one) and Mega Man look fine, but most NES games are really ugly. 2020-09-14T18:54:59Z poga joined #scheme 2020-09-14T18:59:03Z madage quit (Ping timeout: 240 seconds) 2020-09-14T18:59:42Z madage joined #scheme 2020-09-14T19:03:14Z arew: A game where I noticed how 2 decades of computing do not always help is the game "magical drop". It is fast paced puzzle game, sort of like puzzle bubble, they made remake recently and the new game is slower than the arcade game :/ 2020-09-14T19:03:26Z arew: one of the few games I was waiting the release. 2020-09-14T19:03:41Z wasamasa: I'm peeved how slow gamemaker indie games are 2020-09-14T19:04:00Z wasamasa: my thinkpad getting bogged down by a visual novel is something that should not happen 2020-09-14T19:04:45Z wasamasa: there is absolutely no excuse for that level of potato graphics 2020-09-14T19:06:39Z aeth: wasamasa: To be fair, games are fragile abstractions and unless your game engine is extremely high level and fully declarative, it's very easy for a non-professional to deoptimize things. I mean, even if it is ultra-declarative, otherwise SQL optimization wouldn't be a job skill. 2020-09-14T19:06:57Z wasamasa: the irony is that their ren'py prototype outperformed that piece of crap most likely 2020-09-14T19:07:37Z aeth: And my guess is that the very high-level stuff are probably more likely to be accidentally deoptimized since the people scripting these frameworks/engines are probably the least knowledgeable about how software works 2020-09-14T19:07:39Z wasamasa: I mean, it's some sparkles in the background, a handful of sprite animations and minimal transitions between slides 2020-09-14T19:08:18Z muelleme joined #scheme 2020-09-14T19:08:33Z aeth: It's very easy to do things slowly by accident (or on purpose, if the high-level API doesn't expose an efficient way to do what you need to do... this is common in mods), see e.g. https://accidentallyquadratic.tumblr.com/ 2020-09-14T19:10:03Z even4void quit (Ping timeout: 244 seconds) 2020-09-14T19:10:42Z aeth: wasamasa: If your very-high-level engine doesn't actually have a sparkle() function, then if you want sparkles, you might have to do it very inefficiently. 2020-09-14T19:11:58Z aeth: someone with a programmer mentality probably wouldn't do it because it's inefficient, or they probably would be doing things at a lower level and never actually get around to releasing something in the first place 2020-09-14T19:12:02Z supercoven quit (Ping timeout: 256 seconds) 2020-09-14T19:17:12Z Zipheir: But no price is too high for sparkle()s. "I like German sparkle party, sparkle party!" 2020-09-14T19:18:13Z civodul joined #scheme 2020-09-14T19:18:14Z aeth: this really does show the difference between artists and programmers, though 2020-09-14T19:18:37Z aeth: someone in an artist role will probably see it as OK as long as it runs on their machine, no matter how inefficient it is 2020-09-14T19:19:22Z Zipheir: You mean someone whose aesthetics extend only to the results, and not to the code? 2020-09-14T19:19:42Z aeth: on the other hand, they actually have a sense of aesthetics :-p 2020-09-14T19:20:18Z Zipheir: For some reason I'm reminded of Beethoven, who refined his pieces constantly but had horrible handwriting. 2020-09-14T19:23:07Z Zipheir: Neatness and elegance matter. A game is a program, after all, not a pile of bits to throw at a machine until it does somethingy sparkly. 2020-09-14T19:23:15Z Zipheir: s/somethingy/something/ 2020-09-14T19:25:23Z aeth: Zipheir: clean code only matters if you're going to extend/modify it later, which is increasingly the case for games (especially big games), but traditionally didn't really matter for games 2020-09-14T19:28:13Z Zipheir: I think it does matter. Clarity of expression always matters, even if you're working by yourself on a game only you will ever play. 2020-09-14T19:29:03Z xelxebar quit (Ping timeout: 240 seconds) 2020-09-14T19:30:02Z xelxebar joined #scheme 2020-09-14T19:45:52Z X-Scale` joined #scheme 2020-09-14T19:46:55Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-14T19:47:03Z X-Scale` is now known as X-Scale 2020-09-14T20:00:10Z arew: there is quote in french about clarity and design, it something along the line of the Zen Python: if you can not explain something clearly, it is a bad idea. 2020-09-14T20:02:20Z arew: Nicolas Boileau : "Ce que l'on concoit bien s'enonce clairement" 2020-09-14T20:02:42Z arew: sorry for the missing diacricts 2020-09-14T20:03:39Z OptimusMKD quit (Quit: Leaving) 2020-09-14T20:06:16Z arew: that quote finish with "Et les mots pour le dire arrivent aisement." which can be translated to "And words for it come easily" 2020-09-14T20:09:02Z aeth: Zipheir: The only thing that matters about a game is that it's fun. e.g. Minecraft was apparently very poorly optimized (it wasn't Java's fault, it was notch's), but it still became one of the most successful games of all time. 2020-09-14T20:09:33Z aeth: Someone with the exact same concept who took their time to properly optimize the voxels (and that might have happened!) would've released later and it would've just been seen as a Minecraft clone. 2020-09-14T20:10:19Z arew: it happened (several times I guess) but I recall a project ten thousand time better than minecraft in terms of graphics: never finished. 2020-09-14T20:10:33Z aeth: (And, again, it wasn't Java. In fact, Java probably helped make Minecraft successful because it allowed unapproved mods to happen, which would be near-impossible for a C++ game) 2020-09-14T20:10:55Z arew: true. 2020-09-14T20:11:25Z aeth: arew: even if that game was finished, if it wasn't fun, no one would play it 2020-09-14T20:12:33Z arew: it is difficult balance to find, diablo for instance is not necessarly very fun or complex game, but its repetitive game play is a "hook" 2020-09-14T20:12:41Z aeth: The only thing a "game" requires is fun, that's it. It could be a super-immersive VR game where nearly everything can be interacted with via your hands (like Half-Life Alyx) or it could be a retro 2D platformer (VVVVVV, Shovel Knight, etc.) 2020-09-14T20:13:15Z aeth: Although, yeah, lots of mobile games or competitive online games aren't fun as much as they are addictive. 2020-09-14T20:13:33Z arew: mobile games are a great example. 2020-09-14T20:14:10Z edgar-rft joined #scheme 2020-09-14T20:14:26Z arew: Maybe like in literature, the games that we think are good today, will not be remembered in say 2 hundreds years. 2020-09-14T20:14:50Z arew: I mean, studied by people of the future as "state of the art" there is many "hit" books that are forgotten. 2020-09-14T20:15:08Z arew: I think of say, candy crush, who will study that in say 50 years? 2020-09-14T20:15:36Z aeth: It's already the case. Plenty of games have lots of hype (because of huge marketing budgets) and 10/10 reviews, but then quickly fade away and are forgetten about in a few years. 2020-09-14T20:15:48Z aeth: And then you have games like Skyrim and Minecraft that tons of people still play. 2020-09-14T20:16:06Z aeth: (I'm not sure about Skyrim, though. I've finally stopped seeing Skyrim all over the place) 2020-09-14T20:16:18Z arew: oh I have skyrim, could not get into it, saldy, even if I like the game and the lore. 2020-09-14T20:16:58Z arew: another example of poor graphic, even if toon-ish / stylized, is WoW. For other reasons, it is very popular, maybe not as popular as before but still.. 2020-09-14T20:17:50Z aeth: WoW was a phenomenon 12 or so years ago, sort of like PUBG more recently (but PUBG didn't even last a year at this level of popularity). One of the few games to truly be "mainstream" to the point where you would run into references to it everywhere. 2020-09-14T20:18:43Z aeth: At the same time, WoW had the reputation as "nerd heroin" that would ruin your life because all you'd do is play WoW, so I stayed far, far away from WoW and never touched it because there was a chance that I would find the game fun. 2020-09-14T20:19:13Z arew: I did. Played 12/24 a day during several month. 2020-09-14T20:19:26Z arew: tho, you can enjoy the game otherwise. 2020-09-14T20:20:27Z arew: I used to be shameful, but I live the no-no-life too, and I do not regret my geek / nerd label nowdays. 2020-09-14T20:21:07Z aeth: Amusingly, WoW killed the MMORPG genre because so many MMORPGs either tried to copy WoW from the start or changed to copy WoW, but there's only really room for one subscription-based, ultra-time-consuming game and WoW did WoW better than WoW clones did. 2020-09-14T20:21:39Z arew: what about eve? i read it is worse than wow in terms of addiction and life dramas... 2020-09-14T20:21:44Z aeth: A lot of pre-WoW MMORPGs seem more interesting from today's perspective, since they usually gave the players more agency, as opposed to WoW's "theme park" design 2020-09-14T20:21:49Z aeth: like Eve, yes. 2020-09-14T20:21:51Z arew: I mean IRL drama not in-game drama 2020-09-14T20:23:08Z arew: theme park? It is more theme park than before, but the open world in WoW makes the game much more enjoyable than say the "instance" world of guild wards 2020-09-14T20:23:52Z arew: eve has also this "open world" design. 2020-09-14T20:24:14Z arew: s/wards/wars/ 2020-09-14T20:26:09Z aeth: arew: I think that WoW's called a "theme park" because it's built around lots of premade content, in particular, repeatedly raiding instanced endgame bosses (who keep respawning!) for a small chance of good loot (like riding a ride in a theme park)... as opposed to something like Eve Online where the players shape the universe. 2020-09-14T20:26:43Z aeth: In fact, with such MMORPGs, there's usually no reason to visit old content after an expansion. That's why WoW Classic was so big. There was a reason to revisit the old stuff. 2020-09-14T20:27:32Z arew: true. 2020-09-14T20:28:09Z arew: there is little or not user made gameplay, except the auction house. 2020-09-14T20:28:12Z aeth: In a non-theme-park fantasy-style MMORPG, there might not be bosses, only PvP against powerful leaders of powerful guilds. But there are a lot of different ways to do an MMORPG, none of which will be done because people see them as too expensive to make. 2020-09-14T20:28:34Z arew: did you discuss dwarf fortress already? 2020-09-14T20:28:51Z aeth: Does Dwarf Fortress have an MMO fortress-vs-fortress mode yet? :-P 2020-09-14T20:30:12Z gwatt: guild wars 2 has something interesting with their "living world" story arcs 2020-09-14T20:30:24Z aeth: Heh, there are some multiplayer mods. Of course. https://dwarffortresswiki.org/index.php/Multiplayer 2020-09-14T20:30:33Z gwatt: it provides a bit of a reason to revisit the lower areas 2020-09-14T20:30:35Z aeth: Even KSP has some MP mods and that's even harder because KSP is built around time warps 2020-09-14T20:32:15Z aeth: I think the MMO part of MMORPGs are overrated if you mostly can't interact in a "massive" way, anyway. I think a lot of the MMORPG audience moved onto survival games in the past decade or so, which tend to be on smaller servers of up to 60-100 players, but where the players have considerable influence over the environment, including building buildings. 2020-09-14T20:32:47Z gwatt: the WvWvW in GW2 is pretty massive 2020-09-14T20:32:49Z aeth: Those tend to be huge time sinks because the PvP usually means everything you built could be trashed at any time unless someone in your group is online watching it. 2020-09-14T20:32:51Z arew: it happens that I like those kind of games but never played 2020-09-14T20:33:14Z aeth: ("Those" meaning survival games) 2020-09-14T20:33:23Z arew: gwatt: what WvWvW ? 2020-09-14T20:33:28Z arew: gwatt: what is WvWvW? 2020-09-14T20:33:34Z aeth: my guess is w stands for world 2020-09-14T20:33:38Z gwatt: arew: World vs World vs World 2020-09-14T20:34:34Z arew: I never really played GW, just looking my friend play was fun, but it seems like it requires loooooooots of skills (unlike WoW) 2020-09-14T20:34:35Z gwatt: There were 3 different servers who were thrown into a large battleground with objectives 2020-09-14T20:34:49Z aeth: I briefly played GW1, but I didn't find it too interesting. 2020-09-14T20:35:05Z gwatt: you could have several hundred people all fighting at once 2020-09-14T20:35:31Z arew: like virtual street fight ;) 2020-09-14T20:35:48Z gwatt: arew: not free for all, just on 3 different sides 2020-09-14T20:35:54Z muelleme quit (Ping timeout: 256 seconds) 2020-09-14T20:36:03Z aeth: RPGs rarely hook me. They tend to be too railroaded to give enough actual RP. Especially if it's yet another RPG where you're the super-special chosen one. I never finish those. And it's amusing if it's an MMORPG where you're the super-special chosen one, since everyone else in your party also is the chosen one! And none of you can make an impact on the world! 2020-09-14T20:36:26Z arew: true 2020-09-14T20:36:38Z arew: gwatt: how much time the battle takes? 2020-09-14T20:36:41Z gwatt: also, GW might have had more skills than WOW but you only have 8 skill on your bar for GW 1 2020-09-14T20:37:11Z gwatt: arew: I think the WvWvW stuff goes on for several weeks before they reset 2020-09-14T20:37:21Z gwatt: during those weeks it's constant 2020-09-14T20:37:27Z arew: *_* 2020-09-14T20:37:40Z arew: do you loose something when you die? 2020-09-14T20:38:00Z arew: I believe you respawn somewhere but what does it cost to die? 2020-09-14T20:38:27Z gwatt: I don't think so. It's been a while since I played so I could be mis-remembering or maybe things have changed 2020-09-14T20:41:21Z gwatt: aeth: that'the "chosen one" thing is decently well handled by GW2. The intro missions and most of the big events are a group effort. 2020-09-14T20:42:01Z gwatt: and you have somewhat customized story missions based on your background and choices in previous story missions 2020-09-14T20:42:56Z ggole quit (Quit: Leaving) 2020-09-14T20:43:44Z aeth: It's amusing how much computer RPGs have changed from their tabletop RPG origins because (1) if a tabletop RPG was as railroaded as a computer RPG, people would say your DM/GM was bad; (2) everything's party-based in most tabletop RPGs but in computer RPGs (especially single-player ones, especially first person ones) you're alone; (3) there's basically no RPing in an RPG and sometimes there's only one class 2020-09-14T20:44:07Z lritter quit (Ping timeout: 265 seconds) 2020-09-14T20:44:40Z aeth: I really hated how in Shadow of Mordor, you had a class, and it was a predetermined-by-the-story class. It was very vestigial and it reminded me that I had no agency, while in an old RPG I would have had some. 2020-09-14T20:44:41Z gwatt: I don't disagree. MMOs and TTRPGs definitely scratch different itches for me 2020-09-14T20:45:19Z gwatt: I didn't get too far into Shadow of Mordor, but I guess that wasn't a complaint I had. 2020-09-14T20:45:55Z aeth: The best games for actually RPing as your character tend to be sandbox-ish strategy games. Most recently, Crusader Kings III. 2020-09-14T20:46:32Z aeth: Total War: Three Kingdoms did a decent job at that, too. 2020-09-14T20:46:55Z gwatt: I never got into the Total War games 2020-09-14T20:47:42Z aeth: I like the Total War tactical battles, but I find the strategic world simulation to be... really weird and confusing, and poorly explained. There aren't even popular wikis to break down the meta like in the more niche strategy games. 2020-09-14T20:48:17Z aeth: Games that only have the strategic element (like the Civilization series or anything by Paradox, including CK3) tend to have more depth and tend to be easier to dive into. 2020-09-14T20:48:55Z arew: I guess it tells more about me than civilization game, but I always play the lowest difficulty level :) 2020-09-14T20:49:11Z aeth: Civilization 5 and 6 (where unit stacking has been removed... and if 6 is like 5, there's even "real range" where your catapaults can fire across squares representing miles iirc) has some really weird warfare system that I don't like, though. 2020-09-14T20:49:16Z aeth: Very immersion-breaking... 2020-09-14T20:49:49Z arew: I spent most of childhood in civ 1 2020-09-14T20:49:54Z gwatt: I've fallen off the civ train. I played a whole bunch of 3 and 4, a decent amount of 5, but not much 6 2020-09-14T20:50:05Z lritter joined #scheme 2020-09-14T20:50:42Z aeth: I think the Civ franchise has focused so much on making nonwarfare victory strategies fun and viable that the warfare part is terrible. When I played Civ 5, I had fun until someone declared war on me. Not like the wars were challenging, though. The AI was bad. 2020-09-14T20:50:50Z arew: I played civ 5, it is fun somewhat at level 0. 2020-09-14T20:51:52Z arew: did you play freeciv? 2020-09-14T20:52:01Z arew: the ai is very difficult even at low level. 2020-09-14T20:52:04Z arew: (imo) 2020-09-14T20:52:44Z aeth: I used to play a lot of Freeciv, but it hasn't aged well as a game. Contrast with Wesnoth, which holds up today. Wesnoth has a lot of factors going for it as far as FOSS games go. I'll give two: it's not a clone, and the art/music are great. 2020-09-14T20:52:51Z aeth: It's also not ultra-complex with tons of customization options. 2020-09-14T20:53:02Z aeth: Freeciv's fun, if you find a combination of like... 100 rules that works well 2020-09-14T20:53:25Z arew: 100 rules of what? 2020-09-14T20:54:08Z aeth: Freeciv lets you customize nearly everything. Starting units. Minimum distance between cities. The behavior of borders, and if you even have any. A lot of mapgen stuff. Research speed. End year. etc. 2020-09-14T20:54:28Z aeth: The last few times I've tried to play Freeciv, I probably spent more time setting it up than playing it 2020-09-14T20:54:34Z arew: At some point, the featured gtk theme freeciv was using, that was me that made it (first contribution to floss) 2020-09-14T20:54:53Z aeth: And if you get Freeciv's settings wrong, and you find out, you've just lost the past few hours 2020-09-14T20:55:03Z aeth: Stuff like minimum distance between cities is easy to get wrong. 2020-09-14T20:55:19Z aeth: (But if you don't set it, then the AI builds cities too close to each other and it's not fun to conquer those AI cities) 2020-09-14T20:55:20Z arew: oh, I never did that. 2020-09-14T20:55:51Z arew: anyway, bye! 2020-09-14T20:55:57Z arew: good chat :) 2020-09-14T20:56:11Z aeth: Also, hexes are better, and Freeciv supports it (of course Freeciv does, Freeciv's design ideology is all about having options... iirc it supports all three major 2D systems: overhead, isometric, and hexagonal), but not well 2020-09-14T20:56:24Z aeth: bye 2020-09-14T21:08:44Z autumn[m]: What's the particular advantage of hexes? 2020-09-14T21:11:24Z aeth: autumn[m]: More natural movement if your movement is grid-based. Also, specifically for Civ-style games, your city will have a more natural radius around it since the hex radius will be roughly circular instead of roughly + shaped. 2020-09-14T21:11:38Z aeth: (Also more natural terrain for e.g. coasts) 2020-09-14T21:11:53Z autumn[m]: Ahh. That makes sense 2020-09-14T21:12:01Z autumn[m]: Thanks! 2020-09-14T21:12:02Z aeth: autumn[m]: It has three disadvantages. One, its algorithms are far more complicated. Two, you can't really scale up/down. Three, good luck applying a heightmap to it if you want to move your world to 3D. 2020-09-14T21:12:24Z aeth: (By scale, I mean, you can easily turn a square into 4 squares, and thus scale your map.) 2020-09-14T21:13:02Z nullheroes quit (Quit: WeeChat 2.9) 2020-09-14T21:13:47Z nullheroes joined #scheme 2020-09-14T21:17:42Z aeth: And if your scale is smaller than Civ's, then you probably want isometric so your buildings look more realistic. You can do buildings' walls as hex terrain, but then you're probably doing an isometric art style on top of hexagons. (It's not perfect because you'll have a third direction of walls, going up/down, too) 2020-09-14T21:18:58Z aeth: If you have Wesnoth installed, you can play around with the wall terrain (dungeon wall, not cave wall) in its map editor and see how its art style is sort of isometric in practice. 2020-09-14T21:20:34Z aeth: Essentially, there's three directions for walls that aren't just one hex in size... \, /, and |, while isometric will only have \ and /. this shows up in a few other places, too, like bridges. Also, it's in the terrain blending rules that make roads form out of dirt/cobblestone/etc. 2020-09-14T21:23:45Z aeth: Games with full rotation are probably real 3D (rather than isometric), but some isometric games let you rotate the map between the 4 views that maintain the isometric perspective. 2020-09-14T21:25:34Z aeth: (It's still fairly rare to rotate in isometric 2D because now you need to have 4x the art for the furniture/props, e.g. both sides of a TV, its front, and its back.) 2020-09-14T21:28:40Z aeth: tl;dr: show up for the autumn Lisp game jam and represent Scheme :-P 2020-09-14T21:39:09Z Zipheir: aeth: I'd like to. When does it start? 2020-09-14T21:41:28Z aeth: autumn 2020-09-14T21:41:38Z aeth: here was last year's. https://itch.io/jam/autumn-lisp-game-jam-2019 2020-09-14T21:41:45Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-14T21:41:45Z Zipheir: Hmm. Ask a silly question, get a silly answer. 2020-09-14T21:41:57Z aeth: 2019-10-11 to 2019-10-21, so unfortunately, it's too late to join that one. 2020-09-14T22:01:58Z Zipheir: aeth: Has anyone ever contributed an Elisp game? That would be rather hardcore. 2020-09-14T22:04:13Z aeth: probably. 2020-09-14T22:04:17Z aeth: there are some games that ship with Emacs 2020-09-14T22:04:32Z aeth: elisp isn't a very fun language to write games in, though. 2020-09-14T22:05:00Z aeth: Since elisp is focused on scripting an editor, pretty much anything that you would use in a game is available in a related Lisp (e.g. CL, the most closely related living Lisp), but not in elisp. 2020-09-14T22:18:17Z Zipheir: aeth: Of course. I only asked because elisp is listed in the jam's available languages. 2020-09-14T22:19:45Z aeth: any Lisp is available, and someone probably did try at some point 2020-09-14T22:19:48Z aeth: but good luck 2020-09-14T22:22:55Z civodul quit (Ping timeout: 240 seconds) 2020-09-14T22:38:32Z rgherdt quit (Remote host closed the connection) 2020-09-14T22:38:46Z rgherdt joined #scheme 2020-09-14T22:42:41Z badkins quit (Remote host closed the connection) 2020-09-14T22:43:15Z badkins joined #scheme 2020-09-14T22:44:27Z aeth_ joined #scheme 2020-09-14T22:45:07Z aeth quit (Disconnected by services) 2020-09-14T22:45:12Z aeth_ is now known as aeth 2020-09-14T22:48:05Z badkins quit (Ping timeout: 244 seconds) 2020-09-14T22:50:22Z rgherdt quit (Ping timeout: 256 seconds) 2020-09-14T22:51:11Z hugh_marera quit (Quit: hugh_marera) 2020-09-14T23:00:51Z badkins joined #scheme 2020-09-14T23:04:42Z teardown joined #scheme 2020-09-14T23:05:21Z teardown quit (Read error: Connection reset by peer) 2020-09-14T23:12:23Z badkins quit (Remote host closed the connection) 2020-09-14T23:12:56Z badkins joined #scheme 2020-09-14T23:15:55Z teardown joined #scheme 2020-09-14T23:16:34Z teardown quit (Read error: Connection reset by peer) 2020-09-14T23:17:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-14T23:22:06Z teardown joined #scheme 2020-09-14T23:22:06Z teardown quit (Read error: Connection reset by peer) 2020-09-14T23:22:54Z rgherdt joined #scheme 2020-09-14T23:23:40Z gmaggior quit (Quit: Leaving) 2020-09-14T23:32:16Z cjb joined #scheme 2020-09-14T23:38:33Z teardown joined #scheme 2020-09-14T23:39:19Z teardown quit (Read error: Connection reset by peer) 2020-09-14T23:41:49Z rgherdt quit (Ping timeout: 244 seconds) 2020-09-14T23:43:44Z teardown joined #scheme 2020-09-14T23:43:55Z teardown quit (Read error: Connection reset by peer) 2020-09-14T23:50:46Z cantstanya quit (Remote host closed the connection) 2020-09-14T23:51:58Z cantstanya joined #scheme 2020-09-14T23:52:33Z badkins joined #scheme 2020-09-14T23:53:51Z teardown joined #scheme 2020-09-14T23:54:12Z teardown quit (Read error: Connection reset by peer) 2020-09-14T23:58:56Z teardown joined #scheme 2020-09-14T23:59:27Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:10:09Z teardown joined #scheme 2020-09-15T00:10:23Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:10:45Z drakonis quit (Quit: ZNC 1.8.1 - https://znc.in) 2020-09-15T00:12:20Z drakonis joined #scheme 2020-09-15T00:15:10Z teardown joined #scheme 2020-09-15T00:15:19Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:20:15Z teardown joined #scheme 2020-09-15T00:20:19Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:25:49Z teardown joined #scheme 2020-09-15T00:25:58Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:26:04Z badkins quit (Remote host closed the connection) 2020-09-15T00:32:47Z drakonis quit (Quit: WeeChat 2.9) 2020-09-15T00:35:25Z drakonis joined #scheme 2020-09-15T00:36:42Z teardown joined #scheme 2020-09-15T00:36:44Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:41:14Z sp1ff quit (Ping timeout: 244 seconds) 2020-09-15T00:41:25Z drakonis quit (Quit: WeeChat 2.9) 2020-09-15T00:41:43Z lritter quit (Quit: Leaving) 2020-09-15T00:42:05Z torbo joined #scheme 2020-09-15T00:42:22Z teardown joined #scheme 2020-09-15T00:42:29Z teardown quit (Read error: Connection reset by peer) 2020-09-15T00:43:14Z drakonis joined #scheme 2020-09-15T00:48:38Z iltutmus quit (Disconnected by services) 2020-09-15T00:48:46Z iltutmus joined #scheme 2020-09-15T00:49:13Z iltutmus quit (Disconnected by services) 2020-09-15T00:49:22Z iltutmus joined #scheme 2020-09-15T00:58:13Z teardown joined #scheme 2020-09-15T00:59:20Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:00:15Z cchristiansen joined #scheme 2020-09-15T01:00:33Z iltutmus is now known as Guest42020 2020-09-15T01:08:30Z teardown joined #scheme 2020-09-15T01:08:46Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:11:12Z raingloom quit (Ping timeout: 244 seconds) 2020-09-15T01:13:01Z jcowan: Data scientists are similar in some ways: their code tends to be awful because they only care about whether it works, which means layer on layer of hacks and patches. 2020-09-15T01:14:10Z aeth: in Jupyter notebooks, which don't even spellcheck, at least by default. 2020-09-15T01:14:13Z teardown joined #scheme 2020-09-15T01:14:28Z aeth: not everyone can write without a spellchecker and it shows. 2020-09-15T01:14:28Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:18:19Z klovett quit (Remote host closed the connection) 2020-09-15T01:18:56Z klovett joined #scheme 2020-09-15T01:20:02Z teardown joined #scheme 2020-09-15T01:20:21Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:25:54Z teardown joined #scheme 2020-09-15T01:26:00Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:27:45Z sp1ff joined #scheme 2020-09-15T01:27:59Z klovett quit (Remote host closed the connection) 2020-09-15T01:28:15Z klovett joined #scheme 2020-09-15T01:31:36Z teardown joined #scheme 2020-09-15T01:31:59Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:37:34Z teardown joined #scheme 2020-09-15T01:37:55Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:48:30Z teardown joined #scheme 2020-09-15T01:48:39Z teardown quit (Read error: Connection reset by peer) 2020-09-15T01:59:15Z teardown joined #scheme 2020-09-15T01:59:16Z teardown quit (Read error: Connection reset by peer) 2020-09-15T02:05:39Z cchristiansen quit (Remote host closed the connection) 2020-09-15T02:08:37Z dan64- joined #scheme 2020-09-15T02:09:22Z teardown joined #scheme 2020-09-15T02:09:22Z teardown quit (Read error: Connection reset by peer) 2020-09-15T02:10:25Z dan64- quit (Client Quit) 2020-09-15T02:10:57Z cchristiansen joined #scheme 2020-09-15T02:11:25Z dan64 quit (Ping timeout: 240 seconds) 2020-09-15T02:11:33Z dan64- joined #scheme 2020-09-15T02:11:35Z dan64- quit (Remote host closed the connection) 2020-09-15T02:37:37Z lambda-11235 joined #scheme 2020-09-15T03:27:04Z phillbush quit (Quit: Leaving) 2020-09-15T03:49:11Z edgar-rft quit (Quit: Leaving) 2020-09-15T04:02:55Z brown121407 quit (Ping timeout: 240 seconds) 2020-09-15T04:03:13Z brown121407 joined #scheme 2020-09-15T04:06:31Z torbo quit (Remote host closed the connection) 2020-09-15T04:08:55Z DKordic quit (Ping timeout: 240 seconds) 2020-09-15T04:16:17Z xelxebar: aeth: Regarding avx/avx2 detection, I forgot to specify that I'm trying to do this in some guile code. 2020-09-15T04:16:31Z hugh_marera joined #scheme 2020-09-15T04:23:55Z xelxebar: Riastradh: Load an appropriate binary. I'm trying to write a little wrapper that launches a J interpreter. Upstream provides different binaries, depending on avx support. 2020-09-15T04:31:19Z teardown joined #scheme 2020-09-15T04:51:30Z Riastradh: xelxebar: Probably easiest to write a C function that queries cpuid either with inline asm or with GCC __get_cpuid from , and then wrap that with a C FFI. 2020-09-15T04:52:08Z hugh_marera quit (Quit: hugh_marera) 2020-09-15T04:52:32Z xelxebar: Riastradh: Okay. Thanks. So there's no ready-made scheme procedure I can lean on in this case. 2020-09-15T04:52:35Z xelxebar: Cheers 2020-09-15T04:53:13Z Riastradh: It's possible there's something in guile but I wouldn't be surprised if there isn't. 2020-09-15T05:07:42Z lambda-11235 quit (Quit: Bye) 2020-09-15T05:09:16Z gravicappa joined #scheme 2020-09-15T05:20:48Z ggoes quit (Ping timeout: 256 seconds) 2020-09-15T05:21:57Z ggoes joined #scheme 2020-09-15T05:28:07Z cchristiansen quit (Remote host closed the connection) 2020-09-15T05:29:23Z cchristiansen joined #scheme 2020-09-15T05:40:49Z cchristiansen quit (Remote host closed the connection) 2020-09-15T05:41:19Z cchristiansen joined #scheme 2020-09-15T06:02:12Z cchristiansen quit (Remote host closed the connection) 2020-09-15T06:07:47Z cchristiansen joined #scheme 2020-09-15T06:07:47Z gravicappa quit (Remote host closed the connection) 2020-09-15T06:08:48Z cchristiansen quit (Remote host closed the connection) 2020-09-15T06:09:52Z cchristiansen joined #scheme 2020-09-15T06:11:54Z cchristiansen quit (Remote host closed the connection) 2020-09-15T06:12:58Z cchristiansen joined #scheme 2020-09-15T06:13:31Z dan64 joined #scheme 2020-09-15T06:19:39Z wasamasa: Zipheir: yes, it happened 2020-09-15T06:19:52Z wasamasa: Zipheir: my stuff has been listed on the lispgames page as reference how to go at it 2020-09-15T06:20:05Z wasamasa: Zipheir: the one game I've seen was a tamagotchi-like thing, except with a baby gnu 2020-09-15T06:33:22Z ggole joined #scheme 2020-09-15T06:37:38Z edgar-rft joined #scheme 2020-09-15T06:44:31Z civodul joined #scheme 2020-09-15T06:51:09Z aeth: Earlier, I probably didn't link to the current autumn lisp game jam, but it's already up in the #lispgames topic so I should have checked there first. https://itch.io/jam/autumn-lisp-game-jam-2020 2020-09-15T06:51:23Z aeth: 2 days. Looks like it's starting a bit earlier this year. 2020-09-15T06:51:32Z aeth: *2 days 21 hours, so it might as well be 3 days 2020-09-15T06:58:48Z skapata joined #scheme 2020-09-15T07:02:30Z cjb quit (Quit: end of week) 2020-09-15T07:11:17Z jobol joined #scheme 2020-09-15T07:12:37Z wasamasa: ohno, they removed me from the elisp resources 2020-09-15T07:12:57Z wasamasa: must be me archiving my stuff on github and them not having read the README pointing to the new location 2020-09-15T07:13:05Z wasamasa: or a bad wiki migration job 2020-09-15T07:13:33Z wasamasa: the latter apparently 2020-09-15T07:24:23Z ManDay joined #scheme 2020-09-15T07:34:27Z rgherdt joined #scheme 2020-09-15T07:36:26Z raingloom joined #scheme 2020-09-15T07:37:42Z rgherdt quit (Remote host closed the connection) 2020-09-15T07:48:11Z brendyyn joined #scheme 2020-09-15T07:52:45Z skapata left #scheme 2020-09-15T08:09:43Z hendursa1 joined #scheme 2020-09-15T08:12:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-15T08:16:17Z supercoven joined #scheme 2020-09-15T08:20:21Z supercoven quit (Read error: Connection reset by peer) 2020-09-15T08:23:27Z supercoven joined #scheme 2020-09-15T08:28:43Z rgherdt joined #scheme 2020-09-15T08:29:14Z jobol quit (Remote host closed the connection) 2020-09-15T08:29:27Z jobol joined #scheme 2020-09-15T08:29:31Z rgherdt quit (Client Quit) 2020-09-15T08:35:06Z badkins joined #scheme 2020-09-15T08:36:47Z rgherdt joined #scheme 2020-09-15T08:39:54Z badkins quit (Ping timeout: 260 seconds) 2020-09-15T08:40:35Z cpressey joined #scheme 2020-09-15T08:55:25Z lavaflow quit (Ping timeout: 264 seconds) 2020-09-15T09:06:43Z lavaflow joined #scheme 2020-09-15T09:12:45Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-15T09:48:02Z lavaflow quit (Ping timeout: 256 seconds) 2020-09-15T10:00:00Z muelleme joined #scheme 2020-09-15T10:00:36Z edgar-rft quit (Quit: Leaving) 2020-09-15T10:01:02Z lavaflow joined #scheme 2020-09-15T10:11:28Z muelleme quit (Ping timeout: 260 seconds) 2020-09-15T10:15:23Z arew quit (Ping timeout: 240 seconds) 2020-09-15T10:15:33Z nckx quit (Quit: Updating my Guix System — https://guix.gnu.org) 2020-09-15T10:36:08Z badkins joined #scheme 2020-09-15T10:40:48Z badkins quit (Ping timeout: 256 seconds) 2020-09-15T10:40:50Z nckx joined #scheme 2020-09-15T10:54:05Z rgherdt quit (Ping timeout: 244 seconds) 2020-09-15T11:06:52Z webshinra quit (Remote host closed the connection) 2020-09-15T11:15:29Z civodul quit (Remote host closed the connection) 2020-09-15T11:17:53Z nalaginrut joined #scheme 2020-09-15T11:21:32Z phillbush joined #scheme 2020-09-15T11:31:36Z civodul joined #scheme 2020-09-15T11:40:24Z civodul quit (Remote host closed the connection) 2020-09-15T11:42:16Z civodul joined #scheme 2020-09-15T11:52:25Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-15T12:02:27Z aoh quit (Changing host) 2020-09-15T12:02:27Z aoh joined #scheme 2020-09-15T12:04:50Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-15T12:30:04Z DKordic joined #scheme 2020-09-15T12:34:17Z skapata joined #scheme 2020-09-15T12:37:01Z badkins joined #scheme 2020-09-15T12:41:23Z badkins quit (Ping timeout: 240 seconds) 2020-09-15T12:43:48Z rmura joined #scheme 2020-09-15T12:49:10Z webshinra joined #scheme 2020-09-15T13:01:11Z hendursa1 quit (Quit: hendursa1) 2020-09-15T13:02:08Z hendursaga joined #scheme 2020-09-15T13:09:32Z underlifE joined #scheme 2020-09-15T13:19:23Z cpressey joined #scheme 2020-09-15T13:43:21Z gravicappa joined #scheme 2020-09-15T13:45:01Z ManDay quit (Ping timeout: 244 seconds) 2020-09-15T13:46:34Z ManDay joined #scheme 2020-09-15T13:46:46Z deinernstjetzt joined #scheme 2020-09-15T13:52:15Z DKordic quit (Ping timeout: 244 seconds) 2020-09-15T13:53:09Z badkins joined #scheme 2020-09-15T13:56:22Z bchar_ joined #scheme 2020-09-15T13:56:22Z groovy_ joined #scheme 2020-09-15T13:56:49Z d_run_ joined #scheme 2020-09-15T13:56:59Z ft quit (Ping timeout: 244 seconds) 2020-09-15T13:57:11Z Balooga_ joined #scheme 2020-09-15T13:57:19Z conjunctive_ joined #scheme 2020-09-15T13:58:51Z Yardanico_ joined #scheme 2020-09-15T13:58:52Z ft joined #scheme 2020-09-15T13:59:58Z balkamos_ joined #scheme 2020-09-15T14:00:13Z conjunctive quit (Ping timeout: 272 seconds) 2020-09-15T14:00:13Z bchar quit (Ping timeout: 272 seconds) 2020-09-15T14:00:14Z LeoNerd quit (Ping timeout: 272 seconds) 2020-09-15T14:00:14Z groovy quit (Ping timeout: 272 seconds) 2020-09-15T14:00:14Z d_run quit (Ping timeout: 272 seconds) 2020-09-15T14:00:16Z Balooga quit (Ping timeout: 272 seconds) 2020-09-15T14:00:16Z Yardanico quit (Ping timeout: 272 seconds) 2020-09-15T14:00:16Z balkamos quit (Ping timeout: 272 seconds) 2020-09-15T14:00:16Z gwatt quit (Ping timeout: 272 seconds) 2020-09-15T14:00:16Z fizzie quit (Ping timeout: 272 seconds) 2020-09-15T14:00:17Z pflanze quit (Ping timeout: 272 seconds) 2020-09-15T14:00:17Z bchar_ is now known as bchar 2020-09-15T14:00:17Z groovy_ is now known as groovy 2020-09-15T14:00:18Z d_run_ is now known as d_run 2020-09-15T14:00:23Z conjunctive_ is now known as conjunctive 2020-09-15T14:00:32Z Balooga_ is now known as Balooga 2020-09-15T14:01:18Z balkamos_ quit (Changing host) 2020-09-15T14:01:18Z balkamos_ joined #scheme 2020-09-15T14:01:25Z LeoNerd joined #scheme 2020-09-15T14:01:27Z balkamos_ is now known as balkamos 2020-09-15T14:03:44Z fizzie joined #scheme 2020-09-15T14:04:54Z skapata left #scheme 2020-09-15T14:06:38Z gwatt joined #scheme 2020-09-15T14:07:19Z pflanze joined #scheme 2020-09-15T14:22:30Z civodul quit (Remote host closed the connection) 2020-09-15T14:26:13Z even4void joined #scheme 2020-09-15T14:50:41Z hugh_marera joined #scheme 2020-09-15T14:52:26Z civodul joined #scheme 2020-09-15T14:52:54Z ManDay_clone joined #scheme 2020-09-15T14:54:05Z even4void quit (Remote host closed the connection) 2020-09-15T14:55:37Z even4void joined #scheme 2020-09-15T14:55:55Z ManDay quit (Ping timeout: 240 seconds) 2020-09-15T14:58:31Z even4void quit (Remote host closed the connection) 2020-09-15T15:00:32Z even4void joined #scheme 2020-09-15T15:04:50Z even4void quit (Remote host closed the connection) 2020-09-15T15:15:43Z cantstanya quit (Ping timeout: 240 seconds) 2020-09-15T15:18:43Z cantstanya joined #scheme 2020-09-15T15:24:31Z lritter joined #scheme 2020-09-15T15:35:18Z badkins quit (Remote host closed the connection) 2020-09-15T15:42:28Z Tirifto joined #scheme 2020-09-15T15:49:14Z payph0ne joined #scheme 2020-09-15T15:49:38Z badkins joined #scheme 2020-09-15T15:53:25Z hugh_marera quit (Quit: hugh_marera) 2020-09-15T15:53:46Z hugh_marera joined #scheme 2020-09-15T15:57:36Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-15T16:17:28Z badkins quit (Remote host closed the connection) 2020-09-15T16:19:23Z badkins joined #scheme 2020-09-15T16:19:59Z deinernstjetzt quit (Quit: deinernstjetzt) 2020-09-15T16:22:09Z ManDay_clone quit (Quit: WeeChat 2.8) 2020-09-15T16:23:56Z badkins quit (Ping timeout: 265 seconds) 2020-09-15T16:30:42Z notzmv is now known as notzm 2020-09-15T16:30:44Z notzm is now known as notzmv 2020-09-15T16:31:05Z langmartin joined #scheme 2020-09-15T16:31:42Z hugh_marera quit (Quit: hugh_marera) 2020-09-15T16:32:20Z langmartin quit (Client Quit) 2020-09-15T16:32:55Z langmartin joined #scheme 2020-09-15T16:35:00Z aeth quit (Ping timeout: 244 seconds) 2020-09-15T16:37:00Z aeth joined #scheme 2020-09-15T16:45:17Z rgherdt joined #scheme 2020-09-15T16:45:37Z hugh_marera joined #scheme 2020-09-15T16:52:17Z arew joined #scheme 2020-09-15T16:55:52Z raingloom quit (Ping timeout: 256 seconds) 2020-09-15T17:10:50Z badkins joined #scheme 2020-09-15T17:39:35Z akem_ joined #scheme 2020-09-15T17:42:14Z underlifE quit (Ping timeout: 265 seconds) 2020-09-15T17:44:08Z langmartin quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-15T17:44:30Z langmartin joined #scheme 2020-09-15T17:45:42Z langmartin quit (Client Quit) 2020-09-15T18:08:55Z akem_ quit (Quit: Leaving) 2020-09-15T18:11:35Z ggole quit (Quit: Leaving) 2020-09-15T18:12:07Z raingloom joined #scheme 2020-09-15T18:17:28Z muelleme joined #scheme 2020-09-15T18:22:06Z badkins quit (Remote host closed the connection) 2020-09-15T18:22:39Z badkins joined #scheme 2020-09-15T18:27:38Z badkins quit (Ping timeout: 244 seconds) 2020-09-15T18:36:05Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-15T18:37:09Z gravicappa joined #scheme 2020-09-15T18:43:22Z langmartin joined #scheme 2020-09-15T18:43:33Z rmura quit (Quit: Connection closed for inactivity) 2020-09-15T18:44:39Z payph0ne quit (Ping timeout: 245 seconds) 2020-09-15T18:47:47Z edgar-rft joined #scheme 2020-09-15T18:49:32Z jobol quit (Quit: Leaving) 2020-09-15T18:57:12Z badkins joined #scheme 2020-09-15T19:16:25Z gmaggior joined #scheme 2020-09-15T19:26:40Z notzmv quit (Ping timeout: 256 seconds) 2020-09-15T19:39:04Z supercoven quit (Ping timeout: 256 seconds) 2020-09-15T20:00:53Z badkins quit (Remote host closed the connection) 2020-09-15T20:01:25Z badkins joined #scheme 2020-09-15T20:05:36Z badkins quit (Remote host closed the connection) 2020-09-15T20:05:46Z badkins joined #scheme 2020-09-15T20:21:09Z badkins quit (Remote host closed the connection) 2020-09-15T20:31:03Z ArneBab joined #scheme 2020-09-15T20:31:03Z ArneBab quit (Changing host) 2020-09-15T20:31:03Z ArneBab joined #scheme 2020-09-15T20:42:02Z langmartin quit (Ping timeout: 265 seconds) 2020-09-15T20:49:04Z lritter quit (Ping timeout: 260 seconds) 2020-09-15T20:51:05Z dieggsy joined #scheme 2020-09-15T20:52:35Z dieggsy: anyone have any thoughts on srfi-47 vs srfi-25? which would be a better jumping off point for a numpy-like library in pure scheme? 2020-09-15T20:55:45Z aeth: srfi-25 has been extended by srfi-164 2020-09-15T20:55:50Z aeth: https://srfi.schemers.org/srfi-164/srfi-164.html 2020-09-15T20:55:56Z lritter joined #scheme 2020-09-15T20:58:53Z dieggsy: cool. i'll look into that, thanks 2020-09-15T21:01:41Z dieggsy: oof, ref implementation is in kawa+java 2020-09-15T21:13:54Z aeth: I might implement it, but it won't be portable, either. 2020-09-15T21:16:05Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-15T21:18:36Z dieggsy: perhaps srfi-63 is a good middle ground 2020-09-15T21:18:44Z dieggsy: also, available already in chicken scheme, heh 2020-09-15T21:18:46Z hugh_marera_ joined #scheme 2020-09-15T21:20:00Z hugh_marera_ quit (Client Quit) 2020-09-15T21:20:35Z muelleme quit (Ping timeout: 240 seconds) 2020-09-15T21:21:27Z hugh_marera quit (Ping timeout: 272 seconds) 2020-09-15T21:23:41Z klovett quit (Remote host closed the connection) 2020-09-15T21:24:19Z klovett joined #scheme 2020-09-15T21:34:35Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-15T21:39:08Z jcowan: srfi-179 is also good, and fairly portable 2020-09-15T21:43:56Z Zipheir: SRFI 179 is awesome. 2020-09-15T21:46:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-15T21:49:31Z hendursaga joined #scheme 2020-09-15T22:10:42Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-15T22:12:48Z klovett quit (Remote host closed the connection) 2020-09-15T22:13:03Z klovett joined #scheme 2020-09-15T22:14:04Z torbo joined #scheme 2020-09-15T22:19:37Z notzmv joined #scheme 2020-09-15T22:26:18Z aeth_ joined #scheme 2020-09-15T22:29:51Z aeth quit (Ping timeout: 272 seconds) 2020-09-15T22:29:58Z aeth_ is now known as aeth 2020-09-15T23:15:59Z aeth: Riastradh: btw, any chance of patching paredit specifically for #u8( ? p62 of r7rs.pdf makes it pretty clear that it needs to be #u8( 2020-09-15T23:32:48Z aeth: i.e. the formal syntax leaves no room for whitespace between "#u8" and #\( 2020-09-15T23:33:35Z badkins joined #scheme 2020-09-15T23:36:17Z terpri_ joined #scheme 2020-09-15T23:36:41Z terpri quit (Ping timeout: 244 seconds) 2020-09-15T23:37:41Z Riastradh: aeth: What is the rule you're suggesting? The problem is that it's hard to make a useful rule that works appropriately in Scheme, Common Lisp, and elisp. 2020-09-15T23:39:46Z aeth: I personally think that it's more likely to have #foo(...) as a language extension than #foo, as long as you treat #\foo characters as one thing, so my personal general rule would be to special case the #foo 2020-09-15T23:39:55Z aeth: although that doesn't quite work because of the numeric syntax... 2020-09-15T23:40:47Z aeth: But I honestly wouldn't mind if just #u8( within Scheme is special cased 2020-09-15T23:41:27Z aeth: The more I read p 62 of r7rs.pdf, the more I think that #u8( is intended to be one token (in part because it's literally a ) 2020-09-15T23:41:46Z Riastradh: Well as the author I would prefer to avoid weird special cases that disagree with Emacs's existing syntax mechanisms. 2020-09-15T23:41:52Z badkins quit (Ping timeout: 246 seconds) 2020-09-15T23:43:36Z aeth: I wonder if fixing r7rs's formal syntax (in R7RS large) might be easier. 2020-09-15T23:43:39Z Riastradh: Would be nice if it worked to do `#+sbcl (foo)' but `#+(or sbcl abcl) bar', and would be nice if the same mechanism worked for paredit and M-^. 2020-09-16T00:01:19Z badkins joined #scheme 2020-09-16T00:06:07Z badkins quit (Ping timeout: 272 seconds) 2020-09-16T00:06:27Z torbo quit (Remote host closed the connection) 2020-09-16T00:19:14Z Tirifto quit (Quit: Leaving.) 2020-09-16T00:56:21Z muelleme joined #scheme 2020-09-16T01:01:09Z muelleme quit (Ping timeout: 260 seconds) 2020-09-16T01:15:49Z phillbush quit (Remote host closed the connection) 2020-09-16T01:16:12Z phillbush joined #scheme 2020-09-16T01:22:22Z lritter quit (Quit: Leaving) 2020-09-16T01:27:11Z arew quit (Ping timeout: 272 seconds) 2020-09-16T01:35:35Z phillbush quit (Quit: Leaving) 2020-09-16T01:37:35Z DGASAU quit (Remote host closed the connection) 2020-09-16T01:37:58Z DGASAU joined #scheme 2020-09-16T01:43:10Z sp1ff quit (Remote host closed the connection) 2020-09-16T01:47:04Z sp1ff joined #scheme 2020-09-16T01:57:24Z muelleme joined #scheme 2020-09-16T02:02:13Z badkins joined #scheme 2020-09-16T02:02:37Z muelleme quit (Ping timeout: 264 seconds) 2020-09-16T02:06:36Z badkins quit (Ping timeout: 258 seconds) 2020-09-16T02:08:04Z ArneBab quit (Ping timeout: 244 seconds) 2020-09-16T02:09:32Z ArneBab joined #scheme 2020-09-16T02:09:32Z ArneBab quit (Changing host) 2020-09-16T02:09:32Z ArneBab joined #scheme 2020-09-16T02:19:06Z lockywolf: Zipheir, could you have one more look at the srfi-203 latest pull request? https://github.com/scheme-requests-for-implementation/srfi-203/pull/8 2020-09-16T02:19:47Z raingloom quit (Ping timeout: 240 seconds) 2020-09-16T02:52:05Z lockywolf: I have already used up so much of your time, but I'm just really hoping to finish this. 2020-09-16T02:57:22Z badkins joined #scheme 2020-09-16T03:01:32Z lockywolf: Actually, I should be appealing to everyone who has a bit of time and can review the draft. 2020-09-16T03:02:11Z badkins quit (Ping timeout: 272 seconds) 2020-09-16T03:27:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-16T03:27:29Z xelxebar quit (Remote host closed the connection) 2020-09-16T03:28:04Z xelxebar joined #scheme 2020-09-16T03:28:31Z Zipheir: lockywolf: Absolutely. 2020-09-16T03:30:15Z hendursaga joined #scheme 2020-09-16T03:35:20Z mdhughes: Wasn't 'rogers' going to be removed? Keeping an idol of a racist in your source isn't a good look. 2020-09-16T03:36:45Z Zipheir: lockywolf: I started working on a typo-fix patch earlier today and should have a PR for you soon. 2020-09-16T03:37:01Z mdhughes: And as a larger point, again, if you're implementing anything, may as well implement enough to be useful, not just for one code example. 2020-09-16T03:43:18Z Riastradh: Curious to know what mdhughes's source is for `an idol of a racist' but mdhughes is probably still ignoring me so... 2020-09-16T03:50:34Z gmaggior quit (Quit: Leaving) 2020-09-16T03:55:15Z aeth: Riastradh: probably https://news.mit.edu/2018/mit-class-explores-institutes-connections-slavery-0212 2020-09-16T03:57:02Z aeth: (found via a citation on his Wikipedia article) 2020-09-16T04:02:29Z xelxebar quit (Remote host closed the connection) 2020-09-16T04:02:58Z xelxebar joined #scheme 2020-09-16T04:16:27Z mdhughes: Indeed. 2020-09-16T04:39:25Z skapata joined #scheme 2020-09-16T04:40:25Z skapata left #scheme 2020-09-16T04:40:47Z Zipheir: I wonder if anyone's brought that to Abelson and Sussman's attention. 2020-09-16T04:41:56Z aeth: would they ever make a new edition of the book? 2020-09-16T04:44:33Z Zipheir: It's been almost 25 years since the second edition. 2020-09-16T04:46:07Z Zipheir: We should have a SICP 40th Anniversary party in 2025. 2020-09-16T04:48:13Z aeth: Hopefully the SICP (40th Anniversary) 3rd edition will use Airship Scheme. 2020-09-16T04:48:45Z lockywolf: You probably know best how the drawing system of mit-scheme works 2020-09-16T04:58:13Z badkins joined #scheme 2020-09-16T05:02:58Z badkins quit (Ping timeout: 256 seconds) 2020-09-16T05:04:22Z mdhughes: This is useful: https://www.gnu.org/software/mit-scheme/documentation/stable/mit-scheme-ref/Graphics.html#Graphics 2020-09-16T05:04:43Z gravicappa joined #scheme 2020-09-16T05:23:44Z ex_nihilo joined #scheme 2020-09-16T05:49:06Z Fare joined #scheme 2020-09-16T05:56:57Z nalaginrut quit (Ping timeout: 244 seconds) 2020-09-16T05:59:52Z ggole joined #scheme 2020-09-16T06:02:27Z ggole quit (Read error: Connection timed out) 2020-09-16T06:02:53Z ggole joined #scheme 2020-09-16T06:10:27Z nalaginrut joined #scheme 2020-09-16T06:16:33Z muelleme joined #scheme 2020-09-16T06:36:45Z muelleme quit (Ping timeout: 240 seconds) 2020-09-16T06:38:00Z epony quit (Ping timeout: 258 seconds) 2020-09-16T06:59:25Z badkins joined #scheme 2020-09-16T07:04:25Z badkins quit (Ping timeout: 264 seconds) 2020-09-16T07:09:36Z klovett quit (Remote host closed the connection) 2020-09-16T07:10:14Z klovett joined #scheme 2020-09-16T07:25:23Z brendyyn joined #scheme 2020-09-16T07:29:55Z supercoven joined #scheme 2020-09-16T07:47:38Z epony joined #scheme 2020-09-16T08:03:22Z rgherdt joined #scheme 2020-09-16T08:09:27Z hendursa1 joined #scheme 2020-09-16T08:12:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-16T08:14:19Z civodul joined #scheme 2020-09-16T08:14:47Z ManDay joined #scheme 2020-09-16T08:48:24Z Fare quit (Ping timeout: 244 seconds) 2020-09-16T08:48:35Z cpressey joined #scheme 2020-09-16T08:52:59Z daviid quit (Ping timeout: 240 seconds) 2020-09-16T09:00:04Z badkins joined #scheme 2020-09-16T09:05:05Z badkins quit (Ping timeout: 272 seconds) 2020-09-16T09:05:17Z ManDay quit (Quit: WeeChat 2.8) 2020-09-16T09:21:21Z ManDay joined #scheme 2020-09-16T09:21:38Z arew joined #scheme 2020-09-16T09:37:04Z ex_nihilo quit (Quit: Leaving) 2020-09-16T09:48:00Z muelleme joined #scheme 2020-09-16T09:52:42Z muelleme quit (Ping timeout: 256 seconds) 2020-09-16T10:08:37Z copec quit (Ping timeout: 264 seconds) 2020-09-16T10:19:43Z copec joined #scheme 2020-09-16T10:22:21Z gwatt quit (Ping timeout: 272 seconds) 2020-09-16T10:24:09Z ManDay quit (Quit: WeeChat 2.8) 2020-09-16T10:48:41Z muelleme joined #scheme 2020-09-16T10:48:51Z gwatt joined #scheme 2020-09-16T10:49:26Z badkins joined #scheme 2020-09-16T10:53:05Z muelleme quit (Ping timeout: 240 seconds) 2020-09-16T10:54:18Z badkins quit (Ping timeout: 260 seconds) 2020-09-16T11:00:59Z cpressey quit (Quit: Lunch) 2020-09-16T11:20:45Z burnwindows joined #scheme 2020-09-16T11:33:42Z phillbush joined #scheme 2020-09-16T11:34:23Z phillbush quit (Remote host closed the connection) 2020-09-16T11:35:17Z phillbush joined #scheme 2020-09-16T11:36:08Z valjda joined #scheme 2020-09-16T11:44:01Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-16T11:50:46Z badkins joined #scheme 2020-09-16T11:55:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-16T12:03:45Z copec quit (Ping timeout: 240 seconds) 2020-09-16T12:12:27Z copec joined #scheme 2020-09-16T12:14:12Z cpressey joined #scheme 2020-09-16T12:19:53Z valjda quit (Quit: Leaving) 2020-09-16T12:54:01Z hendursa1 quit (Quit: hendursa1) 2020-09-16T12:54:16Z hendursaga joined #scheme 2020-09-16T12:55:45Z copec quit (Ping timeout: 240 seconds) 2020-09-16T12:56:38Z copec joined #scheme 2020-09-16T13:05:02Z copec quit (Ping timeout: 246 seconds) 2020-09-16T13:05:44Z copec joined #scheme 2020-09-16T13:06:42Z ober quit (Ping timeout: 258 seconds) 2020-09-16T13:28:01Z klovett quit (Remote host closed the connection) 2020-09-16T13:28:17Z klovett joined #scheme 2020-09-16T13:33:32Z klovett quit (Ping timeout: 258 seconds) 2020-09-16T13:38:17Z klovett joined #scheme 2020-09-16T13:41:43Z klovett_ joined #scheme 2020-09-16T13:43:54Z klovett quit (Ping timeout: 256 seconds) 2020-09-16T13:46:05Z ft quit (Ping timeout: 246 seconds) 2020-09-16T13:46:53Z ft joined #scheme 2020-09-16T13:50:37Z copec quit (Ping timeout: 264 seconds) 2020-09-16T13:51:43Z badkins joined #scheme 2020-09-16T13:56:19Z badkins quit (Ping timeout: 260 seconds) 2020-09-16T14:08:35Z copec joined #scheme 2020-09-16T14:12:17Z klovett_ quit (Remote host closed the connection) 2020-09-16T14:12:56Z klovett joined #scheme 2020-09-16T14:13:13Z ManDay joined #scheme 2020-09-16T14:19:42Z burnwindows left #scheme 2020-09-16T14:24:19Z akkad joined #scheme 2020-09-16T14:37:35Z epony quit (Remote host closed the connection) 2020-09-16T14:39:59Z badkins joined #scheme 2020-09-16T14:40:06Z epony joined #scheme 2020-09-16T14:57:08Z klovett quit (Remote host closed the connection) 2020-09-16T14:57:27Z klovett joined #scheme 2020-09-16T15:03:57Z epony quit (Remote host closed the connection) 2020-09-16T15:12:35Z klovett_ joined #scheme 2020-09-16T15:16:05Z klovett quit (Ping timeout: 240 seconds) 2020-09-16T15:21:28Z epony joined #scheme 2020-09-16T15:27:21Z ManDay quit (Quit: WeeChat 2.8) 2020-09-16T15:27:48Z ManDay joined #scheme 2020-09-16T15:28:31Z Fare joined #scheme 2020-09-16T15:38:46Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-16T15:49:53Z gravicappa joined #scheme 2020-09-16T15:59:19Z rgherdt quit (Remote host closed the connection) 2020-09-16T16:08:12Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-16T16:14:02Z ggole quit (Quit: Leaving) 2020-09-16T16:29:52Z rgherdt joined #scheme 2020-09-16T16:56:16Z muelleme joined #scheme 2020-09-16T17:00:05Z aeth quit (Ping timeout: 240 seconds) 2020-09-16T17:00:52Z muelleme quit (Ping timeout: 256 seconds) 2020-09-16T17:02:10Z aeth joined #scheme 2020-09-16T17:20:13Z lritter joined #scheme 2020-09-16T17:38:19Z ManDay quit (Quit: WeeChat 2.8) 2020-09-16T17:38:42Z acarrico quit (Ping timeout: 265 seconds) 2020-09-16T17:57:17Z muelleme joined #scheme 2020-09-16T18:02:18Z muelleme quit (Ping timeout: 256 seconds) 2020-09-16T18:11:08Z kori quit (Quit: WeeChat 2.8) 2020-09-16T18:23:18Z Oddity_ joined #scheme 2020-09-16T18:27:04Z Oddity quit (Ping timeout: 244 seconds) 2020-09-16T18:29:28Z arew quit (Ping timeout: 258 seconds) 2020-09-16T18:38:03Z gmaggior joined #scheme 2020-09-16T18:49:42Z ex_nihilo joined #scheme 2020-09-16T18:50:48Z hugh_marera joined #scheme 2020-09-16T18:58:04Z muelleme joined #scheme 2020-09-16T19:04:47Z muelleme quit (Ping timeout: 260 seconds) 2020-09-16T19:06:04Z gravicappa quit (Read error: Connection reset by peer) 2020-09-16T19:08:03Z aeth_ joined #scheme 2020-09-16T19:10:31Z gmaggior quit (Ping timeout: 246 seconds) 2020-09-16T19:11:49Z aeth quit (Ping timeout: 272 seconds) 2020-09-16T19:14:07Z aeth_ is now known as aeth 2020-09-16T19:14:14Z gravicappa joined #scheme 2020-09-16T19:22:31Z klovett_ quit (Remote host closed the connection) 2020-09-16T19:23:07Z klovett joined #scheme 2020-09-16T19:24:26Z gmaggior joined #scheme 2020-09-16T19:50:45Z langmartin joined #scheme 2020-09-16T19:58:00Z klovett quit (Remote host closed the connection) 2020-09-16T19:58:18Z klovett joined #scheme 2020-09-16T20:04:23Z supercoven quit (Ping timeout: 272 seconds) 2020-09-16T20:23:58Z ohama quit (Ping timeout: 256 seconds) 2020-09-16T20:31:44Z aeth quit (Ping timeout: 256 seconds) 2020-09-16T20:31:49Z ohama joined #scheme 2020-09-16T20:33:36Z aeth joined #scheme 2020-09-16T20:43:45Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-16T20:44:53Z civodul joined #scheme 2020-09-16T20:45:59Z phwalkr joined #scheme 2020-09-16T20:51:53Z gmaggior quit (Ping timeout: 272 seconds) 2020-09-16T20:54:27Z lritter quit (Ping timeout: 265 seconds) 2020-09-16T20:54:46Z ex_nihilo quit (Quit: Leaving) 2020-09-16T21:00:24Z lritter joined #scheme 2020-09-16T21:05:08Z gmaggior joined #scheme 2020-09-16T21:07:25Z whiteline quit (Ping timeout: 246 seconds) 2020-09-16T21:09:54Z Fare quit (Ping timeout: 244 seconds) 2020-09-16T21:10:24Z hugh_marera quit (Quit: hugh_marera) 2020-09-16T21:22:05Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-16T21:39:31Z ex_nihilo joined #scheme 2020-09-16T21:46:25Z ex_nihilo quit (Ping timeout: 240 seconds) 2020-09-16T21:48:37Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-16T21:53:45Z arew joined #scheme 2020-09-16T21:53:47Z gmaggior quit (Ping timeout: 258 seconds) 2020-09-16T22:02:17Z tryte quit (Remote host closed the connection) 2020-09-16T22:02:36Z tryte joined #scheme 2020-09-16T22:06:02Z gmaggior joined #scheme 2020-09-16T22:16:35Z fadein quit (Ping timeout: 240 seconds) 2020-09-16T22:18:33Z arew quit (Ping timeout: 260 seconds) 2020-09-16T22:21:18Z arew joined #scheme 2020-09-16T22:31:44Z daviid joined #scheme 2020-09-16T22:32:49Z Fare joined #scheme 2020-09-16T22:33:21Z ex_nihilo joined #scheme 2020-09-16T22:34:47Z arew quit (Remote host closed the connection) 2020-09-16T22:39:02Z arew joined #scheme 2020-09-16T22:53:44Z badkins quit (Remote host closed the connection) 2020-09-16T22:54:17Z badkins joined #scheme 2020-09-16T22:55:39Z rgherdt quit (Remote host closed the connection) 2020-09-16T22:55:57Z rgherdt joined #scheme 2020-09-16T22:59:49Z badkins quit (Ping timeout: 272 seconds) 2020-09-16T23:00:20Z badkins joined #scheme 2020-09-16T23:01:56Z Fare quit (Ping timeout: 244 seconds) 2020-09-16T23:17:33Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-16T23:19:27Z phillbush quit (Ping timeout: 272 seconds) 2020-09-16T23:36:02Z torbo joined #scheme 2020-09-16T23:51:47Z langmartin quit (Ping timeout: 260 seconds) 2020-09-16T23:53:04Z langmartin joined #scheme 2020-09-16T23:55:22Z ex_nihilo quit (Quit: Leaving) 2020-09-16T23:58:41Z phwalkr quit 2020-09-17T00:01:43Z Plazma joined #scheme 2020-09-17T00:11:54Z muelleme joined #scheme 2020-09-17T00:14:40Z langmartin quit (Ping timeout: 272 seconds) 2020-09-17T00:16:25Z muelleme quit (Ping timeout: 240 seconds) 2020-09-17T00:18:17Z langmartin joined #scheme 2020-09-17T00:23:36Z phillbush joined #scheme 2020-09-17T00:25:03Z galuf joined #scheme 2020-09-17T00:25:44Z langmartin quit (Ping timeout: 260 seconds) 2020-09-17T00:27:07Z langmartin joined #scheme 2020-09-17T00:32:43Z arew quit (Ping timeout: 260 seconds) 2020-09-17T00:44:57Z sp1ff quit (Ping timeout: 272 seconds) 2020-09-17T00:46:44Z badkins quit (Remote host closed the connection) 2020-09-17T00:48:22Z Fare joined #scheme 2020-09-17T01:10:48Z sp1ff joined #scheme 2020-09-17T01:12:34Z muelleme joined #scheme 2020-09-17T01:17:39Z muelleme quit (Ping timeout: 260 seconds) 2020-09-17T01:38:29Z Fare quit (Ping timeout: 244 seconds) 2020-09-17T01:41:26Z langmartin quit (Ping timeout: 272 seconds) 2020-09-17T01:47:43Z Fare joined #scheme 2020-09-17T01:52:00Z Fare quit (Ping timeout: 244 seconds) 2020-09-17T01:55:23Z zooey_ joined #scheme 2020-09-17T01:56:03Z zooey quit (Ping timeout: 240 seconds) 2020-09-17T02:11:58Z langmartin joined #scheme 2020-09-17T02:14:32Z Fare joined #scheme 2020-09-17T02:49:14Z badkins joined #scheme 2020-09-17T02:53:56Z badkins quit (Ping timeout: 258 seconds) 2020-09-17T02:57:28Z zooey_ quit (Remote host closed the connection) 2020-09-17T02:57:43Z zooey joined #scheme 2020-09-17T03:18:36Z galuf quit (Remote host closed the connection) 2020-09-17T03:21:26Z nilg joined #scheme 2020-09-17T03:48:03Z fadein joined #scheme 2020-09-17T04:05:20Z koorosh joined #scheme 2020-09-17T04:05:23Z koorosh: hi 2020-09-17T04:08:01Z koorosh: i'm learning scheme and using guile i installed some libraries and there is a syntax in some function calls that looks like this "(func #:somthing arg)" can someone help me understand it 2020-09-17T04:08:17Z koorosh left #scheme 2020-09-17T04:08:22Z aeth: my guess is keyword 2020-09-17T04:08:25Z koorosh joined #scheme 2020-09-17T04:08:37Z aeth: koorosh: my guess is keyword arguments 2020-09-17T04:09:03Z koorosh: what does that mean how is it diffrent from a normal function call 2020-09-17T04:09:47Z aeth: foo(bar=42) or foo(bar:42) in a hypothetical "normal" syntax language would become (foo #:bar 42) (foo :bar 42) or (foo bar: 42) depending on the Scheme dialect, if it supports keyword arguments. Unfortunately, this isn't standard. 2020-09-17T04:10:03Z aeth: named/keyword parameter 2020-09-17T04:10:27Z koorosh: tnx for helping :) 2020-09-17T04:11:22Z aeth: you're welcome 2020-09-17T04:12:21Z aeth: Yes, it's #:keyword. https://www.gnu.org/software/guile/manual/html_node/lambda_002a-and-define_002a.html 2020-09-17T04:13:05Z phillbush quit (Quit: Leaving) 2020-09-17T04:13:15Z koorosh left #scheme 2020-09-17T04:16:39Z lritter quit (Quit: Leaving) 2020-09-17T04:19:57Z dbmikus joined #scheme 2020-09-17T04:22:56Z nilg quit (Ping timeout: 272 seconds) 2020-09-17T04:38:33Z tryte quit (Remote host closed the connection) 2020-09-17T04:38:46Z tryte joined #scheme 2020-09-17T04:47:56Z terpri_ quit (Remote host closed the connection) 2020-09-17T04:48:21Z terpri_ joined #scheme 2020-09-17T04:49:40Z klovett quit (Remote host closed the connection) 2020-09-17T04:50:19Z klovett joined #scheme 2020-09-17T04:50:51Z badkins joined #scheme 2020-09-17T04:55:45Z badkins quit (Ping timeout: 272 seconds) 2020-09-17T05:02:58Z gravicappa joined #scheme 2020-09-17T05:16:58Z torbo quit (Remote host closed the connection) 2020-09-17T05:53:28Z ggole joined #scheme 2020-09-17T06:16:58Z Fare quit (Ping timeout: 244 seconds) 2020-09-17T06:18:10Z Fare joined #scheme 2020-09-17T06:22:00Z kori joined #scheme 2020-09-17T06:22:00Z kori quit (Changing host) 2020-09-17T06:22:00Z kori joined #scheme 2020-09-17T06:32:18Z kori quit (Quit: WeeChat 2.8) 2020-09-17T06:51:28Z badkins joined #scheme 2020-09-17T06:56:00Z badkins quit (Ping timeout: 260 seconds) 2020-09-17T07:05:36Z gmaggior quit (Quit: Leaving) 2020-09-17T07:06:52Z whiteline joined #scheme 2020-09-17T07:15:00Z civodul joined #scheme 2020-09-17T07:16:25Z Aurora_v_kosmose joined #scheme 2020-09-17T07:34:55Z Fare quit (Ping timeout: 240 seconds) 2020-09-17T07:41:35Z xlei quit (Quit: ZNC - https://znc.in) 2020-09-17T07:49:43Z jobol joined #scheme 2020-09-17T07:58:37Z muelleme joined #scheme 2020-09-17T08:03:19Z muelleme quit (Ping timeout: 246 seconds) 2020-09-17T08:06:52Z xlei joined #scheme 2020-09-17T08:08:22Z supercoven joined #scheme 2020-09-17T08:09:11Z hendursa1 joined #scheme 2020-09-17T08:11:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-17T08:20:03Z cantstanya quit (Ping timeout: 240 seconds) 2020-09-17T08:22:49Z cantstanya joined #scheme 2020-09-17T08:42:11Z ManDay joined #scheme 2020-09-17T08:52:30Z badkins joined #scheme 2020-09-17T08:56:35Z badkins quit (Ping timeout: 240 seconds) 2020-09-17T08:59:39Z muelleme joined #scheme 2020-09-17T09:04:26Z muelleme quit (Ping timeout: 256 seconds) 2020-09-17T09:35:21Z cpressey joined #scheme 2020-09-17T09:41:03Z civodul quit (Read error: Connection reset by peer) 2020-09-17T09:59:31Z arew joined #scheme 2020-09-17T10:06:25Z ManDay quit (Ping timeout: 240 seconds) 2020-09-17T10:06:47Z ManDay joined #scheme 2020-09-17T10:24:51Z rgherdt joined #scheme 2020-09-17T10:53:27Z badkins joined #scheme 2020-09-17T10:58:05Z badkins quit (Ping timeout: 258 seconds) 2020-09-17T10:58:06Z muelleme joined #scheme 2020-09-17T11:15:52Z muelleme quit (Ping timeout: 272 seconds) 2020-09-17T11:35:08Z cpressey quit (Quit: kwit) 2020-09-17T11:46:45Z daviid quit (Ping timeout: 240 seconds) 2020-09-17T12:01:07Z fowlduck quit (Quit: Connection closed for inactivity) 2020-09-17T12:11:20Z dmiles quit (Ping timeout: 265 seconds) 2020-09-17T12:26:50Z lockywolf quit (Read error: Connection reset by peer) 2020-09-17T12:27:06Z lockywolf joined #scheme 2020-09-17T12:40:23Z ManDay quit (Quit: WeeChat 2.8) 2020-09-17T12:53:02Z civodul joined #scheme 2020-09-17T12:54:21Z badkins joined #scheme 2020-09-17T12:58:00Z klovett quit (Remote host closed the connection) 2020-09-17T12:58:18Z klovett joined #scheme 2020-09-17T12:59:06Z badkins quit (Ping timeout: 272 seconds) 2020-09-17T13:03:36Z hendursa1 quit (Quit: hendursa1) 2020-09-17T13:03:51Z hendursaga joined #scheme 2020-09-17T13:33:17Z badkins joined #scheme 2020-09-17T14:01:54Z webshinra quit (Remote host closed the connection) 2020-09-17T14:04:46Z langmartin quit (Ping timeout: 256 seconds) 2020-09-17T14:08:56Z langmartin joined #scheme 2020-09-17T14:22:20Z Fare joined #scheme 2020-09-17T14:25:44Z jcowan: SRFI 177 was withdrawn, but attempted to provide keywords across all R5RS-or-later Schemes. The idea is you write lambda/kw to define a function that accepts keywords, and call/kw to invoke one. These macros expand to the actual use of keywords on systems that have them, and use a calling convention on other Schemes. It turned out to be too hard to make the portable syntax look reasonable without er or syntax-case. 2020-09-17T14:39:43Z cantstanya quit (Ping timeout: 240 seconds) 2020-09-17T14:43:55Z cantstanya joined #scheme 2020-09-17T14:43:56Z rain1: I have an idea about keywords 2020-09-17T14:44:09Z rain1: they should be a magic IDE/editor thing 2020-09-17T14:44:13Z rain1: not part of the language 2020-09-17T14:45:16Z Plazma: oh hi rain1 2020-09-17T14:46:12Z rain1: hey 2020-09-17T14:59:35Z badkins quit (Remote host closed the connection) 2020-09-17T15:00:10Z badkins joined #scheme 2020-09-17T15:03:47Z badkins quit (Remote host closed the connection) 2020-09-17T15:03:56Z badkins_ joined #scheme 2020-09-17T15:08:35Z joast quit (Ping timeout: 240 seconds) 2020-09-17T15:12:26Z DKordic joined #scheme 2020-09-17T15:14:46Z edgar-rft quit (Quit: Leaving) 2020-09-17T15:22:30Z rgherdt quit (Remote host closed the connection) 2020-09-17T15:24:33Z rgherdt joined #scheme 2020-09-17T15:26:42Z langmartin quit (Ping timeout: 256 seconds) 2020-09-17T15:33:38Z jcowan: rain1: In that case, perhaps write some elisp to do the necessary magic. The trouble is, there still needs to be a representation to write to the file, and native keywords where they exist are potentially more efficient (actually so in Racket and Kawa, which put limits on their use) than any portable hack. 2020-09-17T15:58:40Z muelleme joined #scheme 2020-09-17T16:02:01Z ngz joined #scheme 2020-09-17T16:03:36Z muelleme quit (Ping timeout: 258 seconds) 2020-09-17T16:04:46Z badkins_ quit (Remote host closed the connection) 2020-09-17T16:05:19Z badkins joined #scheme 2020-09-17T16:05:50Z civodul quit (Read error: Connection reset by peer) 2020-09-17T16:06:08Z langmartin joined #scheme 2020-09-17T16:07:39Z civodul joined #scheme 2020-09-17T16:10:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-17T16:11:24Z langmartin quit (Remote host closed the connection) 2020-09-17T16:11:56Z langmartin joined #scheme 2020-09-17T16:14:15Z langmartin quit (Remote host closed the connection) 2020-09-17T16:14:48Z langmartin joined #scheme 2020-09-17T16:19:21Z lritter joined #scheme 2020-09-17T16:27:03Z badkins joined #scheme 2020-09-17T16:31:09Z jobol quit (Ping timeout: 272 seconds) 2020-09-17T16:42:47Z Zipheir: rain1: How would that work, e.g. in compiled code? 2020-09-17T16:52:29Z tryte quit (Remote host closed the connection) 2020-09-17T16:52:47Z tryte joined #scheme 2020-09-17T16:55:03Z civodul quit (Ping timeout: 244 seconds) 2020-09-17T16:55:04Z rain1: it's just something editor displays 2020-09-17T16:55:42Z rain1: you type (append x y) and it displays it as (append [list1]x [list2]y) 2020-09-17T16:56:03Z Riastradh: What does it display for (lambda (f) (f x y))? 2020-09-17T16:58:09Z badkins quit (Remote host closed the connection) 2020-09-17T16:58:41Z badkins joined #scheme 2020-09-17T16:59:03Z rain1: maybe display nothing extra there 2020-09-17T16:59:42Z muelleme joined #scheme 2020-09-17T17:00:10Z arew: my favorite alternative to srfi-177 is chibi's let-keywords and let-optionals 2020-09-17T17:02:24Z Zipheir: arew: Yes, I like those. 2020-09-17T17:02:45Z Zipheir: (Inb4 Riastradh mentions the Racket keyword syntax.) 2020-09-17T17:02:47Z mdhughes: The main use of keywords is for options with defaults. Seeing a bunch of field names by itself isn't that helpful, just verbose. (Note: have coded in Obj-C for 15 years, and occasionally in Smalltalk for another 5) 2020-09-17T17:03:23Z badkins quit (Ping timeout: 240 seconds) 2020-09-17T17:04:16Z mdhughes: The CHICKEN syntax is pretty good, and Gerbil's, but for most uses passing an alist as a final arg is probably more readable. 2020-09-17T17:04:21Z Riastradh: named parameters are good for booleans 2020-09-17T17:04:34Z muelleme quit (Ping timeout: 260 seconds) 2020-09-17T17:06:30Z rain1: my idea doesn't help with default values 2020-09-17T17:11:03Z ngz quit (Ping timeout: 272 seconds) 2020-09-17T17:14:28Z badkins joined #scheme 2020-09-17T17:16:54Z jcowan: arew: They aren't very performant, though, compared to CL-style keywords, much less Racket-style. 2020-09-17T17:17:24Z jcowan: I think all Lisp keyword arguments are optional. 2020-09-17T17:21:01Z Riastradh: Zipheir: racket keyword _semantics_ 2020-09-17T17:21:35Z Zipheir: Riastradh: Oops, yes. 2020-09-17T17:22:31Z Riastradh: (syntax, whatever; personally I find (foo bar :baz quux :zot mumble) easier to read than (foo bar baz: quux zot: mumble) even if it's backwards from European typographical conventions, in the absence of any other separators between the pairs, and I think #:keyword is pretty hideous, but whatever) 2020-09-17T17:23:14Z jcowan: #: has the advantage of not breaking backward compat with RnRS, though why Racket cares about that I have no clue. 2020-09-17T17:27:00Z raingloom joined #scheme 2020-09-17T17:30:25Z jobol joined #scheme 2020-09-17T17:31:44Z civodul joined #scheme 2020-09-17T17:32:05Z jobol quit (Client Quit) 2020-09-17T17:35:04Z gmaggior joined #scheme 2020-09-17T17:40:06Z badkins quit (Remote host closed the connection) 2020-09-17T17:40:41Z badkins joined #scheme 2020-09-17T17:41:27Z phillbush joined #scheme 2020-09-17T17:45:38Z badkins quit (Ping timeout: 260 seconds) 2020-09-17T17:53:32Z aeth quit (Ping timeout: 256 seconds) 2020-09-17T17:55:06Z aeth joined #scheme 2020-09-17T17:56:59Z badkins joined #scheme 2020-09-17T18:01:59Z phwalkr joined #scheme 2020-09-17T18:07:04Z aeth: mdhughes: The main use of keywords isn't just for options with defaults: it's for functions having a ton of input, possibly optional. That's why the example is usually something like make-window, and that's after putting most of those in something like settings/options/whatever 2020-09-17T18:07:52Z aeth: If they were all optional, things would be a bit easier. In CL, it's common to have a few where you (error ...) as the default argument and that messes with SLIME's display of the API. 2020-09-17T18:08:20Z Zipheir: It's useful to be able to associate something more memorable than an index with a parameter. 2020-09-17T18:09:42Z aeth: What's particularly annoying is that you can fairly frequently wind up with, say, 10 keyword arguments, where 2 of them are mandatory, but make more sense as keywords than not. And e.g. in CL (or any Scheme that copies this), CLOS will generate all of the input as keyword arguments to make-instance, even if their initform is (error ...) 2020-09-17T18:10:06Z aeth: So, e.g. a mandatory :name field to make-instance 2020-09-17T18:14:14Z aeth: (I wouldn't be surprised if the main use for keyword arguments in Scheme is for CLOS clones) 2020-09-17T18:16:34Z aeth: As for the syntax, I personally prefer foo: or :foo, with the only disadvantage that you could wind up with (foobar :a 1 :foo :foo :bar 42) in a CL-ish procedure call, while in a Scheme with the #:foo convention, you'd probably have something like (foobar #:a 1 #:foo 'foo #:bar 42) since you probably can't use #:foo directly. 2020-09-17T18:17:09Z aeth: There's a slight disadvantage to "foo: " because my brain wants to parse it as "foo : " and so it might be unclear to newbies why the former works but not the latter. 2020-09-17T18:17:23Z jcowan: In SRFI 177, all the keywords are optional, at least at the SRFI level (of course there may be explicit code to complain about missing keywords), and the default value is simply #f. Occasionally this is a problem where a more natural default value is #t, but it's usually possible to work around this without prefixing the keyword with "no-" 2020-09-17T18:18:02Z jcowan: aeth: Only Racket and Kawa disallow #:foo as a value: in all other Schemes that have keywords, it is the usual self-quoting thing. 2020-09-17T18:20:13Z aeth: jcowan: I like having explicit defaults because (1) you don't have to alter your API when #t is natural and (2) then tools like SLIME can see (error "foo") as the default value and it's clear from the API that it's mandatory (and SLIME can even do this for (make-instance 'foo ...) so this works with CLOS) 2020-09-17T18:21:31Z aeth: The only disadvantage is that if you do this, then you could easily wind up in CL with SLIME wasting multiple lines in the minibuffer with stuff like (error 'foo/bar::missing-mandatory-argument :details "The argument quux is required but was not provided.") cluttering your minibuffer... but that's probably on SLIME and probably should be fixed by SLIME hiding everything inside of (error) by default. 2020-09-17T18:23:42Z jcowan: The use case I thought about was an editing procedure that took a keyword :gui that defaulted to #t, but it is easily replaced by a keyword :tui that defaults to #f. Alternatively you can have a keyword :interface whose value is gui, tui, or cli. 2020-09-17T18:23:49Z Zipheir: It's also very common to encounter CL procedures with many, many parameters, so some technique is necessary to control that complexity. 2020-09-17T18:24:44Z aeth: Zipheir: that's what you get when you permit keyword arguments, which is generally the argument against them... Without them, you're probably going to resort to lists/records/whatever instead, even for a handful of arguments, which will be less efficient (unless optimized), but will force you to do things the "right way" before you wind up with 20 keyword arguments 2020-09-17T18:26:02Z jcowan: OTOH, keywords, *because* they are second-class, can be optimized much better than alists, plists, or other dictionary types. 2020-09-17T18:26:17Z jcowan: So the Right Thing is not obvious. 2020-09-17T18:27:14Z jcowan just realized that a record instance can, given reflection, be treated as a dictionary too. 2020-09-17T18:28:46Z aeth: jcowan: right, so it's about the right thing as far as efficiency (assuming the compiler isn't full of magic, if there even is a compiler) vs the right thing as far as extensibility (which assumes you're going to just keep adding options over time) 2020-09-17T18:29:50Z jcowan: I remember discovering that (small) Chicken records were much worse than alists/plists in performance. Never stopped to figure out why. 2020-09-17T18:31:29Z jcowan: The other trouble with default values is that you end up needing the defaultp variable (which says whether what you have is the default or not), and lambda gets very messy indeed: (&keywords (foo nil defaultp) ...) 2020-09-17T18:37:03Z aeth: well, you don't need it, it's just nice to have 2020-09-17T18:37:37Z jcowan: defaultp feels like a kludge on top of a kludge. 2020-09-17T18:37:42Z dbmikus quit (Remote host closed the connection) 2020-09-17T18:37:48Z Riastradh: toss it in the rekludgerator 2020-09-17T18:37:49Z aeth: if you really want things to be a kludge... 2020-09-17T18:38:01Z Zipheir: OTOH, presumably passing structured arguments can be optimized by a compiler with optional static typing better than a mass of optional parameters. 2020-09-17T18:38:07Z aeth: (&key (binding default type default?)) 2020-09-17T18:38:14Z supercoven quit (Ping timeout: 256 seconds) 2020-09-17T18:38:20Z aeth: where each one of those is optional except the first, which is equivalently (binding) or binding 2020-09-17T18:38:23Z aeth: that sounds pretty reasonable to me 2020-09-17T18:38:32Z aeth: Order of how often you'd need them 2020-09-17T18:39:31Z Zipheir: Olin's comments in the SRFI 1 implementation contain many rants about the inefficiency of Scheme's optional parameters. 2020-09-17T18:39:43Z jcowan: afaik there is no way to type lambda args in CL, only defmethod args 2020-09-17T18:40:05Z sbates left #scheme 2020-09-17T18:40:07Z aeth: jcowan: right, and there's no way to type &optional or &key defmethod args because they couldn't agree on the order that I just gave 2020-09-17T18:40:11Z jcowan: Case-lambda is better in that respect. In hindsight, however, define-lambda woudl have been better. 2020-09-17T18:40:24Z jcowan: s/better/even better/2 2020-09-17T18:41:32Z aeth: jcowan: however, CL has type declarations (with a very awkward syntax) so you can write a macro which turns (&key (binding default declared-type)) into (&key (binding default)) and later, at the top of the body, also produce (declare (type declared-type binding)) 2020-09-17T18:42:16Z aeth: And everyone who works extensively with type declarations has written such a macro, usually matching DEFMETHOD's order (type after binding), but sometimes matching DECLARE's order (type before binding; this is also C/C++/etc's order) 2020-09-17T18:43:03Z jcowan: (case-define ((foo a b) (foo a b 0)) ((foo a b c) (+ a b c))), for example 2020-09-17T18:43:10Z aeth: The return type (or types if returning VALUES) is the harder one to add, and the harder one to find syntax that makes sense 2020-09-17T18:43:41Z jcowan: this has the advantage that foo in (foo a b 0) is known to be this foo and can tail-call the other term, whic is not the case with case-lambda. 2020-09-17T18:44:07Z jcowan: (defun (the integer foo) (a b c) ...) 2020-09-17T18:44:43Z jcowan: seems clear enough to me 2020-09-17T18:44:57Z aeth: What usually happens is listifying the name, yes, but with different syntax. There are some other options that might make sense there. I personally do (define-function (foo :return integer) (a b c) ...) 2020-09-17T18:45:15Z aeth: It's a bit complicated because you can defun a list with the name, for SETF functions, so you need to check for SETF as the first argument. 2020-09-17T18:45:15Z choas quit (Read error: Connection reset by peer) 2020-09-17T18:45:29Z aeth: And then you can have (define-function ((setf foo) ...) (...) ...) 2020-09-17T18:45:43Z edgar-rft joined #scheme 2020-09-17T18:46:12Z alexshendi joined #scheme 2020-09-17T18:47:48Z aeth: A direct Scheme translation (of the first part, ignoring the setf special case) would be something like (define ((foo :return integer) (x integer) &optional (y 0 integer)) (+ x y)) 2020-09-17T18:48:18Z aeth: As opposed to (define-function (foo :return integer) ((x integer) &optional (y 0 integer)) (+ x y)) 2020-09-17T18:49:32Z wasamasa: rudybot: give me (the integer foo) 2020-09-17T18:49:34Z rudybot: wasamasa: your sandbox is ready 2020-09-17T18:49:34Z rudybot: wasamasa: error: the: undefined; cannot reference an identifier before its definition in module: 'program 2020-09-17T18:49:40Z jcowan: The nice thing about the is that it already has the right semantics: you are just allowing it in non-expression palaces. 2020-09-17T18:49:57Z jcowan: s/the/`the` 2020-09-17T18:50:05Z jcowan: places, even 2020-09-17T18:50:07Z jcowan: not palaces 2020-09-17T18:50:23Z aeth: Scheme is not a language for palaces 2020-09-17T18:50:38Z wasamasa: for igloos then? 2020-09-17T18:50:47Z aeth: more of a log cabin kind of language 2020-09-17T18:50:57Z aeth: it gives you logs, you have to build the cabin 2020-09-17T18:50:59Z wasamasa: rudybot: uncle steele's hut 2020-09-17T18:51:03Z rudybot: wasamasa: I like http://www.cs.hut.fi/Studies/T-93.210/schemetutorial/schemetutorial.html 2020-09-17T18:51:12Z jcowan: More of a build-a-ship-from-popsicle-sticks kind of a language 2020-09-17T18:51:21Z aeth: an airship, really 2020-09-17T18:51:29Z choas joined #scheme 2020-09-17T18:51:29Z choas quit (Read error: Connection reset by peer) 2020-09-17T18:51:37Z jcowan: That too. 2020-09-17T18:52:05Z jcowan: A friend of mine actually gave that description of programming in Scheme, because he was used to the library-gluing style of programming 2020-09-17T18:52:31Z wasamasa: lists gluing 2020-09-17T18:52:43Z aeth: most Schemes focus on the embedding-into-C-apps niche (or, more rarely, Java) 2020-09-17T18:52:50Z aeth: So you still rely on tons of libraries, just not in Scheme 2020-09-17T18:53:21Z jcowan doesn't agree with that 2020-09-17T18:53:28Z Zipheir: C is the ultimate popsicle-stick-and-glue language. 2020-09-17T18:53:58Z Zipheir: Or lentils-and-glue-mosaic-kit language, to quote that Curse Of Lisp essay. 2020-09-17T18:53:59Z aeth: jcowan: of the popular Schemes, only Racket tries to be something standalone. 2020-09-17T18:54:05Z aeth: (and Racket is only mostly a Scheme) 2020-09-17T18:54:21Z jcowan: Chicken is much more likely to have C embedded into it. 2020-09-17T18:54:27Z aeth: good point 2020-09-17T18:54:37Z Zipheir: aeth: Chez? Gauche? scheme9??? 2020-09-17T18:54:43Z Zipheir: aeth: Many standalones out there. 2020-09-17T18:55:14Z aeth: Zipheir: I have never heard of scheme9. I've barely heard of Gauche. Chez is only recently gaining attention. 2020-09-17T18:55:32Z wasamasa: Zipheir: that's how it feels to me as well, or as one game put it, "Think very carefully" 2020-09-17T18:55:54Z Zipheir: aeth: So by "most Schemes", it seems that you meant "the Schemes I've heard of". 2020-09-17T18:56:09Z aeth: C and C++ just encourage you to do more things from scratch than normal because they make it painful to use libraries. Almost all other languages have solved this problem. 2020-09-17T18:56:27Z aeth: But not entirely from scratch. You're probably going to have a big framework dictate your thoughts. 2020-09-17T18:56:47Z aeth: Zipheir: "of the popular Schemes" 2020-09-17T18:57:33Z aeth: I tend to use available packages as a proxy for popularity, though. Obviously there's no reliable, direct measure. 2020-09-17T18:57:57Z Zipheir: It's not possible to make sense of "popularity" without reference to some group. 2020-09-17T18:57:59Z aeth: Most of the "obscure" Schemes will rely very heavily on portable R6RS/R7RS libraries 2020-09-17T18:58:23Z aeth: Most of the "popular" ones have decently-sized self-sustaining ecosystems 2020-09-17T18:58:34Z aeth: (which are not portable) 2020-09-17T18:58:42Z Zipheir: That is indeed a problem. 2020-09-17T18:58:52Z aeth: If R7RS large happens to the extent that everything suddenly becomes portable, then I can't really use this metric anymore, but then it's not really a problem anymore, either 2020-09-17T19:00:19Z fadein quit (Read error: Connection reset by peer) 2020-09-17T19:00:20Z aeth: The only real important part about popularity is the size of the ecosystem imo. If there's just one "R7RS large" ecosystem, then you'd think of things in terms of R7RS, not in terms of implementations. 2020-09-17T19:01:18Z choas joined #scheme 2020-09-17T19:01:29Z Zipheir: We would really have to have "r7rs-huge" for *everything* to be portable. 2020-09-17T19:02:01Z aeth: that's my flair in https://old.reddit.com/r/schemememe/ 2020-09-17T19:02:33Z aeth: ("r7rs-huge", not the whole sentence) 2020-09-17T19:03:11Z Zipheir: I've been off reddit for so long that I don't even know what "flair" is. Except that wearing only the required amount of flair is unacceptable. :) 2020-09-17T19:03:28Z aeth: oh, it's really ancient 2020-09-17T19:03:33Z aeth: just a tag by your name 2020-09-17T19:03:43Z aeth: probably dates back to at least 2014 2020-09-17T19:03:51Z aeth: (posts can also have tags like this) 2020-09-17T19:05:49Z aeth: I guess it exists because you can't really use avatars or signatures on reddit, unlike traditional web forums 2020-09-17T19:08:22Z aeth_ joined #scheme 2020-09-17T19:09:22Z wasamasa: I'm on one of those traditional web forums and it sure is weird 2020-09-17T19:09:43Z wasamasa: composing your post with a preview function, plenty smileys and all that 2020-09-17T19:10:09Z aeth_: you mean forum-specific emojis? 2020-09-17T19:10:19Z aeth_: "custom emojis", I guess is the correct phrase 2020-09-17T19:10:24Z choas_ joined #scheme 2020-09-17T19:10:24Z choas_ quit (Read error: Connection reset by peer) 2020-09-17T19:10:27Z aeth quit (Disconnected by services) 2020-09-17T19:10:31Z aeth_ is now known as aeth 2020-09-17T19:10:38Z wasamasa: it's more than that, they also have tiny reaction images and gifs 2020-09-17T19:10:46Z choas quit (Read error: Connection reset by peer) 2020-09-17T19:10:56Z aeth: eww, looks like the modern web infected that, too, then 2020-09-17T19:11:06Z aeth: reaction gifs are so 2010s, even though gifs are very 90s 2020-09-17T19:11:13Z wasamasa: someone seems to have enabled all the plugins, I can have some JS spellcheck it for me 2020-09-17T19:11:26Z wasamasa: or warn me if someone posted something while I was composing 2020-09-17T19:11:39Z jcowan: Soon pseuds will be saaying "That's so 2019!" if indeed not "That's so 2020!" 2020-09-17T19:11:42Z aeth: JS spellcheck? But browsers spellcheck 2020-09-17T19:11:49Z edgar-rft quit (Quit: Leaving) 2020-09-17T19:12:37Z wasamasa: yes, it's superfluous 2020-09-17T19:12:58Z wasamasa: that forum has been around since the 90ies, so I'm sure it served a purpose 2020-09-17T19:13:15Z wasamasa: I also love customizability of thread display and how good the search works 2020-09-17T19:15:23Z choas joined #scheme 2020-09-17T19:27:58Z gravicappa quit (Read error: Connection reset by peer) 2020-09-17T19:29:36Z notzmv` joined #scheme 2020-09-17T19:30:38Z notzmv quit (Ping timeout: 260 seconds) 2020-09-17T19:32:14Z gravicappa joined #scheme 2020-09-17T19:32:15Z gravicappa quit (Read error: Connection reset by peer) 2020-09-17T19:34:30Z notzmv` is now known as notzmv 2020-09-17T19:34:40Z notzmv quit (Changing host) 2020-09-17T19:34:40Z notzmv joined #scheme 2020-09-17T19:36:42Z fadein joined #scheme 2020-09-17T19:39:38Z gravicappa joined #scheme 2020-09-17T19:44:10Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-17T19:45:59Z gravicappa joined #scheme 2020-09-17T19:47:53Z phwalkr quit 2020-09-17T19:49:36Z notzmv` joined #scheme 2020-09-17T19:53:02Z notzmv quit (Ping timeout: 260 seconds) 2020-09-17T19:56:42Z notzmv`` joined #scheme 2020-09-17T19:59:44Z notzmv` quit (Ping timeout: 258 seconds) 2020-09-17T20:01:47Z notzmv`` is now known as notzmv 2020-09-17T20:01:53Z notzmv quit (Changing host) 2020-09-17T20:01:53Z notzmv joined #scheme 2020-09-17T20:07:44Z ggole quit (Quit: Leaving) 2020-09-17T20:14:10Z acarrico joined #scheme 2020-09-17T20:14:49Z notzmv` joined #scheme 2020-09-17T20:16:41Z acarrico quit (Client Quit) 2020-09-17T20:16:44Z hugh_marera joined #scheme 2020-09-17T20:17:01Z acarrico joined #scheme 2020-09-17T20:18:14Z notzmv quit (Ping timeout: 260 seconds) 2020-09-17T20:20:48Z badkins quit (Remote host closed the connection) 2020-09-17T20:21:23Z badkins joined #scheme 2020-09-17T20:26:52Z badkins quit (Ping timeout: 272 seconds) 2020-09-17T20:26:54Z lritter quit (Quit: Leaving) 2020-09-17T20:29:33Z Fare quit (Ping timeout: 244 seconds) 2020-09-17T20:30:34Z badkins joined #scheme 2020-09-17T20:31:34Z Fare joined #scheme 2020-09-17T20:41:23Z Aurora_v_kosmose quit (Remote host closed the connection) 2020-09-17T20:42:32Z Aurora_v_kosmose joined #scheme 2020-09-17T20:46:51Z Plazma left #scheme 2020-09-17T20:52:13Z alexshendi quit (Quit: Leaving) 2020-09-17T21:26:37Z klovett quit (Remote host closed the connection) 2020-09-17T21:27:13Z klovett joined #scheme 2020-09-17T21:27:33Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-17T21:37:33Z hugh_marera quit (Quit: hugh_marera) 2020-09-17T21:42:19Z phillbush quit (Ping timeout: 246 seconds) 2020-09-17T21:58:55Z phillbush joined #scheme 2020-09-17T22:04:08Z notzmv` is now known as notzmv 2020-09-17T22:04:14Z notzmv quit (Changing host) 2020-09-17T22:04:14Z notzmv joined #scheme 2020-09-17T22:07:37Z torbo joined #scheme 2020-09-17T22:10:39Z cchristiansen joined #scheme 2020-09-17T22:14:45Z rgherdt quit (Remote host closed the connection) 2020-09-17T22:15:07Z rgherdt joined #scheme 2020-09-17T22:16:15Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-17T22:30:06Z daviid joined #scheme 2020-09-17T22:34:03Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-17T22:40:20Z notzmv` joined #scheme 2020-09-17T22:44:01Z notzmv quit (Ping timeout: 265 seconds) 2020-09-17T22:49:02Z notzmv` is now known as notzmv 2020-09-17T22:49:10Z notzmv quit (Changing host) 2020-09-17T22:49:10Z notzmv joined #scheme 2020-09-17T22:57:55Z Fare quit (Ping timeout: 240 seconds) 2020-09-17T22:59:44Z lritter joined #scheme 2020-09-17T23:19:50Z badkins quit (Remote host closed the connection) 2020-09-17T23:20:26Z badkins joined #scheme 2020-09-17T23:25:36Z badkins quit (Ping timeout: 256 seconds) 2020-09-17T23:28:00Z klovett quit (Remote host closed the connection) 2020-09-17T23:28:18Z klovett joined #scheme 2020-09-17T23:31:53Z badkins joined #scheme 2020-09-17T23:40:03Z aeth: wasamasa: web forums are outdated, anyway 2020-09-17T23:41:25Z epony quit (Quit: reconfigure nwo!) 2020-09-17T23:41:58Z aeth: the future of online communication is hidden within Scheme applications that no one knows about. https://xkcd.com/1305/ 2020-09-17T23:42:18Z epony joined #scheme 2020-09-17T23:42:52Z gwatt: is that the xkcd where everyone joins a hive mind except ffgor one guy who has upgraded to using weechat inside of tmux? 2020-09-17T23:43:53Z epony: s/ffgor/igor, that/ 2020-09-17T23:44:16Z aeth: gwatt: no, it's the xkcd where a bunch of random people meet in an undocumented user support chatroom for years 2020-09-17T23:44:43Z gwatt: aeth: ah, makes sense 2020-09-17T23:44:51Z aeth: there are a lot of xkcd on chatrooms, so it took me a while to find it (about 2 minutes) 2020-09-17T23:45:15Z gwatt: heh, there's always a relevant xckd, sometimes more than one 2020-09-17T23:45:42Z badkins quit (Remote host closed the connection) 2020-09-17T23:46:16Z aeth: any long running series eventually covers everything, often more than once 2020-09-17T23:46:23Z aeth: this was first observed for The Simpsons 2020-09-17T23:46:58Z gwatt: oh for sure 2020-09-17T23:47:22Z badkins joined #scheme 2020-09-17T23:48:37Z epony: s/Simpsons/Schemesons/ 2020-09-17T23:52:14Z badkins quit (Ping timeout: 256 seconds) 2020-09-18T00:08:25Z notzmv` joined #scheme 2020-09-18T00:11:34Z notzmv quit (Ping timeout: 260 seconds) 2020-09-18T00:14:18Z teardown quit (Ping timeout: 260 seconds) 2020-09-18T00:14:25Z badkins joined #scheme 2020-09-18T00:15:38Z gmaggior quit (Quit: Leaving) 2020-09-18T00:16:04Z teardown joined #scheme 2020-09-18T00:19:15Z Fare joined #scheme 2020-09-18T00:20:26Z badkins quit (Ping timeout: 260 seconds) 2020-09-18T00:22:44Z evdubs quit (Remote host closed the connection) 2020-09-18T00:23:06Z evdubs joined #scheme 2020-09-18T00:33:33Z midre quit (Ping timeout: 260 seconds) 2020-09-18T00:35:37Z notzmv` is now known as notzmv 2020-09-18T00:35:44Z notzmv quit (Changing host) 2020-09-18T00:35:44Z notzmv joined #scheme 2020-09-18T00:36:18Z midre joined #scheme 2020-09-18T01:11:55Z Fare quit (Ping timeout: 240 seconds) 2020-09-18T01:14:01Z Fare joined #scheme 2020-09-18T01:18:29Z ex_nihilo joined #scheme 2020-09-18T01:19:15Z nevermind quit (Ping timeout: 240 seconds) 2020-09-18T01:19:22Z nevermind joined #scheme 2020-09-18T01:44:41Z langmartin quit (Ping timeout: 272 seconds) 2020-09-18T02:00:25Z phillbush quit (Quit: Leaving) 2020-09-18T02:17:06Z muelleme joined #scheme 2020-09-18T02:17:10Z langmartin joined #scheme 2020-09-18T02:17:15Z badkins joined #scheme 2020-09-18T02:17:40Z joast joined #scheme 2020-09-18T02:18:54Z torbo quit (Remote host closed the connection) 2020-09-18T02:22:03Z badkins quit (Ping timeout: 260 seconds) 2020-09-18T02:22:48Z muelleme quit (Ping timeout: 272 seconds) 2020-09-18T02:22:49Z torbo joined #scheme 2020-09-18T02:24:25Z langmartin quit (Ping timeout: 240 seconds) 2020-09-18T02:53:20Z langmartin joined #scheme 2020-09-18T02:57:38Z badkins joined #scheme 2020-09-18T03:00:32Z langmartin quit (Ping timeout: 260 seconds) 2020-09-18T03:03:12Z torbo quit (Remote host closed the connection) 2020-09-18T03:03:20Z badkins quit (Ping timeout: 260 seconds) 2020-09-18T03:09:34Z langmartin joined #scheme 2020-09-18T03:14:25Z raingloom quit (Ping timeout: 240 seconds) 2020-09-18T03:15:45Z langmartin quit (Ping timeout: 240 seconds) 2020-09-18T03:19:54Z lambda-11235 joined #scheme 2020-09-18T03:20:20Z langmartin joined #scheme 2020-09-18T03:27:29Z badkins joined #scheme 2020-09-18T03:28:40Z langmartin quit (Ping timeout: 272 seconds) 2020-09-18T03:32:28Z badkins quit (Ping timeout: 272 seconds) 2020-09-18T03:33:30Z lritter quit (Quit: Leaving) 2020-09-18T03:44:40Z gravicappa joined #scheme 2020-09-18T03:50:21Z lambda-11235 quit (Max SendQ exceeded) 2020-09-18T03:50:45Z langmartin joined #scheme 2020-09-18T03:51:12Z lambda-11235 joined #scheme 2020-09-18T03:57:03Z langmartin quit (Ping timeout: 272 seconds) 2020-09-18T04:00:03Z evdubs quit (Quit: Leaving) 2020-09-18T04:03:29Z evdubs joined #scheme 2020-09-18T04:07:03Z teardown quit (Ping timeout: 260 seconds) 2020-09-18T04:24:10Z langmartin joined #scheme 2020-09-18T04:37:13Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-18T05:13:53Z kori joined #scheme 2020-09-18T05:13:53Z kori quit (Changing host) 2020-09-18T05:13:53Z kori joined #scheme 2020-09-18T05:16:23Z klovett quit (Remote host closed the connection) 2020-09-18T05:17:00Z klovett joined #scheme 2020-09-18T05:28:06Z badkins joined #scheme 2020-09-18T05:33:19Z badkins quit (Ping timeout: 272 seconds) 2020-09-18T05:46:44Z daviid quit (Ping timeout: 272 seconds) 2020-09-18T05:52:19Z nalaginrut quit (Ping timeout: 272 seconds) 2020-09-18T06:05:47Z nalaginrut joined #scheme 2020-09-18T06:25:24Z lambda-11235 quit (Max SendQ exceeded) 2020-09-18T06:26:13Z lambda-11235 joined #scheme 2020-09-18T06:33:21Z lambda-11235 quit (Quit: Bye) 2020-09-18T06:38:22Z ex_nihilo quit (Quit: Leaving) 2020-09-18T06:42:28Z supercoven joined #scheme 2020-09-18T06:43:25Z Fare quit (Ping timeout: 240 seconds) 2020-09-18T06:47:10Z civodul joined #scheme 2020-09-18T06:47:46Z fadein quit (Ping timeout: 256 seconds) 2020-09-18T06:52:56Z groovy quit (Ping timeout: 240 seconds) 2020-09-18T06:52:56Z bitmapper quit (Ping timeout: 240 seconds) 2020-09-18T06:53:02Z Boarders quit (Ping timeout: 260 seconds) 2020-09-18T06:53:07Z conjunctive quit (Ping timeout: 240 seconds) 2020-09-18T06:53:18Z Duns_Scrotus quit (Ping timeout: 260 seconds) 2020-09-18T06:53:18Z englishm quit (Ping timeout: 260 seconds) 2020-09-18T06:53:18Z ec quit (Ping timeout: 260 seconds) 2020-09-18T06:53:18Z ullbeking quit (Ping timeout: 260 seconds) 2020-09-18T06:53:18Z physpi quit (Ping timeout: 260 seconds) 2020-09-18T06:53:26Z mats quit (Ping timeout: 240 seconds) 2020-09-18T06:53:26Z dnm quit (Ping timeout: 240 seconds) 2020-09-18T06:53:27Z d_run quit (Ping timeout: 240 seconds) 2020-09-18T06:53:27Z stephe quit (Ping timeout: 240 seconds) 2020-09-18T06:53:30Z rickbutton quit (Ping timeout: 244 seconds) 2020-09-18T06:53:36Z rann quit (Ping timeout: 244 seconds) 2020-09-18T06:53:53Z duncanm quit (Ping timeout: 260 seconds) 2020-09-18T06:54:26Z groovy joined #scheme 2020-09-18T06:54:57Z z-memory joined #scheme 2020-09-18T06:55:03Z physpi joined #scheme 2020-09-18T06:55:13Z bitmapper joined #scheme 2020-09-18T06:55:23Z conjunctive joined #scheme 2020-09-18T06:55:37Z ec joined #scheme 2020-09-18T06:55:52Z Boarders joined #scheme 2020-09-18T06:56:12Z duncanm joined #scheme 2020-09-18T06:56:13Z rudybot: la la la 2020-09-18T06:56:35Z rann joined #scheme 2020-09-18T06:56:37Z stephe joined #scheme 2020-09-18T06:56:37Z Duns_Scrotus joined #scheme 2020-09-18T06:56:37Z ullbeking joined #scheme 2020-09-18T06:56:38Z dnm joined #scheme 2020-09-18T06:57:06Z englishm joined #scheme 2020-09-18T06:57:13Z rickbutton joined #scheme 2020-09-18T06:57:56Z mats joined #scheme 2020-09-18T07:08:49Z d_run joined #scheme 2020-09-18T07:23:48Z jobol joined #scheme 2020-09-18T07:25:08Z ManDay joined #scheme 2020-09-18T07:29:10Z badkins joined #scheme 2020-09-18T07:34:00Z badkins quit (Ping timeout: 256 seconds) 2020-09-18T07:41:23Z arew quit (Ping timeout: 240 seconds) 2020-09-18T08:09:43Z hendursa1 joined #scheme 2020-09-18T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-18T08:12:44Z ManDay quit (Ping timeout: 244 seconds) 2020-09-18T08:13:09Z ManDay joined #scheme 2020-09-18T08:30:55Z ineiros joined #scheme 2020-09-18T08:41:48Z cpressey joined #scheme 2020-09-18T08:49:39Z ManDay quit (Ping timeout: 272 seconds) 2020-09-18T08:51:00Z ManDay joined #scheme 2020-09-18T08:52:48Z Ericson2314 quit (Quit: killed) 2020-09-18T08:52:51Z autumn[m] quit (Quit: killed) 2020-09-18T08:52:55Z mbakke quit (Quit: killed) 2020-09-18T08:53:07Z dieggsy quit (Quit: killed) 2020-09-18T08:53:09Z even4void[m] quit (Quit: killed) 2020-09-18T08:53:11Z siraben quit (Quit: killed) 2020-09-18T08:53:11Z Gnuxie[m] quit (Quit: killed) 2020-09-18T09:02:27Z ManDay quit (Quit: WeeChat 2.8) 2020-09-18T09:04:31Z raingloom joined #scheme 2020-09-18T09:11:47Z muelleme joined #scheme 2020-09-18T09:14:28Z even4void[m] joined #scheme 2020-09-18T09:16:32Z muelleme quit (Ping timeout: 260 seconds) 2020-09-18T09:19:18Z even4void[m] quit (Remote host closed the connection) 2020-09-18T09:22:57Z Gnuxie[m] joined #scheme 2020-09-18T09:23:58Z z-memory quit (Quit: Connection closed for inactivity) 2020-09-18T09:30:41Z Ericson2314 joined #scheme 2020-09-18T09:30:41Z mbakke joined #scheme 2020-09-18T09:30:41Z siraben joined #scheme 2020-09-18T09:30:41Z even4void[m] joined #scheme 2020-09-18T09:30:47Z dieggsy joined #scheme 2020-09-18T09:30:48Z autumn[m] joined #scheme 2020-09-18T09:35:29Z daviid joined #scheme 2020-09-18T10:12:52Z muelleme joined #scheme 2020-09-18T10:17:36Z muelleme quit (Ping timeout: 265 seconds) 2020-09-18T10:19:20Z DKordic quit 2020-09-18T10:29:45Z cpressey quit (Ping timeout: 240 seconds) 2020-09-18T10:49:28Z notzmv` joined #scheme 2020-09-18T10:52:54Z notzmv quit (Ping timeout: 258 seconds) 2020-09-18T11:06:17Z cpressey joined #scheme 2020-09-18T11:28:01Z phillbush joined #scheme 2020-09-18T11:30:58Z badkins joined #scheme 2020-09-18T11:35:54Z badkins quit (Ping timeout: 265 seconds) 2020-09-18T11:54:23Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-18T11:58:17Z dmiles joined #scheme 2020-09-18T11:58:54Z muelleme joined #scheme 2020-09-18T12:03:48Z muelleme quit (Ping timeout: 256 seconds) 2020-09-18T12:13:57Z Tirifto joined #scheme 2020-09-18T12:14:04Z klovett quit (Remote host closed the connection) 2020-09-18T12:14:19Z klovett joined #scheme 2020-09-18T12:23:59Z Yardanico_ quit (Quit: https://quassel-irc.org - Chat comfortably. Anywhere.) 2020-09-18T12:24:19Z Yardanico joined #scheme 2020-09-18T12:29:34Z hendursa1 quit (Quit: hendursa1) 2020-09-18T12:29:49Z hendursaga joined #scheme 2020-09-18T12:39:27Z ManDay joined #scheme 2020-09-18T12:42:07Z ManDay quit (Client Quit) 2020-09-18T12:45:26Z ManDay joined #scheme 2020-09-18T12:53:27Z langmartin quit (Remote host closed the connection) 2020-09-18T12:53:59Z langmartin joined #scheme 2020-09-18T12:59:39Z muelleme joined #scheme 2020-09-18T13:04:25Z muelleme quit (Ping timeout: 260 seconds) 2020-09-18T13:09:59Z srandon111 joined #scheme 2020-09-18T13:11:00Z ManDay quit (Quit: WeeChat 2.9) 2020-09-18T13:11:18Z ManDay joined #scheme 2020-09-18T13:20:34Z badkins joined #scheme 2020-09-18T13:25:26Z badkins quit (Ping timeout: 260 seconds) 2020-09-18T13:27:14Z ManDay quit (Quit: WeeChat 2.9) 2020-09-18T13:52:37Z cantstanya quit (Remote host closed the connection) 2020-09-18T13:54:02Z cantstanya joined #scheme 2020-09-18T13:54:47Z fadein joined #scheme 2020-09-18T13:55:50Z arew joined #scheme 2020-09-18T13:57:38Z langmartin quit (Ping timeout: 260 seconds) 2020-09-18T14:00:00Z langmartin joined #scheme 2020-09-18T14:06:06Z arew: https://itch.io/jam/autumn-lisp-game-jam-2020 2020-09-18T14:10:39Z badkins joined #scheme 2020-09-18T14:20:30Z ManDay joined #scheme 2020-09-18T14:28:09Z cantstanya quit (Remote host closed the connection) 2020-09-18T14:28:31Z ManDay quit (Quit: WeeChat 2.9) 2020-09-18T14:29:07Z cantstanya joined #scheme 2020-09-18T14:33:55Z notzmv` is now known as notzmv 2020-09-18T14:34:02Z notzmv quit (Changing host) 2020-09-18T14:34:02Z notzmv joined #scheme 2020-09-18T14:39:12Z drot quit (Read error: Connection reset by peer) 2020-09-18T14:39:22Z ManDay joined #scheme 2020-09-18T14:39:27Z teardown joined #scheme 2020-09-18T14:44:45Z ManDay quit (Quit: WeeChat 2.9) 2020-09-18T14:48:44Z ManDay joined #scheme 2020-09-18T14:53:32Z edgar-rft joined #scheme 2020-09-18T14:54:24Z sm2n quit (Quit: Leaving) 2020-09-18T15:06:49Z langmartin quit (Ping timeout: 264 seconds) 2020-09-18T15:23:27Z badkins quit (Remote host closed the connection) 2020-09-18T15:31:03Z badkins joined #scheme 2020-09-18T15:32:05Z ManDay quit (Quit: WeeChat 2.9) 2020-09-18T15:33:05Z langmartin joined #scheme 2020-09-18T15:33:34Z Fare joined #scheme 2020-09-18T15:54:58Z raingloom quit (Ping timeout: 244 seconds) 2020-09-18T15:57:05Z langmartin quit (Ping timeout: 240 seconds) 2020-09-18T16:01:05Z rgherdt joined #scheme 2020-09-18T16:02:11Z langmartin joined #scheme 2020-09-18T16:15:50Z drot joined #scheme 2020-09-18T16:20:26Z rgherdt quit (Ping timeout: 256 seconds) 2020-09-18T16:28:48Z aeth quit (Ping timeout: 265 seconds) 2020-09-18T16:30:25Z aeth joined #scheme 2020-09-18T16:30:56Z tryte_ joined #scheme 2020-09-18T16:31:43Z tryte quit (Ping timeout: 240 seconds) 2020-09-18T16:41:05Z theseb joined #scheme 2020-09-18T16:54:38Z jobol quit (Quit: Leaving) 2020-09-18T16:56:02Z sm2n joined #scheme 2020-09-18T17:07:09Z badkins quit (Remote host closed the connection) 2020-09-18T17:08:35Z badkins joined #scheme 2020-09-18T17:09:30Z badkins quit (Remote host closed the connection) 2020-09-18T17:09:40Z badkins joined #scheme 2020-09-18T17:11:22Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-18T17:12:34Z gravicappa joined #scheme 2020-09-18T17:16:18Z wgytfr78 joined #scheme 2020-09-18T17:23:37Z wgytfr78 quit (K-Lined) 2020-09-18T17:24:01Z edgar-rft quit (Remote host closed the connection) 2020-09-18T17:27:51Z rgherdt joined #scheme 2020-09-18T17:34:08Z edgar-rft joined #scheme 2020-09-18T18:04:55Z raingloom joined #scheme 2020-09-18T18:06:11Z badkins quit (Remote host closed the connection) 2020-09-18T18:07:57Z lritter joined #scheme 2020-09-18T18:24:13Z badkins joined #scheme 2020-09-18T18:28:57Z daviid quit (Ping timeout: 260 seconds) 2020-09-18T18:29:53Z user51 joined #scheme 2020-09-18T19:02:28Z ManDay joined #scheme 2020-09-18T19:04:36Z arew: foundation.. the show.. 2021 on apple tv+ 2020-09-18T19:04:44Z arew: aahaha!!! 2020-09-18T19:11:33Z muelleme joined #scheme 2020-09-18T19:16:05Z muelleme quit (Ping timeout: 240 seconds) 2020-09-18T19:16:38Z arew: jcowan: excellent idea for the web server, tx! 2020-09-18T19:16:56Z jcowan: Thanks. Now if you feel like writing an implementation.... 2020-09-18T19:20:18Z klovett quit (Remote host closed the connection) 2020-09-18T19:20:57Z klovett joined #scheme 2020-09-18T19:25:08Z gmaggior joined #scheme 2020-09-18T19:32:16Z edgar-rft quit (Read error: Connection reset by peer) 2020-09-18T19:46:12Z arew: jcowan: yeah, I have been to do it for some time, webui pre-srfi is distraction (that I wanted to do anyway but...) 2020-09-18T19:46:40Z arew: my plan is to bind libuv with r6rs-pffi?! 2020-09-18T19:46:51Z arew: I think it is the most portable approach. 2020-09-18T19:47:49Z arew: I asked around for a C library that expose sockets in an "platform independant way" for synchronous stuff but no answers, no luck. 2020-09-18T19:49:10Z arew: They are some network libraries that are written in C that are portable (windows, linux possibly netbsb) but they are either async or the public interface rely on something much more different than bsd sockets 2020-09-18T19:49:32Z arew: also I have a http reader and writer, I tested the reader on WARC files :) 2020-09-18T19:54:06Z arew: here is the question about portable sync network library: https://softwarerecs.stackexchange.com/q/75968/63277 2020-09-18T19:56:02Z supercoven quit (Ping timeout: 272 seconds) 2020-09-18T19:56:29Z arew: rudybot: what do you think of asimov's foundation? 2020-09-18T19:56:34Z rudybot: arew: "Greg Bear also wrote Foundation and Chaos (Harper Prism, 1998), the second book in the Second Foundation Trilogy, (an extension to Asimov's Foundation novels) with Gregory Benford and David Brin penning the other two books in the trilogy." 2020-09-18T19:56:51Z arew: rudybot: I love you :) 2020-09-18T19:56:52Z rudybot: arew: I particularly love that control with which you set the time -- 2020-09-18T19:57:07Z arew: rudybot: in the future too! 2020-09-18T19:57:08Z rudybot: arew: it's not too much effort, but it will save you lots of time in the future 2020-09-18T20:00:32Z autumn[m]: dw,.u 2020-09-18T20:00:33Z autumn[m]: ,.u 2020-09-18T20:00:34Z autumn[m]: dwdw, 2020-09-18T20:00:35Z autumn[m]: .uwd 2020-09-18T20:00:36Z autumn[m]: ,.udw.,u 2020-09-18T20:00:36Z autumn[m]: wd,.u 2020-09-18T20:00:36Z autumn[m]: du 2020-09-18T20:00:50Z autumn[m]: oh geeze. sorry, keyboard malfunction :( 2020-09-18T20:07:07Z aeth: cat? 2020-09-18T20:08:28Z autumn[m]: uh no, i have a weird small keyboard i use with plover and sometimes it's accidentally in a "send regular keypresses" mode that i never learned how to use 2020-09-18T20:10:09Z user51: i'd say ed rather than cat. 2020-09-18T20:10:54Z gnomon: autumn[m], oh interesting, what kind of weird small keyboard is it? 2020-09-18T20:11:27Z X-Scale` joined #scheme 2020-09-18T20:12:12Z X-Scale quit (Ping timeout: 256 seconds) 2020-09-18T20:12:23Z autumn[m]: gnomon: uh... https://www.gboards.ca/product/georgi 2020-09-18T20:12:30Z X-Scale` is now known as X-Scale 2020-09-18T20:12:42Z muelleme joined #scheme 2020-09-18T20:14:30Z autumn[m]: (also see http://www.openstenoproject.org/# ...only they oversell it a bit by suggesting anyone can just go and write at over 200 wpm haha, that's more like highly skilled levels of it) 2020-09-18T20:14:56Z arew: autumn[m]: how much do you do? 2020-09-18T20:15:10Z arew: wpm? 2020-09-18T20:17:05Z muelleme quit (Ping timeout: 240 seconds) 2020-09-18T20:20:01Z ManDay quit (Quit: WeeChat 2.9) 2020-09-18T20:20:31Z gnomon: autumn[m], !!! I was just looking at the GergoPlex the other day! 2020-09-18T20:20:33Z gnomon: keen 2020-09-18T20:28:00Z klovett quit (Remote host closed the connection) 2020-09-18T20:28:16Z klovett joined #scheme 2020-09-18T20:35:17Z user51 quit (Quit: leaving) 2020-09-18T20:38:33Z autumn[m]: arew: I would make a very rough guess of somewhere between seventy-five and 100 depending on the content of what I was writing, whether I was coming up with said content on the fly, etc. 2020-09-18T20:39:09Z autumn[m]: I suspect I might be able to improve on that with deliberate practice but I haven't really devoted the time I'd need to to it to know 2020-09-18T20:55:32Z sdu quit (Quit: leaving) 2020-09-18T20:57:13Z aeth_ joined #scheme 2020-09-18T20:58:14Z aeth quit (Disconnected by services) 2020-09-18T20:58:17Z aeth_ is now known as aeth 2020-09-18T21:01:49Z torbo joined #scheme 2020-09-18T21:03:47Z lritter quit (Ping timeout: 240 seconds) 2020-09-18T21:04:48Z lritter joined #scheme 2020-09-18T21:15:06Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-18T21:19:07Z hugh_marera joined #scheme 2020-09-18T21:28:46Z edgar-rft joined #scheme 2020-09-18T21:30:41Z badkins quit (Remote host closed the connection) 2020-09-18T21:31:23Z badkins joined #scheme 2020-09-18T21:41:10Z badkins quit (Ping timeout: 246 seconds) 2020-09-18T22:22:33Z badkins joined #scheme 2020-09-18T22:25:03Z edgar-rft quit (Quit: Leaving) 2020-09-18T22:26:58Z daviid joined #scheme 2020-09-18T22:27:24Z badkins quit (Ping timeout: 272 seconds) 2020-09-18T22:29:34Z rgherdt quit (Ping timeout: 260 seconds) 2020-09-18T22:31:34Z hugh_marera quit (Quit: hugh_marera) 2020-09-18T22:34:50Z torbo quit (Remote host closed the connection) 2020-09-18T22:35:14Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-18T22:42:04Z badkins joined #scheme 2020-09-18T22:51:09Z edgar-rft joined #scheme 2020-09-18T23:06:21Z srandon111 quit (Quit: leaving) 2020-09-18T23:16:40Z Tirifto quit (Quit: Leaving.) 2020-09-18T23:20:57Z midre quit (Ping timeout: 244 seconds) 2020-09-18T23:21:31Z midre joined #scheme 2020-09-18T23:32:00Z gmaggior quit (Ping timeout: 272 seconds) 2020-09-18T23:44:43Z gmaggior joined #scheme 2020-09-19T00:06:54Z gmaggior quit (Quit: Leaving) 2020-09-19T00:26:30Z badkins quit (Remote host closed the connection) 2020-09-19T00:27:08Z badkins joined #scheme 2020-09-19T00:32:39Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T00:39:50Z sp1ff quit (Read error: Connection reset by peer) 2020-09-19T00:40:16Z sp1ff joined #scheme 2020-09-19T00:48:25Z teardown quit (Ping timeout: 240 seconds) 2020-09-19T00:50:37Z edgar-rft quit (Quit: Leaving) 2020-09-19T00:55:46Z teardown joined #scheme 2020-09-19T01:04:59Z autumn[m]: rudybot: what do you think about keyboards? 2020-09-19T01:05:01Z rudybot: autumn[m]: i think xah lee has even written a rant about microsoft's ergonomic keyboards 2020-09-19T01:05:10Z autumn[m]: Probably 2020-09-19T01:06:46Z nullheroes quit (Quit: WeeChat 2.9) 2020-09-19T01:15:52Z langmartin quit (Ping timeout: 272 seconds) 2020-09-19T01:17:12Z koorosh joined #scheme 2020-09-19T01:20:39Z mdhughes: The ideal keyboard is a telegraph key. Just learn Morse code. Probably ed's the easiest editor to use with it. 2020-09-19T01:20:40Z badkins joined #scheme 2020-09-19T01:23:08Z Zipheir: Many of us still mostly use ASCII, which is descended from Morse, IIUC. 2020-09-19T01:24:18Z koorosh: hi i'm learning scheme and i think i have parentheses blindness i really don't under stand what is the problem with the following code 2020-09-19T01:24:18Z koorosh: (define-module (chess basics) 2020-09-19T01:24:18Z koorosh: #:export (make-chess-board 2020-09-19T01:24:18Z koorosh: chess-board-ref) 2020-09-19T01:24:21Z koorosh: #:use-module (rnrs) 2020-09-19T01:24:24Z koorosh: (define (chess-board-ref chessboard ver hor) 2020-09-19T01:24:28Z koorosh: (vector-ref (vector-ref chessboard ver) hor)) 2020-09-19T01:24:31Z koorosh: (define (make-chess-board ver hor) 2020-09-19T01:24:34Z koorosh: (make-vector ver (make-vector hor 0)))) 2020-09-19T01:24:43Z koorosh: when i enter it in repl i get an syntax error 2020-09-19T01:25:10Z badkins quit (Ping timeout: 246 seconds) 2020-09-19T01:28:28Z Fare quit (Ping timeout: 244 seconds) 2020-09-19T01:28:40Z mdhughes: koorosh: define-module isn't standard, which Scheme are you using? 2020-09-19T01:28:41Z koorosh left #scheme 2020-09-19T01:29:49Z koorosh joined #scheme 2020-09-19T01:29:53Z koorosh: i'm using guile 2020-09-19T01:30:11Z Fare joined #scheme 2020-09-19T01:30:25Z Zipheir: koorosh: It looks OK. 2020-09-19T01:30:58Z Zipheir: koorosh: But I don't know the syntax of define-module. You may need a (begin ...) around the actual definitions. 2020-09-19T01:31:43Z koorosh: While compiling expression: 2020-09-19T01:31:43Z koorosh: Syntax error: 2020-09-19T01:31:43Z koorosh: unknown file:1789:3: define-module: expected keyword arg in subform (define (chess-board-ref chessboard ver hor) (vector-ref (vector-ref chessboard ver) hor)) of (define-module (chess basics) #:use-module (rnrs) #:export (make-chess-board chess-board-ref) (define (chess-board-ref chessboard ver hor) (vector-ref (vector-ref chessboard ver) hor)) (define (make-chess-board ver hor) (make-vector ver (make-vector hor 0)))) 2020-09-19T01:31:46Z koorosh: i get this when i'm trying to evalute it 2020-09-19T01:32:10Z Zipheir: koorosh: You need to close the (define-module ...) form before the defines, I think. See https://www.gnu.org/software/guile/manual/html_node/Creating-Guile-Modules.html 2020-09-19T01:32:19Z koorosh: it works ok when there are no definitions in the body 2020-09-19T01:32:23Z koorosh: tnx 2020-09-19T01:33:18Z Zipheir: koorosh: Yeah, define-module doesn't include the module forms. 2020-09-19T01:34:03Z Zipheir: koorosh: This is unusual, and not like R7RS define-library or R6RS `library'. 2020-09-19T01:34:57Z Zipheir: koorosh: Since Guile supports R6, you may want to use R6RS libraries: https://www.gnu.org/software/guile/manual/html_node/R6RS-Libraries.html 2020-09-19T01:37:52Z koorosh: i got it i should not put the body inside of (define-module) form 2020-09-19T01:38:20Z badkins joined #scheme 2020-09-19T01:41:02Z Zipheir: koorosh: Right. 2020-09-19T01:43:06Z badkins quit (Ping timeout: 272 seconds) 2020-09-19T01:47:19Z langmartin joined #scheme 2020-09-19T01:48:35Z aeth: koorosh: Tangential, but how did you decide on the chess board format that you're using? Special-casing chessboards, which are small, is fairly common, e.g. https://en.wikipedia.org/wiki/Bitboard 2020-09-19T01:48:51Z aeth: That's if chess is your exercise, of course. Something that's more general, like just learning arrays or whatever, obviously doesn't need something fancy 2020-09-19T01:49:53Z aeth: Of course, with a proper layer of abstraction on top, it won't really matter what the underlying representation is 2020-09-19T01:52:37Z aeth: (That particular example might be too advanced, though, because you'd need a u64 array and hope that unsigned 64-bit integers that are technically bignums are special cased in your implementation if accessed in special ways) 2020-09-19T02:04:32Z Zipheir: Many basic grid game examples in Scheme just use vectors. 2020-09-19T02:05:43Z badkins joined #scheme 2020-09-19T02:10:13Z badkins quit (Ping timeout: 258 seconds) 2020-09-19T02:10:55Z Zipheir: ... or even lists. 2020-09-19T02:12:21Z koorosh: aeth: just wanted to start bulding something simple with good abstractions in mind so i can extend it as i go throu with it 2020-09-19T02:12:43Z muelleme joined #scheme 2020-09-19T02:15:06Z edgar-rft joined #scheme 2020-09-19T02:15:22Z aeth: Zipheir: lists are bad for grid games because most things you'd want to do are O(n), although, yeah, it doesn't surprise me that it's common 2020-09-19T02:15:55Z Riastradh: If n=64 maybe that's not a big deal! 2020-09-19T02:17:46Z muelleme quit (Ping timeout: 256 seconds) 2020-09-19T02:18:40Z Zipheir: aeth: Well, yes. But it's easy to explain the representation, since many intro sources on Lisp obviously spend a lot of time on lists. 2020-09-19T02:27:07Z aeth: Zipheir: too much imo, such they're mostly useful for macros, which are advanced 2020-09-19T02:30:19Z aeth: Zipheir: although I suppose with lazy lists built into r7rs-small, list concepts are a bit more useful 2020-09-19T02:32:48Z Zipheir: aeth: It's fine a way to introduce sequences, because it's easy to reason about lists and theorems on them can be generalized to other types with better performance characteristics. 2020-09-19T02:36:43Z aeth: Zipheir: idk, these days, people are probably more used to vectors if they're coming from other languages 2020-09-19T02:37:39Z Zipheir: aeth: In the optimistic world of introductions where no-one has any preconceptions, of course. 2020-09-19T02:45:22Z aeth: Zipheir: I just personally think that the #1 risk of miconceptions with a Lisp (unless it's a dialect where this is true) is giving people the impression that lists are the only data structure. 2020-09-19T02:45:44Z aeth: I'd probably address that by not even spending one chapter on lists without also using other data structures mixed in. 2020-09-19T02:48:00Z aeth: Zipheir: for sequences, there's usually a nice contrast between lists and vectors so they naturally go together imo 2020-09-19T02:48:44Z badkins joined #scheme 2020-09-19T02:49:30Z aeth: Zipheir: I'd say the main problem with vectors in Scheme is that basic Scheme is so recursion-heavy and people don't really agree on the correct recursive style for vectors 2020-09-19T02:50:17Z Zipheir: aeth: Because they aren't inductively-defined. vector-map, vector-unfold, etc. have iterative definitions. 2020-09-19T02:50:25Z nckx quit (Quit: Updating my Guix System — https://guix.gnu.org) 2020-09-19T02:51:08Z nckx joined #scheme 2020-09-19T02:53:14Z Zipheir: aeth: The important thing to convey about data structures, IMHO, is that assumptions about what they "are" can be misleading. What's important is to characterize the fundamental operations of a structure and to compare many possible representations. 2020-09-19T02:53:23Z Zipheir: (From a teaching perspective, of course.) 2020-09-19T02:53:39Z mdhughes: I have a specialized GridMap 2D array I use for anything like a grid-based game, screens, etc., it's all vector inside. 2020-09-19T02:53:53Z Zipheir: SICP does a nice job of this, as does Bird & Wadler's Introduction To Functional Programming. 2020-09-19T02:54:43Z badkins quit (Ping timeout: 265 seconds) 2020-09-19T03:02:07Z phillbush quit (Ping timeout: 246 seconds) 2020-09-19T03:09:49Z badkins joined #scheme 2020-09-19T03:10:45Z aeth: Zipheir: re "Introduction To Functional Programming"... I honestly forgot that a lot of this is technically FP 2020-09-19T03:11:19Z aeth: I suppose if your emphasis is entirely on FP, then even mentioning vectors is strange. At least unless jcowan has a trick up his sleeve with R7RS-large. 2020-09-19T03:12:22Z raingloom quit (Ping timeout: 260 seconds) 2020-09-19T03:13:43Z muelleme joined #scheme 2020-09-19T03:14:14Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T03:14:49Z phillbush joined #scheme 2020-09-19T03:14:51Z Zipheir: aeth: Not at all. A Scheme vector has a perfectly "functional" interpretation as a map from integers to Scheme values. 2020-09-19T03:15:23Z aeth: they're only conveniently pure functional if you heavily restrict yourself to things like map and reduce. 2020-09-19T03:18:05Z muelleme quit (Ping timeout: 240 seconds) 2020-09-19T03:18:45Z Zipheir: Well, you could implement a (vector-update vec index x) which updates `index' without mutating `vec' (Haskell provides such a thing for Array). Obviously that's not a practical way to update a vector. 2020-09-19T03:19:29Z Zipheir: But a linear update vector-update! is just a wrapper around vector-set!, and makes sense in the context of linear types. 2020-09-19T03:20:20Z Zipheir: As usual, the "pure" terminology isn't super helpful. 2020-09-19T03:21:58Z Zipheir: aeth: Also, I *highly* recommend Bird & Wadler's book. https://usi-pl.github.io/lc/sp-2015/doc/Bird_Wadler.%20Introduction%20to%20Functional%20Programming.1ed.pdf 2020-09-19T03:22:23Z Zipheir: SRFI 41 calls it "the classic text on functional programming". I tend to agree. 2020-09-19T03:25:14Z aeth: thanks for the link, I'll add it to my queue 2020-09-19T03:25:28Z aeth: no results for "monad" in it so it must not be about real functional programming, though! :-P 2020-09-19T03:38:00Z badkins joined #scheme 2020-09-19T03:41:32Z Zipheir: :-| 2020-09-19T03:42:22Z badkins quit (Ping timeout: 256 seconds) 2020-09-19T03:42:47Z nckx quit (Quit: Updating my Guix System — https://guix.gnu.org) 2020-09-19T03:43:13Z nckx joined #scheme 2020-09-19T03:44:06Z Zipheir: Well, it's obviously just a monoid on the category of endofunctors, so I'm sure you can work it out. 2020-09-19T03:44:47Z Zipheir: Actually, that books predates the Moggi and Wadler (but perhaps not Spivey's) papers on monads. 2020-09-19T03:45:09Z aeth: yes. 2020-09-19T03:45:21Z aeth: I looked that up. 2020-09-19T03:58:38Z lritter quit (Ping timeout: 272 seconds) 2020-09-19T04:03:47Z jcowan: Ranges give us immutable vectors, but I want to have persistent vectors too (other than mappings). 2020-09-19T04:04:39Z jcowan: I think Baker tuples are going to be a huge win for that purpose. 2020-09-19T04:05:08Z jcowan: aka fectors 2020-09-19T04:05:58Z jcowan: https://github.com/ijp/fectors/blob/master/LICENSE 2020-09-19T04:06:06Z jcowan: oops, https://github.com/ijp/fectors/ 2020-09-19T04:07:44Z Riastradh: is a Baker tuple a tuple that has one more component than you asked for 2020-09-19T04:08:23Z Riastradh: the name `fector' is gonna be awfully confusing in verbal conversation for the Old English speakers 2020-09-19T04:15:39Z schemer joined #scheme 2020-09-19T04:17:03Z schemer quit (Remote host closed the connection) 2020-09-19T04:50:36Z gravicappa joined #scheme 2020-09-19T04:57:37Z brown121407 quit (Quit: ZNC 1.8.2 - https://znc.in) 2020-09-19T04:57:54Z brown121407 joined #scheme 2020-09-19T05:01:14Z arew: appropriate time greetings :) 2020-09-19T05:03:49Z aeth: time is a side effect and thus is off topic in a functional discussion 2020-09-19T05:04:17Z aeth: (unless you want to copy the entire universe every unit of Planck time) 2020-09-19T05:21:14Z Zipheir: SICP argues that the stateful/stateless dichotomy in our views of the universe is probably illusory, anyway. 2020-09-19T05:33:03Z Aurora_v_kosmose quit (Ping timeout: 240 seconds) 2020-09-19T05:33:42Z siraben: Zipheir: the new view of the universe is effect handlers! 2020-09-19T05:34:51Z Aurora_v_kosmose joined #scheme 2020-09-19T05:38:55Z badkins joined #scheme 2020-09-19T05:43:46Z badkins quit (Ping timeout: 272 seconds) 2020-09-19T05:45:07Z edgar-rft quit (Quit: Leaving) 2020-09-19T05:45:47Z Zipheir: Verily, if you're among the handful of people who've read the Felleisen-Cartwright paper or Oleg's related stuff. 2020-09-19T06:03:22Z Fare quit (Ping timeout: 260 seconds) 2020-09-19T06:19:57Z phillbush quit (Remote host closed the connection) 2020-09-19T06:32:00Z brendyyn joined #scheme 2020-09-19T07:00:02Z brown121407 quit (Quit: ZNC 1.8.2 - https://znc.in) 2020-09-19T07:00:22Z brown121407 joined #scheme 2020-09-19T07:06:44Z rgherdt joined #scheme 2020-09-19T07:13:26Z sdu joined #scheme 2020-09-19T07:14:08Z ManDay joined #scheme 2020-09-19T07:14:14Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-19T07:39:50Z badkins joined #scheme 2020-09-19T07:42:17Z supercoven joined #scheme 2020-09-19T07:42:19Z supercoven quit (Max SendQ exceeded) 2020-09-19T07:42:32Z supercoven joined #scheme 2020-09-19T07:44:18Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T07:48:27Z supercoven quit (Max SendQ exceeded) 2020-09-19T07:48:41Z supercoven joined #scheme 2020-09-19T07:57:43Z brendyyn joined #scheme 2020-09-19T08:03:03Z cantstanya quit (Remote host closed the connection) 2020-09-19T08:04:17Z cantstanya joined #scheme 2020-09-19T08:09:18Z hendursa1 joined #scheme 2020-09-19T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-19T08:53:08Z daviid quit (Ping timeout: 260 seconds) 2020-09-19T08:54:31Z wasamasa left #scheme 2020-09-19T08:56:10Z wasamasa joined #scheme 2020-09-19T09:09:59Z Blukunfando quit (Ping timeout: 246 seconds) 2020-09-19T09:12:43Z wasamasa left #scheme 2020-09-19T09:14:30Z wasamasa joined #scheme 2020-09-19T09:25:43Z Aurora_v_kosmose quit (Ping timeout: 240 seconds) 2020-09-19T09:36:26Z Aurora_v_kosmose joined #scheme 2020-09-19T09:40:46Z badkins joined #scheme 2020-09-19T09:45:42Z badkins quit (Ping timeout: 272 seconds) 2020-09-19T10:44:16Z nckx quit (Quit: Updating my Guix System — https://guix.gnu.org) 2020-09-19T10:44:41Z nckx joined #scheme 2020-09-19T11:18:08Z muelleme joined #scheme 2020-09-19T11:26:16Z phillbush joined #scheme 2020-09-19T11:35:51Z Tirifto joined #scheme 2020-09-19T11:41:36Z badkins joined #scheme 2020-09-19T11:42:47Z phillbush quit (Remote host closed the connection) 2020-09-19T11:46:23Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T11:52:03Z phillbush joined #scheme 2020-09-19T11:55:34Z raingloom joined #scheme 2020-09-19T11:56:06Z ggole joined #scheme 2020-09-19T12:06:53Z brendyyn quit (Quit: WeeChat 2.9) 2020-09-19T12:07:06Z muelleme quit (Ping timeout: 256 seconds) 2020-09-19T12:48:46Z ManDay quit (Quit: WeeChat 2.9) 2020-09-19T12:55:23Z Aurora_v_kosmose quit (Ping timeout: 240 seconds) 2020-09-19T12:59:39Z Aurora_v_kosmose joined #scheme 2020-09-19T13:00:03Z hendursa1 quit (Quit: hendursa1) 2020-09-19T13:00:21Z hendursaga joined #scheme 2020-09-19T13:00:54Z srandon111 joined #scheme 2020-09-19T13:07:13Z langmartin quit (Remote host closed the connection) 2020-09-19T13:07:56Z langmartin joined #scheme 2020-09-19T13:24:09Z langmartin quit (Ping timeout: 260 seconds) 2020-09-19T13:42:36Z badkins joined #scheme 2020-09-19T13:47:20Z badkins quit (Ping timeout: 256 seconds) 2020-09-19T13:48:48Z langmartin joined #scheme 2020-09-19T13:53:48Z langmartin quit (Ping timeout: 256 seconds) 2020-09-19T14:01:24Z badkins joined #scheme 2020-09-19T14:02:09Z civodul joined #scheme 2020-09-19T14:12:59Z jcowan: aeth: If you copied the universe, where would you put the copy? 2020-09-19T14:16:51Z jcowan: Riastradh: I agree that the name fector isn't great. 2020-09-19T14:29:09Z hugh_marera joined #scheme 2020-09-19T14:29:51Z mdhughes: You could make a patch structure. So there'd be an initial state, and every update would append changes to the state. So you'd have to search latest-oldest to know any value, but updates would be fast. 2020-09-19T14:31:10Z mdhughes: That's basically what MPEG does for streaming video. 2020-09-19T14:35:30Z badkins quit (Remote host closed the connection) 2020-09-19T14:38:08Z jcowan: Fectors sort of work that way. There's a vector which contains one particular state. When you access it from another state object, the vector is fixed up to represent the new state. So as long as you mostly access it from the same state, everything is O(1). 2020-09-19T14:38:24Z jcowan: The states form an implicit tree. 2020-09-19T14:39:44Z Fare joined #scheme 2020-09-19T14:47:41Z Tirifto quit (Ping timeout: 260 seconds) 2020-09-19T15:00:40Z hugh_marera quit (Ping timeout: 246 seconds) 2020-09-19T15:19:34Z Riastradh: feckless nomenclature 2020-09-19T15:25:07Z badkins joined #scheme 2020-09-19T15:25:47Z Zipheir: Does one also speak of subfectors? Is the zero-length case a defector? 2020-09-19T15:41:29Z Fare quit (Ping timeout: 244 seconds) 2020-09-19T15:44:49Z ManDay joined #scheme 2020-09-19T15:54:40Z abralek[m] joined #scheme 2020-09-19T16:26:12Z raingloom_ joined #scheme 2020-09-19T16:26:37Z raingloom quit (Ping timeout: 264 seconds) 2020-09-19T16:31:26Z muelleme joined #scheme 2020-09-19T16:42:49Z muelleme quit (Ping timeout: 264 seconds) 2020-09-19T16:42:57Z Tirifto joined #scheme 2020-09-19T16:43:09Z Fare joined #scheme 2020-09-19T16:52:18Z badkins quit (Remote host closed the connection) 2020-09-19T16:52:49Z badkins joined #scheme 2020-09-19T16:55:20Z teardown quit (Ping timeout: 258 seconds) 2020-09-19T16:57:54Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T16:58:54Z aeth quit (Ping timeout: 272 seconds) 2020-09-19T16:59:19Z jcowan: One could adopt the Python convention and speak of tuples, since Scheme vectors are not extensible. 2020-09-19T16:59:58Z jcowan: Is "defector" short for "degenerate fector"? 2020-09-19T17:00:27Z aeth joined #scheme 2020-09-19T17:07:54Z ManDay: slow day? 2020-09-19T17:10:29Z badkins joined #scheme 2020-09-19T17:11:45Z arew: rudybot: what is a fast day? 2020-09-19T17:11:51Z rudybot: arew: G'day all. I'm a mu4e user, and I'm not sure what changed but the minibuffer status message "Found N messages" that it displays after making a query now flashes too fast for me to read it without going to the Messages buffer. Does anyone know of a way to slow this down? 2020-09-19T17:12:10Z arew: rudybot: you are off-topic 2020-09-19T17:12:15Z rudybot: arew: ideally the policy is more like what wgreenhouse just said, and not like these are the official positions and if you violate them then you are off topic, as there are topics in which the relative dominance of the points of view are reversed. thus, here, we can just say look, this is making people uncomfortable. 2020-09-19T17:13:38Z Zipheir: jcowan: Presumably. 2020-09-19T17:20:19Z badkins quit (Ping timeout: 246 seconds) 2020-09-19T17:28:10Z teardown joined #scheme 2020-09-19T17:36:48Z gravicappa quit (Ping timeout: 265 seconds) 2020-09-19T17:38:18Z gravicappa joined #scheme 2020-09-19T17:44:16Z lritter joined #scheme 2020-09-19T18:04:29Z Khisanth quit (Read error: Connection reset by peer) 2020-09-19T18:15:24Z edgar-rft joined #scheme 2020-09-19T18:20:27Z Fare quit (Ping timeout: 260 seconds) 2020-09-19T18:21:55Z Khisanth joined #scheme 2020-09-19T18:26:03Z Fare joined #scheme 2020-09-19T18:35:03Z ManDay quit (Quit: WeeChat 2.9) 2020-09-19T18:37:31Z edgar-rft quit (Quit: Leaving) 2020-09-19T18:51:38Z Fare quit (Ping timeout: 260 seconds) 2020-09-19T18:55:34Z supercoven quit (Read error: Connection reset by peer) 2020-09-19T19:06:35Z muelleme joined #scheme 2020-09-19T19:32:40Z badkins joined #scheme 2020-09-19T19:36:33Z klovett quit (Ping timeout: 260 seconds) 2020-09-19T19:39:28Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T19:47:39Z badkins joined #scheme 2020-09-19T19:47:46Z muelleme quit (Ping timeout: 260 seconds) 2020-09-19T19:52:16Z badkins quit (Ping timeout: 256 seconds) 2020-09-19T19:53:48Z aeth_ joined #scheme 2020-09-19T19:53:52Z aeth quit (Disconnected by services) 2020-09-19T19:53:57Z aeth_ is now known as aeth 2020-09-19T20:11:12Z X-Scale` joined #scheme 2020-09-19T20:12:43Z X-Scale quit (Ping timeout: 260 seconds) 2020-09-19T20:12:44Z X-Scale` is now known as X-Scale 2020-09-19T20:33:45Z badkins joined #scheme 2020-09-19T20:42:21Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T20:42:28Z aeth quit (Ping timeout: 272 seconds) 2020-09-19T20:43:59Z aeth joined #scheme 2020-09-19T20:47:59Z badkins joined #scheme 2020-09-19T20:48:28Z klovett joined #scheme 2020-09-19T20:52:58Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T20:54:17Z ggole quit (Quit: Leaving) 2020-09-19T20:54:20Z lambda-11235 joined #scheme 2020-09-19T20:56:20Z badkins joined #scheme 2020-09-19T20:57:20Z DKordic joined #scheme 2020-09-19T21:03:44Z badkins quit (Ping timeout: 258 seconds) 2020-09-19T21:03:45Z lritter quit (Ping timeout: 240 seconds) 2020-09-19T21:04:41Z lritter joined #scheme 2020-09-19T21:11:24Z tessier quit (Ping timeout: 265 seconds) 2020-09-19T21:11:41Z tessier joined #scheme 2020-09-19T21:12:06Z badkins joined #scheme 2020-09-19T21:15:43Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-19T21:16:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-19T21:26:41Z sp1ff quit (Ping timeout: 260 seconds) 2020-09-19T21:33:04Z phillbush quit (Quit: Leaving) 2020-09-19T21:40:08Z badkins joined #scheme 2020-09-19T21:46:26Z badkins quit (Ping timeout: 272 seconds) 2020-09-19T21:51:31Z daviid joined #scheme 2020-09-19T21:57:30Z rgherdt quit (Ping timeout: 260 seconds) 2020-09-19T22:14:46Z badkins joined #scheme 2020-09-19T22:19:13Z badkins quit (Ping timeout: 246 seconds) 2020-09-19T22:20:02Z aeth quit (Ping timeout: 265 seconds) 2020-09-19T22:21:44Z aeth joined #scheme 2020-09-19T22:29:56Z phillbush joined #scheme 2020-09-19T22:46:09Z badkins joined #scheme 2020-09-19T22:47:43Z cantstanya quit (Ping timeout: 240 seconds) 2020-09-19T22:48:59Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-19T22:50:18Z sp1ff joined #scheme 2020-09-19T22:50:29Z cantstanya joined #scheme 2020-09-19T22:52:34Z badkins quit (Ping timeout: 260 seconds) 2020-09-19T22:54:01Z koorosh left #scheme 2020-09-19T22:55:22Z DGASAU quit (Ping timeout: 260 seconds) 2020-09-19T23:26:48Z phillbush quit (Remote host closed the connection) 2020-09-19T23:32:31Z Fare joined #scheme 2020-09-19T23:53:35Z badkins joined #scheme 2020-09-19T23:58:25Z badkins quit (Ping timeout: 264 seconds) 2020-09-20T00:07:54Z aeth quit (Ping timeout: 256 seconds) 2020-09-20T00:09:42Z aeth joined #scheme 2020-09-20T00:13:02Z Fare quit (Ping timeout: 260 seconds) 2020-09-20T00:26:43Z cantstanya quit (Ping timeout: 240 seconds) 2020-09-20T00:29:40Z cantstanya joined #scheme 2020-09-20T00:36:10Z aeth quit (Ping timeout: 272 seconds) 2020-09-20T00:37:20Z aeth joined #scheme 2020-09-20T00:48:26Z cantstanya quit (Remote host closed the connection) 2020-09-20T00:49:25Z cantstanya joined #scheme 2020-09-20T01:03:07Z marusich joined #scheme 2020-09-20T01:30:39Z Tirifto quit (Quit: Leaving.) 2020-09-20T01:42:42Z Fare joined #scheme 2020-09-20T01:54:40Z rickbutton quit (Read error: Connection reset by peer) 2020-09-20T01:55:05Z gf3_ quit (Read error: Connection reset by peer) 2020-09-20T01:55:08Z rickbutton joined #scheme 2020-09-20T01:55:42Z Fare quit (Ping timeout: 260 seconds) 2020-09-20T01:55:54Z gf3_ joined #scheme 2020-09-20T01:57:30Z badkins joined #scheme 2020-09-20T02:03:20Z montxero joined #scheme 2020-09-20T02:05:38Z badkins quit (Ping timeout: 260 seconds) 2020-09-20T02:44:25Z raingloom_ quit (Ping timeout: 265 seconds) 2020-09-20T02:51:07Z ex_nihilo joined #scheme 2020-09-20T03:13:52Z marusich quit (Ping timeout: 260 seconds) 2020-09-20T03:17:04Z edgar-rft joined #scheme 2020-09-20T03:17:20Z lritter quit (Ping timeout: 256 seconds) 2020-09-20T03:21:25Z badkins joined #scheme 2020-09-20T03:26:29Z badkins quit (Ping timeout: 260 seconds) 2020-09-20T03:55:02Z marusich joined #scheme 2020-09-20T04:09:05Z klovett quit (Remote host closed the connection) 2020-09-20T04:09:41Z klovett joined #scheme 2020-09-20T04:22:07Z marusich quit (Ping timeout: 260 seconds) 2020-09-20T04:28:00Z klovett quit (Remote host closed the connection) 2020-09-20T04:28:15Z klovett joined #scheme 2020-09-20T04:29:10Z klovett quit (Remote host closed the connection) 2020-09-20T04:29:34Z klovett joined #scheme 2020-09-20T04:36:23Z marusich joined #scheme 2020-09-20T05:08:57Z gravicappa joined #scheme 2020-09-20T05:23:01Z badkins joined #scheme 2020-09-20T05:27:28Z badkins quit (Ping timeout: 260 seconds) 2020-09-20T05:47:07Z nalaginrut quit (Ping timeout: 265 seconds) 2020-09-20T05:49:39Z pukkamustard[m] joined #scheme 2020-09-20T06:00:01Z nalaginrut joined #scheme 2020-09-20T06:01:57Z notzmv` joined #scheme 2020-09-20T06:04:49Z notzmv quit (Disconnected by services) 2020-09-20T06:04:55Z notzmv` is now known as notzmv 2020-09-20T06:05:00Z notzmv quit (Changing host) 2020-09-20T06:05:00Z notzmv joined #scheme 2020-09-20T06:23:58Z ggole joined #scheme 2020-09-20T06:31:17Z Fare joined #scheme 2020-09-20T06:31:43Z retropikzel joined #scheme 2020-09-20T06:32:55Z ZombieChicken joined #scheme 2020-09-20T06:36:18Z Fare quit (Ping timeout: 260 seconds) 2020-09-20T06:39:23Z retropikzel quit (Read error: Connection reset by peer) 2020-09-20T06:49:31Z rgherdt joined #scheme 2020-09-20T07:14:32Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-20T07:48:19Z lambda-11235 quit (Quit: Bye) 2020-09-20T08:09:55Z hendursa1 joined #scheme 2020-09-20T08:11:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-20T08:13:07Z edgar-rft quit (Quit: Leaving) 2020-09-20T08:23:48Z supercoven joined #scheme 2020-09-20T08:28:09Z lockywolf: browsers do a very poor job at spellchecking 2020-09-20T08:30:03Z supercoven quit (Max SendQ exceeded) 2020-09-20T08:30:16Z supercoven joined #scheme 2020-09-20T08:36:15Z supercoven quit (Max SendQ exceeded) 2020-09-20T08:36:33Z supercoven joined #scheme 2020-09-20T08:39:32Z kori quit (Quit: WeeChat 2.8) 2020-09-20T08:45:33Z kori joined #scheme 2020-09-20T09:00:18Z daviid quit (Ping timeout: 272 seconds) 2020-09-20T09:17:31Z phillbush joined #scheme 2020-09-20T09:24:38Z badkins joined #scheme 2020-09-20T09:29:37Z badkins quit (Ping timeout: 264 seconds) 2020-09-20T09:30:30Z montxero quit (Ping timeout: 260 seconds) 2020-09-20T09:31:23Z Aurora_v_kosmose quit (Ping timeout: 240 seconds) 2020-09-20T09:33:31Z Aurora_v_kosmose joined #scheme 2020-09-20T09:35:11Z ManDay joined #scheme 2020-09-20T10:01:17Z raingloom joined #scheme 2020-09-20T10:11:09Z hugh_marera joined #scheme 2020-09-20T10:21:35Z terpri_ is now known as terpri 2020-09-20T10:24:20Z ManDay quit (Quit: WeeChat 2.9) 2020-09-20T11:03:51Z srandon111 quit (Quit: leaving) 2020-09-20T11:25:36Z badkins joined #scheme 2020-09-20T11:30:24Z badkins quit (Ping timeout: 272 seconds) 2020-09-20T11:38:29Z deesix_ joined #scheme 2020-09-20T11:40:25Z deesix quit (Ping timeout: 264 seconds) 2020-09-20T11:53:57Z marusich quit (Quit: Leaving) 2020-09-20T11:54:52Z deesix_ is now known as deesix 2020-09-20T12:05:00Z rich_ quit (Quit: Connection closed for inactivity) 2020-09-20T12:15:33Z badkins joined #scheme 2020-09-20T12:22:42Z Tirifto joined #scheme 2020-09-20T12:24:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-20T12:45:39Z gravicappa joined #scheme 2020-09-20T12:46:26Z hugh_marera quit (Quit: hugh_marera) 2020-09-20T12:52:56Z badkins joined #scheme 2020-09-20T12:58:31Z badkins quit (Remote host closed the connection) 2020-09-20T12:59:32Z badkins joined #scheme 2020-09-20T13:03:38Z civodul joined #scheme 2020-09-20T13:04:01Z laxask quit (Ping timeout: 246 seconds) 2020-09-20T13:04:41Z badkins quit (Ping timeout: 260 seconds) 2020-09-20T13:11:08Z laxask joined #scheme 2020-09-20T13:30:18Z badkins joined #scheme 2020-09-20T13:34:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-20T13:53:37Z mirrorbird joined #scheme 2020-09-20T14:04:52Z user51 joined #scheme 2020-09-20T14:10:10Z ex_nihilo quit (Quit: Leaving) 2020-09-20T14:13:24Z laxask is now known as sudden 2020-09-20T14:16:13Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-20T14:18:02Z klovett quit (Remote host closed the connection) 2020-09-20T14:18:57Z klovett joined #scheme 2020-09-20T14:27:59Z klovett quit (Remote host closed the connection) 2020-09-20T14:28:18Z klovett joined #scheme 2020-09-20T14:49:23Z badkins joined #scheme 2020-09-20T14:50:27Z srandon111 joined #scheme 2020-09-20T14:53:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-20T15:36:47Z rgherdt joined #scheme 2020-09-20T15:52:19Z edgar-rft joined #scheme 2020-09-20T15:57:13Z phillbush quit (Quit: Leaving) 2020-09-20T15:58:01Z badkins joined #scheme 2020-09-20T15:58:57Z phillbush joined #scheme 2020-09-20T16:24:23Z terpri_ joined #scheme 2020-09-20T16:25:01Z terpri quit (Ping timeout: 244 seconds) 2020-09-20T16:29:15Z TheInformaticist joined #scheme 2020-09-20T16:29:41Z TheInformaticist: Hello. 2020-09-20T16:30:14Z TheInformaticist: I'm new here. 2020-09-20T16:30:16Z arew: hello! 2020-09-20T16:30:21Z arew: welcome :) 2020-09-20T16:30:32Z TheInformaticist: Thanks. 2020-09-20T16:31:11Z arew: the channel might be quiet at the moment.. 2020-09-20T16:31:13Z TheInformaticist: I'm taking a C++ course, but it's so terribly boring that I decided to teach myself Scheme. 2020-09-20T16:31:13Z wasamasa: hello new here 2020-09-20T16:31:25Z arew: TheInformaticist: good! 2020-09-20T16:31:28Z edgar-rft quit (Remote host closed the connection) 2020-09-20T16:32:02Z mirrorbird: TheInformaticist, you will go far in this world! 2020-09-20T16:32:15Z arew: TheInformaticist: C++ is... imo... very technical... much concepts... looks like the equivalent of biology in programming, where you need to remember by hearth tons of ideas, vocabulary just to be able to get started 2020-09-20T16:32:20Z mirrorbird: TheInformaticist, which implementation of scheme? Racket? 2020-09-20T16:32:20Z TheInformaticist: wasamasa: You inspired me to take the plunge. Even if I don't understand redirection and hyperlinks. 2020-09-20T16:32:28Z wasamasa: oh boy 2020-09-20T16:32:38Z mirrorbird: you are friends? 2020-09-20T16:32:44Z wasamasa: #emacs 2020-09-20T16:32:54Z mirrorbird: hm 2020-09-20T16:33:23Z mirrorbird: i used to use emacs, now i forgot the keybinds :/ so i just use drracket for my coding. i have a *vague* memory that Emacs was f****** amazing for scheme 2020-09-20T16:33:27Z mirrorbird: i can't remember exactly what made it amazing though 2020-09-20T16:33:30Z TheInformaticist: wasamasa: Are you British or European or something? 2020-09-20T16:33:44Z arew: (and much of c++ technicality is not necessary, at least with scheme) 2020-09-20T16:33:48Z mirrorbird: British or European. mutually exclusive since brexit :D 2020-09-20T16:33:52Z wasamasa: lol 2020-09-20T16:34:01Z mirrorbird: i am writing my own scheme interpreter right now, finally. 7 yrs after buying SICP 2020-09-20T16:34:03Z wasamasa: yes, I'm living in the EU 2020-09-20T16:34:09Z TheInformaticist: mirrorbird: SCM 2020-09-20T16:34:22Z mirrorbird: don't know it. but cool 2020-09-20T16:34:36Z user51: i'm also new to scheme. but i couldn't really enjoy sicp, so i'm reading the scheme programming language 2020-09-20T16:34:37Z wasamasa: why SCM? isn't that like, old 2020-09-20T16:34:46Z mirrorbird: last release 7 mts ago apparently 2020-09-20T16:34:46Z dTal: mirrorbird: technically not, you can be eg dual citizen UK and Ireland 2020-09-20T16:34:49Z mirrorbird: it seems small/ less used 2020-09-20T16:34:53Z mirrorbird: dTal, was a joke 2020-09-20T16:35:05Z arew: user51: welcome 2020-09-20T16:35:10Z mirrorbird: he asked British *or* European 2020-09-20T16:35:14Z TheInformaticist: wasamasa: I'm like, old. 2020-09-20T16:35:17Z user51: arew: thanks 2020-09-20T16:35:23Z mirrorbird: the first implies the other 2020-09-20T16:35:43Z mirrorbird: what the hell is my neighbour doing... 2020-09-20T16:36:01Z wasamasa: ah yes, dual citizenship 2020-09-20T16:36:08Z wasamasa: that makes me eastern-european as well 2020-09-20T16:36:13Z arew: user51: I will be glad if you can give me feedback on my scheme crash course: https://github.com/arew-scheme/book/blob/master/manuscript/tutorial.md 2020-09-20T16:36:27Z mirrorbird: user51, if you are just learning scheme and already know how to code, you don't need sicp i guess. SICP, afaik, was meant to teach coding to beginners 2020-09-20T16:36:38Z wasamasa: TheInformaticist: so you'll be writing vanilla r5rs and use slib whenever that's insufficient, great 2020-09-20T16:36:44Z arew: +1 mirrorbird 2020-09-20T16:36:47Z edgar-rft joined #scheme 2020-09-20T16:36:55Z user51: are there any scheme programs that could be useful reading exercises to a beginner? 2020-09-20T16:37:00Z TheInfor` joined #scheme 2020-09-20T16:37:07Z TheInformaticist quit (Read error: Connection reset by peer) 2020-09-20T16:37:11Z TheInfor`: wasamasa: I'm using the book Simply Scheme, and he has a function library included. I had trouble with it in Guile, but seemed to work in SCM just fine. 2020-09-20T16:37:13Z mirrorbird: and SICP is... a bit hardcore? 2020-09-20T16:37:27Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-20T16:37:42Z arew: user51: what is your subject of choice? 2020-09-20T16:37:51Z user51: arew: i wouldn't mind at all, but i'm not really new to programming. so i kinda did a breadth-first search of sicp, picked up a few scheme concepts, played a bit wit mit-scheme, now using racket 2020-09-20T16:37:55Z arew: user51: web, video, audi, etc.. 2020-09-20T16:38:01Z abralek[m] joined #scheme 2020-09-20T16:38:19Z mirrorbird: code an autopilot for Audi in chicken scheme pls 2020-09-20T16:38:30Z wasamasa: lol 2020-09-20T16:38:32Z user51: currently? i'm currently learning 2020-09-20T16:38:51Z user51: but i think a decent first project would be translating my 8080 emulator in c to scheme 2020-09-20T16:38:52Z arew: user51: look into https://github.com/arew-scheme/arew-scheme/blob/main/src/ccse.scm 2020-09-20T16:39:12Z wasamasa: I doubt an emulator makes terribly much sense in scheme, but go for it 2020-09-20T16:39:19Z arew: user51: there is an explanation how it works at: https://hyper.dev/blog/ccse.html 2020-09-20T16:39:40Z wasamasa: I did one in elisp :> 2020-09-20T16:39:51Z arew: why I am not suprised... 2020-09-20T16:39:55Z user51: eh, emulators are kinda fun. 2020-09-20T16:40:08Z wasamasa: the most valuable thing from it is an enum macro 2020-09-20T16:40:32Z mirrorbird: you actually use elisp (Emacs Lisp) for standalone programs? 2020-09-20T16:40:36Z mirrorbird: how do you run it, with emacs? 2020-09-20T16:40:40Z arew: user51: here is an emulator for x86: https://github.com/weinholt/zabavno 2020-09-20T16:40:43Z wasamasa: mirrorbird: sure 2020-09-20T16:40:51Z mirrorbird: i use vi vi vi 2020-09-20T16:41:09Z wasamasa: I start emacs, load the .elc file, some extra code to boot up the emulator at proper text scaling and off it goes 2020-09-20T16:42:34Z wasamasa: actually, that gives me an idea 2020-09-20T16:42:35Z rain1: wow thats impressive 2020-09-20T16:42:59Z mirrorbird: will i drive myself mad trying to use vim and emacs at the same time? 2020-09-20T16:43:01Z wasamasa: I could run it in batch mode and emit ANSI escapes to print out lines and redraw the screen 2020-09-20T16:43:20Z wasamasa: but I doubt it's faster than running it in graphical/textual mode 2020-09-20T16:44:46Z user51: arew: i can read it, but i can't understand it yet :) 2020-09-20T16:45:01Z wasamasa: I already have a name at hand in case I want to challenge zabavno in elisp :D 2020-09-20T16:45:23Z TheInfor`: wasamasa: How's that Emacs Mario game coming? 2020-09-20T16:45:37Z wasamasa: writing actual games is not fun 2020-09-20T16:45:49Z wasamasa: and the NES emulator someone else wrote is unusably slow 2020-09-20T16:45:56Z wasamasa: text-mode DOS might just work 2020-09-20T16:46:27Z arew: user51: feel free to ask questions 2020-09-20T16:49:52Z user51: i believe the book i'm reading is r6rs scheme, yours covers r7rs, are there any notable differences for a beginner? 2020-09-20T16:49:56Z wasamasa: many 2020-09-20T16:51:29Z mirrorbird: there's a 7 instead of a 6 2020-09-20T16:53:40Z arew: :) 2020-09-20T16:54:21Z TheInfor`: user51: It can't be worse than the ANSI standard for FORTRAN 77. Trying to read that will cause severe mental health issues. 2020-09-20T16:54:49Z arew: user51: the condition system is gone and records are much simpler. 2020-09-20T16:54:59Z arew: condition system == "exception framework" 2020-09-20T16:55:03Z edgar-rft quit (Remote host closed the connection) 2020-09-20T16:56:15Z mirrorbird: i wonder what kind of disease Wix's Corvid language causes 2020-09-20T16:56:17Z user51: i don't know what any of those mean. i'm currently reading about syntactic extension. 2020-09-20T16:57:07Z wasamasa: the differences are mostly an absence of features 2020-09-20T16:57:19Z TheInfor`: Extension in the Aristotelian sense? 2020-09-20T16:57:29Z wasamasa: no syntax-case, no enum library, ... 2020-09-20T17:00:41Z arew: TIL wix has its own language 2020-09-20T17:00:53Z arew: reminds me of salesforce. 2020-09-20T17:06:43Z lritter joined #scheme 2020-09-20T17:08:09Z notzmv` joined #scheme 2020-09-20T17:08:50Z mirrorbird: yeah it's a bit evil and shit 2020-09-20T17:09:02Z mirrorbird: locks users in there. i have a client now, where i had to rewrite their entire site (a web game) 2020-09-20T17:09:17Z mirrorbird: i sure as shit won't learn corvid, even if it's very simple (don't know if it is) 2020-09-20T17:09:20Z mirrorbird: some web DSL crap 2020-09-20T17:11:18Z notzmv quit (Ping timeout: 256 seconds) 2020-09-20T17:16:39Z edgar-rft joined #scheme 2020-09-20T17:20:12Z daviid joined #scheme 2020-09-20T17:26:50Z badkins quit (Remote host closed the connection) 2020-09-20T17:27:26Z badkins joined #scheme 2020-09-20T17:28:36Z arew: you do not understand: it support serverless (tm) 2020-09-20T17:28:42Z arew: :troll-face: 2020-09-20T17:30:56Z mirrorbird: serverless? i think it's client only :P 2020-09-20T17:30:56Z TheInfor` quit (Read error: Connection reset by peer) 2020-09-20T17:31:00Z user51: nice. although now i'm curious when is defining new syntax worth it. 2020-09-20T17:31:10Z user51: my first instinct is if it makes the code clearer. 2020-09-20T17:31:32Z TheInfor` joined #scheme 2020-09-20T17:32:34Z badkins quit (Ping timeout: 260 seconds) 2020-09-20T17:33:18Z supercoven quit (Ping timeout: 272 seconds) 2020-09-20T17:37:37Z arew: not necessarly, if it increase the number of concepts required to understand the program... I mean scheme is tooted for macros and the ability to create DSL because it is very easy, not because schemers do that all-the-time. 2020-09-20T17:39:12Z arew: I wrote one or two macro last year, possibly ten since 5 years I practice scheme. As those stats might suggest, I am not into macros... things like nanoapass compiler framework are entirely made of macros. 2020-09-20T17:40:00Z arew: I mention macro because you mentioned syntax, I might have missed the point. 2020-09-20T17:40:49Z hendursa1 quit (Quit: hendursa1) 2020-09-20T17:41:08Z hendursaga joined #scheme 2020-09-20T17:44:32Z arew: The only macro I can recall from r7rs small is define-record-type. 2020-09-20T17:45:25Z arew: user51: are you familiar with threading macro noted => or the macro called compose? 2020-09-20T17:46:35Z arew: Anyway, I think macros are good fit when they speed up runtime and ease readability (and possibly provide compile time checks) 2020-09-20T17:48:23Z user51: no. what i'm doing is getting familiar with define-syntax by definint something similar to enum in c 2020-09-20T17:49:37Z arew: user51: then you might be interested in https://srfi.schemers.org/srfi-209/ 2020-09-20T17:49:54Z arew: it is a work-in-progress specification and sample implementation for something called: enum. 2020-09-20T17:50:19Z user51: http://0x0.st/ilub.scm 2020-09-20T17:50:45Z user51: ignore the first two options. i just did that in order to get a feel. 2020-09-20T17:50:52Z wasamasa: enums won't work with define-syntax thanks to hygiene 2020-09-20T17:51:12Z wasamasa: you can't conjure new identifiers out of thin air with it 2020-09-20T17:51:39Z wasamasa: for example define-record-type requires that you pass in all identifiers you wish it to define for you 2020-09-20T17:53:44Z user51: huh, that SRFI is a lot more than i expected. but what i intended the result to be would be just a bunch of defines. one define per variable works too. 2020-09-20T17:54:29Z wasamasa: actually, maybe you could pass those identifiers 2020-09-20T17:54:41Z wasamasa: the reason I created new ones in elisp is lack of namespacing prefixes otherwise 2020-09-20T17:57:19Z wasamasa: but even then it's going to be tricky to implement something like setting each specified variable to an increasing integer value using syntax-rules 2020-09-20T17:58:03Z Riastradh: not really 2020-09-20T17:58:10Z Riastradh: (+ 1 (+ 1 (+ 1 0))) 2020-09-20T18:00:04Z user51: there's also other cases, such as seting it into an existing variable, or using a hexadecimal or octal number. maybe i should get a bit more scheme experience. 2020-09-20T18:00:19Z wasamasa: it won't hurt 2020-09-20T18:01:06Z Zipheir: arew: Feel free to test the SRFI 209 sample implementation and send feedback. :) 2020-09-20T18:05:24Z badkins joined #scheme 2020-09-20T18:11:49Z Fare joined #scheme 2020-09-20T18:14:11Z raingloom_ joined #scheme 2020-09-20T18:14:37Z raingloom quit (Ping timeout: 264 seconds) 2020-09-20T18:15:00Z TheInfor` left #scheme 2020-09-20T18:17:38Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-20T18:17:58Z gravicappa joined #scheme 2020-09-20T18:19:01Z tristero joined #scheme 2020-09-20T18:22:16Z arew: Zipheir: how would one translate say an integer that is several enum ordinal that are OR'ed into an enum-set? 2020-09-20T18:22:37Z arew: that is something that happens a lot when interacting with POSIX 2020-09-20T18:23:46Z arew: the inverse operation that is "I have an enum-set convert to an integer that equal to the OR'ed ordinals can use `enum-set-fold` 2020-09-20T18:25:25Z arew: re previous question (define flags (logior 1 2 4 8)), I look for that procedure that translate `FLAGS` into an enum-set, I can not even come up with a good name for it. 2020-09-20T18:25:43Z arew: maybe enum-set-unfold? 2020-09-20T18:30:03Z marusich joined #scheme 2020-09-20T18:32:59Z arew: I will hit the mailing list. 2020-09-20T18:44:13Z wasamasa: http://ix.io/2ye8 2020-09-20T18:44:14Z wasamasa: user51: ^ 2020-09-20T18:44:26Z wasamasa: user51: is that what you tried to write? 2020-09-20T18:45:00Z raingloom_ is now known as raingloom 2020-09-20T18:45:13Z Zipheir: arew: I think I sort of understand what you're saying. 2020-09-20T18:45:55Z badkins quit (Remote host closed the connection) 2020-09-20T18:46:13Z Zipheir: arew: "Can we map the logical-or, say, of the ordinals (considered as unsigned integer) of several enums to another enum?" 2020-09-20T18:46:35Z badkins joined #scheme 2020-09-20T18:49:07Z Zipheir: arew: And you are also talking about mapping (bitwise-ior 1 2 4 8) to an enum-set of enums with with those ordinals? That strike me as very difficult to do. 2020-09-20T18:50:53Z Zipheir: Though it might be possible if we allowed gaps in the enum ordinals. 2020-09-20T18:51:50Z badkins quit (Ping timeout: 272 seconds) 2020-09-20T18:55:38Z Zipheir: arew: Yeah, that's easy with enum-set-unfold, which I'm noticing the SRFI doesn't have yet. 2020-09-20T18:56:28Z Zipheir: arew: The awkward thing, again, is defining an enum type with only power-of-two ordinals. 2020-09-20T18:57:28Z arew: Zipheir: that is it an enum-type with power of two ordinals :) 2020-09-20T18:57:37Z arew: john just replied to the ml saying it is too specialized. 2020-09-20T18:59:13Z badkins joined #scheme 2020-09-20T19:03:33Z badkins quit (Ping timeout: 258 seconds) 2020-09-20T19:06:31Z arew: it seems like github is buggy. I added "help wanted" issues to my project but they do not show up on the following search: 2020-09-20T19:06:34Z arew: https://github.com/search?q=%22label%3A%22help+wanted%22+language%3AScheme+state%3Aopen&type=Issues 2020-09-20T19:07:30Z badkins joined #scheme 2020-09-20T19:08:28Z arew dreaming again of a program that does C header -> specific scheme ffi 2020-09-20T19:09:08Z srandon111 quit (Quit: leaving) 2020-09-20T19:13:16Z notzmv`` joined #scheme 2020-09-20T19:13:20Z user51: wasamasa: yeah 2020-09-20T19:16:05Z notzmv` quit (Ping timeout: 240 seconds) 2020-09-20T19:26:36Z Zipheir: arew: GitHub is ludicrous. They can implement a Facebook-style personal status feature with emoji for "I'm sick", but not a working search, it seems. 2020-09-20T19:26:36Z gmaggior joined #scheme 2020-09-20T19:29:49Z arew: maybe it is a background job, I created the issue 9 hours ago. 2020-09-20T19:30:02Z arew: Zipheir: they need to do it for several tousands of projects 2020-09-20T19:30:48Z arew: I am not particularly fine or happy with the situation, I need to balance a) my dream to work in my day job with Scheme b) my ethics that distrust microsoft. 2020-09-20T19:31:08Z arew: hence the current situation where i host my project on github. 2020-09-20T19:31:50Z arew: basically I make the default choice of the mainstream platform, because i hope it will "get better" (tm) 2020-09-20T19:32:23Z arew: see we are in 2020, it is already better (sarcasm) 2020-09-20T19:36:03Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-20T19:39:06Z epony quit (Remote host closed the connection) 2020-09-20T19:39:12Z terpri joined #scheme 2020-09-20T19:40:05Z epony joined #scheme 2020-09-20T19:40:17Z terpri_ quit (Ping timeout: 260 seconds) 2020-09-20T19:43:39Z user51: we just got another lockdown here. not sure if things are getting better or worse. 2020-09-20T19:44:33Z wasamasa: I bet ##coronavirus is thrilled to hear that 2020-09-20T19:48:32Z user51: good night 2020-09-20T19:48:37Z user51 quit (Quit: leaving) 2020-09-20T19:57:42Z daviid quit (Ping timeout: 272 seconds) 2020-09-20T19:59:53Z Zipheir: arew: As long as projects can be easily migrated away from GitHub when the need arises, it's not so bad. 2020-09-20T20:00:07Z Zipheir: (i.e. avoid proprietary GitHub features.) 2020-09-20T20:10:52Z raingloom quit (Ping timeout: 256 seconds) 2020-09-20T20:19:02Z civodul quit (Remote host closed the connection) 2020-09-20T20:21:16Z daviid joined #scheme 2020-09-20T20:24:29Z ggole quit (Quit: Leaving) 2020-09-20T20:24:59Z civodul joined #scheme 2020-09-20T20:26:45Z raingloom joined #scheme 2020-09-20T20:28:29Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-20T20:30:58Z malaclyps quit (Ping timeout: 246 seconds) 2020-09-20T20:31:34Z civodul quit (Quit: b) 2020-09-20T20:32:02Z civodul joined #scheme 2020-09-20T20:34:22Z malaclyps joined #scheme 2020-09-20T20:39:47Z Fare quit (Ping timeout: 260 seconds) 2020-09-20T20:58:28Z badkins quit (Remote host closed the connection) 2020-09-20T20:58:54Z aeth: I personally use Gitlab because it could be moved to a self-hosted Gitlab if necessary... even if it might require some database magic or scraping to get e.g. the issue tracker out or whatever. 2020-09-20T21:03:58Z lritter quit (Ping timeout: 260 seconds) 2020-09-20T21:11:38Z lritter joined #scheme 2020-09-20T21:24:11Z arew: (set! subject "I feel much better since I stopped reading hackernews...") 2020-09-20T21:28:01Z arew: hey! 2020-09-20T21:28:19Z arew: I think I got an idea for something inspired from nanopass framework but easier to implement 2020-09-20T21:29:50Z arew: The idea is to drop the language definitions (and inheritance), which means you can leak forms from one mini language to the other and only keep the define-pass form which defines the transformer from one level to the other 2020-09-20T21:30:10Z arew: anyway, it seems to me the language definition, even if handy, get in the way a little. 2020-09-20T21:31:07Z arew: basically keep the template-based approach to describe the transformer, I still need to figure if it rely requires to rebind quasiquote. 2020-09-20T21:31:10Z Zipheir: Isn't the whole essence of nanopass the language definition? I mean, it's for building compilers. 2020-09-20T21:32:01Z arew: language definition is a concept in nanopass compiler, I mean a description of language, each pass describe the transformations (a small transformation) from one language to the other. 2020-09-20T21:32:45Z arew: so, a compiler is made of many languages, in each language you add and remove forms via the pass that is related to it. 2020-09-20T21:32:56Z arew: the pass execute the transformation. 2020-09-20T21:33:07Z arew: describe and execute. 2020-09-20T21:33:50Z arew: the thing is there is some stuff going on under the hood, for instance say you have language L0, and language L1, L1 will inherit L0 and remove set! all other forms are inherited. 2020-09-20T21:33:56Z Zipheir: Yes, that's familiar. I've skimmed the paper. 2020-09-20T21:34:35Z Zipheir: It's a succession of little compilers. 2020-09-20T21:35:29Z arew: so in the pass when you say write ((set! a b) `(void)), under the hood it is more liek ((L0:set! a b) `(L1:void))` and other forms that are not transformed are mapped to their L1 version. 2020-09-20T21:35:56Z arew: that set! pass will replace set! with void.. but the rest of the program remains unchanged. 2020-09-20T21:36:14Z arew: except it is passed to the rest of the compiler as L1 forms instead of L0 2020-09-20T21:36:47Z arew: that trick, allows to check at each pass that you have the good forms in your language at each step. 2020-09-20T21:37:26Z Blukunfando joined #scheme 2020-09-20T21:37:29Z arew: instead of say, mistakenly passing a set! to the next pass where set! is not expected at all AND might not break the compiler until much later stage 2020-09-20T21:37:53Z arew: you might end up with an error when you try to translate sexp into assembly. 2020-09-20T21:38:17Z arew: anyway, that language construct looks much like static typing. Indeed, forms for each language are typed with the associated mini language. 2020-09-20T21:38:46Z arew: I think it is possible to get away with simpler "framework" but less security by dropping the definition of the mini languages 2020-09-20T21:38:51Z arew: that is theory. 2020-09-20T21:40:00Z arew: the rationale is really the same as static typing vs. dynamic typing. The time you spend getting together the language definition and correct pass invokation, can be spent doing unit tests of each pass. 2020-09-20T21:40:48Z arew: I do not say it will be better than nanopass framework of course :) 2020-09-20T21:46:06Z badkins joined #scheme 2020-09-20T21:51:04Z badkins quit (Ping timeout: 272 seconds) 2020-09-20T21:54:34Z notzmv`` is now known as notzvm 2020-09-20T21:54:36Z notzvm is now known as notzmv 2020-09-20T21:54:45Z notzmv quit (Changing host) 2020-09-20T21:54:45Z notzmv joined #scheme 2020-09-20T21:57:46Z Fare joined #scheme 2020-09-20T21:58:21Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-20T22:00:30Z badkins joined #scheme 2020-09-20T22:03:01Z jcowan: I am a dual EU/US national 2020-09-20T22:05:32Z aeth: arew: (define |Use the most descriptive variable names for your variables.| "Use the most descriptive variable names for your variables.") 2020-09-20T22:07:10Z badkins quit (Ping timeout: 258 seconds) 2020-09-20T22:12:06Z sdu quit (Ping timeout: 260 seconds) 2020-09-20T22:12:21Z Tirifto quit (Quit: Leaving.) 2020-09-20T22:12:56Z sdu joined #scheme 2020-09-20T22:15:06Z badkins joined #scheme 2020-09-20T22:15:47Z fadein quit (Ping timeout: 240 seconds) 2020-09-20T22:16:25Z rgherdt quit (Ping timeout: 240 seconds) 2020-09-20T22:18:06Z fadein joined #scheme 2020-09-20T22:19:34Z badkins quit (Ping timeout: 260 seconds) 2020-09-20T22:24:42Z phillbush quit (Quit: Leaving) 2020-09-20T22:30:02Z Fare quit (Ping timeout: 260 seconds) 2020-09-20T22:37:16Z Fare joined #scheme 2020-09-20T23:40:03Z madage quit (Ping timeout: 240 seconds) 2020-09-20T23:45:14Z madage joined #scheme 2020-09-21T00:05:14Z cjb joined #scheme 2020-09-21T00:10:27Z badkins joined #scheme 2020-09-21T00:12:17Z gmaggior quit (Quit: Leaving) 2020-09-21T00:14:37Z badkins quit (Ping timeout: 246 seconds) 2020-09-21T00:20:49Z zooey quit (Remote host closed the connection) 2020-09-21T00:21:06Z zooey joined #scheme 2020-09-21T00:27:17Z Fare quit (Ping timeout: 260 seconds) 2020-09-21T00:34:04Z Fare joined #scheme 2020-09-21T00:58:19Z cjb quit (Ping timeout: 272 seconds) 2020-09-21T01:03:43Z cjb joined #scheme 2020-09-21T01:22:07Z Fare quit (Ping timeout: 260 seconds) 2020-09-21T01:43:11Z Fare joined #scheme 2020-09-21T01:46:24Z ex_nihilo joined #scheme 2020-09-21T01:48:22Z Fare quit (Ping timeout: 260 seconds) 2020-09-21T01:49:55Z Fare joined #scheme 2020-09-21T02:08:47Z marusich quit (Ping timeout: 260 seconds) 2020-09-21T02:09:10Z lritter quit (Ping timeout: 260 seconds) 2020-09-21T02:11:14Z badkins joined #scheme 2020-09-21T02:14:21Z notzmv` joined #scheme 2020-09-21T02:15:48Z badkins quit (Ping timeout: 272 seconds) 2020-09-21T02:15:58Z notzmv quit (Disconnected by services) 2020-09-21T02:16:10Z notzmv` quit (Changing host) 2020-09-21T02:16:11Z notzmv` joined #scheme 2020-09-21T02:16:12Z notzmv` is now known as notzmv 2020-09-21T02:21:45Z notzmv` joined #scheme 2020-09-21T02:23:06Z notzmv` quit (Changing host) 2020-09-21T02:23:06Z notzmv` joined #scheme 2020-09-21T02:23:09Z notzmv quit (Disconnected by services) 2020-09-21T02:23:21Z notzmv` is now known as notzmv 2020-09-21T02:43:04Z raingloom quit (Ping timeout: 256 seconds) 2020-09-21T02:55:14Z daviid: has anyone written a procedure I could reuse. to compute all combinatorial possibilities, given a list of items, where an item either is an atom or a list? 2020-09-21T02:55:24Z daviid: for example 2020-09-21T02:55:31Z daviid: (a b b) -> ((a b b)) 2020-09-21T02:55:41Z daviid: (a b (b c)) -> ((a b b) (a b c)) 2020-09-21T02:55:47Z daviid: and so on ... 2020-09-21T03:04:39Z DKordic quit 2020-09-21T03:09:52Z notzmv` joined #scheme 2020-09-21T03:12:45Z notzmv quit (Ping timeout: 240 seconds) 2020-09-21T03:13:25Z notzmv` quit (Changing host) 2020-09-21T03:13:25Z notzmv` joined #scheme 2020-09-21T03:13:30Z notzmv` is now known as notzmv 2020-09-21T03:18:57Z hendursaga quit (Remote host closed the connection) 2020-09-21T03:20:02Z hendursaga joined #scheme 2020-09-21T03:21:09Z teardown quit (Ping timeout: 260 seconds) 2020-09-21T03:39:24Z mirrorbird joined #scheme 2020-09-21T03:49:30Z mirrorbird: are lambda bodies a list of expressions? or one expression? 2020-09-21T03:49:48Z mirrorbird: like (λ (x y z) (foo) (bar) (baz)) 2020-09-21T03:57:06Z mirrorbird: man i really need more ram 2020-09-21T03:57:19Z mirrorbird: oops wrong chat :) 2020-09-21T04:06:54Z aeth: on RAM... https://downloadmoreram.com/index.html 2020-09-21T04:07:41Z aeth: mirrorbird: afaik, (foo) (bar) (baz) are expressions in your example. 2020-09-21T04:09:57Z Zipheir: mirrorbird: Any number of expressions. 2020-09-21T04:10:17Z Zipheir: mirrorbird: Though only the value of the last is returned. 2020-09-21T04:12:07Z badkins joined #scheme 2020-09-21T04:16:34Z badkins quit (Ping timeout: 260 seconds) 2020-09-21T04:17:07Z Zipheir: Here's a fun article promotating Lisp from the days of the "micro revolution" https://archive.org/details/Kilobaud198202/page/n19/mode/2up 2020-09-21T04:17:55Z Zipheir: Promoting, even. 2020-09-21T04:19:05Z Zipheir: Sort of a shame that historically Lisp didn't get that much attention from the mini/micro computer hackers. 2020-09-21T04:25:40Z aeth: Zipheir: Lisps are best when > 32-bits are available due to how fixnums generally work, and how positive fixnums generally set the limits (especially CL, where this is basically mandated) 2020-09-21T04:26:40Z aeth: best case fixnum tag is 1 bit like in 64-bit SBCL (but not the 32-bit version!) and then you halve that again (positive range of fixnums, which are signed) and you can only express 0 to 1073741823 2020-09-21T04:26:50Z aeth: this is noticable 2020-09-21T04:27:29Z aeth: 0 to 4611686018427387903 instead of 0 to 18446744073709551615 isn't really noticable in most situations 2020-09-21T04:27:33Z aeth: (and, again, this is best case.) 2020-09-21T04:28:24Z aeth: And this is 32-bit! It's even worse with 16, and our current systems are mostly just extensions of 16-bit systems. 2020-09-21T04:29:23Z aeth: With 16-bit, you probably really want all 65536 of a 16-bit integer (signed or unsigned) and so Lisps/Schemes probably can't even be implemented with the usual tag bit technique. 2020-09-21T04:31:49Z aeth: Zipheir: And Lisp Machines really died when 32-bit x86 started running Lisps faster than specialized, proper 36-bit machines, even with these limitations! 2020-09-21T04:34:20Z epony quit (Ping timeout: 258 seconds) 2020-09-21T04:39:05Z Zipheir: aeth: I guess this is one of the reasons BASIC was so successful on the early micros, some of which were 8-bit machines. 2020-09-21T04:40:07Z Zipheir: (Extremely limited BASIC with integer-only variables.) 2020-09-21T04:40:09Z aeth: Zipheir: I mean, you still could have had them run a limited, bastardization of a Lisp, like Emacs Lisp. :-P 2020-09-21T04:40:47Z aeth: AutoLISP or whatever AutoCAD uses is probably an even better fit for that description 2020-09-21T04:42:26Z ggole joined #scheme 2020-09-21T04:44:00Z Zipheir: aeth: Trying to implement some extremely tiny Lisp for an 8080 emulator would be a infuriating but educational project. 2020-09-21T04:44:49Z Zipheir: That Allen article I pasted-in above mentions dynamic binding as "perhaps an error" in current Lisps. 2020-09-21T04:45:02Z aeth: Zipheir: eh 2020-09-21T04:45:07Z aeth: Zipheir: I've done worse 2020-09-21T04:45:36Z aeth: Zipheir: The first thing I tried to do with my Brainfuck-on-Common-Lisp was, of course, trying to write a Lisp that compiled to that Brainfuck. 2020-09-21T04:45:41Z aeth: It... doesn't really go well. 2020-09-21T04:46:46Z aeth: The best I could think of in my design is that you have to move the whole world with you in Brainfuck, basically emulating registers. So e.g. (a b c d #| data |#) and as the program runs (#| some data |# a b c d #| data |#) 2020-09-21T04:47:02Z aeth: Since you don't have a way to go to an absolute position in Brainfuck 2020-09-21T04:47:10Z Zipheir: aeth: Sounds interesting. 2020-09-21T04:47:28Z aeth: The other design I thought of was having two Brainfucks talk to each other, and have one represent a register machine or a stack machine. 2020-09-21T04:47:56Z aeth: And at some point I decided it wasn't worth the work since all I was doing was trying to be as convenient as asm or bytecode, not even getting anywhere to the language semantics themselves. 2020-09-21T04:47:56Z Zipheir: Communicating Sequential Brainfucks! 2020-09-21T04:48:17Z aeth: s/anywhere to/anywhere close to/ 2020-09-21T04:50:27Z Blukunfando: Did they have a brainchild? 2020-09-21T05:07:13Z Fare quit (Quit: Leaving) 2020-09-21T05:13:08Z cchristiansen joined #scheme 2020-09-21T05:18:49Z autumn[m]: I feel like I've seen Lisp built inside Brainfuck though... 2020-09-21T05:19:40Z autumn[m]: Well, at least something that resembles one. http://zozotez.sylwester.no/ I never tried it myself to be fair >.> 2020-09-21T05:25:07Z cjb quit (Ping timeout: 252 seconds) 2020-09-21T05:28:28Z cjb joined #scheme 2020-09-21T05:28:55Z cjb quit (Remote host closed the connection) 2020-09-21T05:33:25Z mirrorbird quit (Quit: Leaving) 2020-09-21T05:34:53Z gravicappa joined #scheme 2020-09-21T05:36:22Z Blukunfando quit (Ping timeout: 260 seconds) 2020-09-21T05:39:42Z wasamasa quit (Quit: ZNC - https://znc.in) 2020-09-21T05:40:57Z wasamasa joined #scheme 2020-09-21T06:06:15Z Blukunfando joined #scheme 2020-09-21T06:13:02Z badkins joined #scheme 2020-09-21T06:16:13Z klovett quit (Remote host closed the connection) 2020-09-21T06:16:50Z klovett joined #scheme 2020-09-21T06:17:53Z badkins quit (Ping timeout: 260 seconds) 2020-09-21T06:23:20Z nilg joined #scheme 2020-09-21T06:27:04Z ex_nihilo quit (Quit: Leaving) 2020-09-21T06:28:27Z badkins joined #scheme 2020-09-21T06:33:13Z badkins quit (Ping timeout: 264 seconds) 2020-09-21T06:36:34Z mirrorbird joined #scheme 2020-09-21T06:43:14Z marusich joined #scheme 2020-09-21T06:47:37Z marusich quit (Ping timeout: 260 seconds) 2020-09-21T06:54:09Z user51 joined #scheme 2020-09-21T07:01:24Z gnomon quit (Ping timeout: 265 seconds) 2020-09-21T07:02:30Z gnomon joined #scheme 2020-09-21T07:14:52Z civodul joined #scheme 2020-09-21T07:15:22Z nilg quit (Ping timeout: 272 seconds) 2020-09-21T07:15:32Z mirrorbird: i think agda is my least favourite language in the world 2020-09-21T07:15:43Z mirrorbird: only because i have to manually go in and tell it where the standard library is, which i downloaded from github 2020-09-21T07:15:46Z mirrorbird: what junk 2020-09-21T07:17:47Z wasamasa: I recall elm downloading the stdlib as needed 2020-09-21T07:20:08Z mirrorbird: blah elm 2020-09-21T07:20:11Z mirrorbird: another language i don't want to use 2020-09-21T07:20:15Z mirrorbird: i'm only using agda for a uni course 2020-09-21T07:20:18Z mirrorbird: i think the prof invented it 2020-09-21T07:20:54Z mirrorbird: oh, he actually did 2020-09-21T07:26:28Z wasamasa: :D 2020-09-21T07:27:28Z wasamasa: here's another one: https://en.wikipedia.org/wiki/Opal_(programming_language) 2020-09-21T07:35:19Z siraben: mirrorbird: is your professor Ulf Norell? 2020-09-21T07:35:39Z siraben: my pet peeve with Agda is that you have to write in unicode, which is easier if you use Emacs but IMO kinda unnecessary. 2020-09-21T07:35:44Z siraben: Also, it's very fussy with whitespace. 2020-09-21T07:36:16Z aeth: autumn[m]: no mention of "array" on that page 2020-09-21T07:36:43Z aeth: although, to be fair, just doing CONS/CAR/CDR is a miracle in Brainfuck 2020-09-21T07:36:45Z mirrorbird: siraben, yes 2020-09-21T07:36:51Z mirrorbird: one of them. the course has 3 teachers 2020-09-21T07:37:15Z siraben: galaxy brain, to have a course taught by the language's designer. 2020-09-21T07:37:27Z mirrorbird: yeah i am lucky ain't i... 2020-09-21T07:37:40Z mirrorbird: i had many such courses actually. i also had one of the main Haskell designers as a prof 2020-09-21T07:37:42Z aeth: autumn[m]: Perhaps I was too ambitious by trying arrays first 2020-09-21T07:37:51Z mirrorbird: yeah. that is why i have to start using Emacs again. there is a vi mode for Agda, but i decided to use emacs instead 2020-09-21T07:38:01Z siraben: mirrorbird: you had Wadler as a professor? 2020-09-21T07:38:02Z siraben: dang 2020-09-21T07:38:02Z mirrorbird: i should attend more lectures i guess :p 2020-09-21T07:38:06Z mirrorbird: nah. John Hughes 2020-09-21T07:38:21Z mirrorbird: maybe he didn't design it 2020-09-21T07:38:23Z siraben: I see. Still amazing though 2020-09-21T07:38:49Z siraben: He's one of the designers, IIRC 2020-09-21T07:39:02Z mirrorbird: i started uni wanting to specialise in programming language theory and stuff. since i always loved that stuff, but i dunno 2020-09-21T07:39:07Z mirrorbird: it's probably a great place to do it 2020-09-21T07:39:19Z mirrorbird: https://en.wikipedia.org/wiki/Haskell_(programming_language) designed by ... john hughes ... 2020-09-21T07:39:36Z aeth: I do not like the code examples in https://en.wikipedia.org/wiki/Agda_(programming_language) 2020-09-21T07:39:38Z mirrorbird: i think they have some committee designing it 2020-09-21T07:40:03Z mirrorbird: heh. video lectures with john hughes were a bit funny. "hey hey the webcam is on!" 2020-09-21T07:40:17Z siraben: yeah, I'm interested in programming language theory as well. is it a separate major or does it fall under CS? 2020-09-21T07:40:23Z mirrorbird: CS professors are surprisingly bad with fancy laptops and phones :P 2020-09-21T07:40:28Z mirrorbird: it falls under CS 2020-09-21T07:41:09Z mirrorbird: this course (the course page says) is meant to prepare us for doing an msc thesis in this field. but i dunno. i am sort of behind. i just want to get my bsc and stop studying at this point :/ 2020-09-21T07:41:13Z mirrorbird: ok tmi and i should stfu 2020-09-21T07:41:34Z siraben: no worries 2020-09-21T07:41:47Z mirrorbird: oh yeah. i also had the Coq guy 2020-09-21T07:41:55Z mirrorbird: and he is teaching this course with the Agda guy. lol 2020-09-21T07:42:01Z siraben: Which Coq guy? 2020-09-21T07:42:15Z mirrorbird: https://en.wikipedia.org/wiki/Coq 2020-09-21T07:42:23Z mirrorbird: thierry 2020-09-21T07:42:35Z siraben: Ah, right. 2020-09-21T07:42:38Z mirrorbird: i hope they are not lurking in this channel. well at least i am anonymous 2020-09-21T07:42:52Z mirrorbird: he failed me in the logic course, had to retake it u_u 2020-09-21T07:43:13Z siraben: Oh dear, I can't imagine having to take a logic course taught by Coquand, haha 2020-09-21T07:43:25Z siraben: Was it constructive or classical? 2020-09-21T07:43:37Z mirrorbird: first-order logic 2020-09-21T07:43:53Z mirrorbird: it was a bit hard at first, but then i learnt how to do everything and i felt like i was pretty good at it 2020-09-21T07:44:09Z siraben: I see. Did the course also formalize FOL? 2020-09-21T07:44:49Z mirrorbird: good question 2020-09-21T07:44:53Z mirrorbird: i probably didn't learn enough :) 2020-09-21T07:45:01Z siraben: Math courses tend to be taught very differently from uni to uni, so I'm just curious 2020-09-21T07:45:13Z mirrorbird: "We cover: propositional logic (sections 1.1 to 1.5), predicate logic (sections 2.1 to 2.6) and model-checking (sections 3.2 and 3.4). In other words, a thorough introduction to fundamental notions of logic:" 2020-09-21T07:45:16Z siraben: Linear algebra is a good example of this, every course seems to be different 2020-09-21T07:45:23Z mirrorbird: plus an introduction to model checking: Linear-time temporal logic (LTL) and Branching-time temporal logic (CTL). 2020-09-21T07:45:35Z mirrorbird: i wish i had studied more (as in, actually read textbooks) from the start 2020-09-21T07:45:37Z siraben: Ah, I don't think my course will cover model-checking and non-classical logics, heh. 2020-09-21T07:45:39Z mirrorbird: i blame the internet distracting me 2020-09-21T07:45:52Z mirrorbird: basically it was like, prove this predicate logic theorem or something 2020-09-21T07:46:08Z siraben: Here it's sort of a deep dive into classical propositional calculus, soundness and completeness, closure properties and so on 2020-09-21T07:46:17Z siraben: Breaks your mind from the raw amount of logic 2020-09-21T07:46:30Z mirrorbird: (forall x B(x) -> C(x)) |- (exists x B(x) -> C(x) 2020-09-21T07:46:35Z mirrorbird: "prove this" 2020-09-21T07:46:46Z mirrorbird: it got harder than that obviously 2020-09-21T07:47:26Z mirrorbird: i also had to use a language called Futhark, which was ... i think the most "obscure" so far. people call haskell an academic language lol. not the case at all anymore. you can get a web dev haskell job now. 2020-09-21T07:47:30Z rgherdt joined #scheme 2020-09-21T07:47:31Z siraben: That formula is true classically but not constructively, I take it? 2020-09-21T07:47:32Z edgar-rft quit (Quit: Leaving) 2020-09-21T07:47:34Z mirrorbird: futhark was such a mess to even install. gigabytes to install 2020-09-21T07:47:42Z mirrorbird: i don't know what "constructively" means :/ 2020-09-21T07:47:56Z siraben: Ah, constructive logic doesn't have LEM or double negation 2020-09-21T07:47:59Z mirrorbird: are you at uni now? 2020-09-21T07:48:02Z siraben: Yes 2020-09-21T07:48:08Z mirrorbird: what major? 2020-09-21T07:48:11Z siraben: If it pleases the gods, we could move this to PM 2020-09-21T07:48:15Z mirrorbird: ok 2020-09-21T07:55:31Z tdammers: mirrorbird: haskell is very much an academic language, always has been; but haskell has also been an industry-strength practical general-purpose language pretty much from day 1, that has always been a primary design goal 2020-09-21T07:58:51Z amirouche joined #scheme 2020-09-21T08:00:02Z mirrorbird: ah 2020-09-21T08:07:25Z aeth: For off-topic things... The Lisp channels have #lispcafe as off-topic. Mostly CL since #lisp is CL, but they can't really complain about being off-topic in off-topic channel (and it's not directly associated with #lisp or it would be called #lisp-cafe) 2020-09-21T08:09:23Z hendursa1 joined #scheme 2020-09-21T08:10:28Z rmura joined #scheme 2020-09-21T08:11:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-21T08:19:13Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-21T08:27:03Z hendursa1 quit (Ping timeout: 240 seconds) 2020-09-21T08:28:54Z hendursa1 joined #scheme 2020-09-21T08:29:29Z badkins joined #scheme 2020-09-21T08:30:03Z mirrorbird quit (Quit: Leaving) 2020-09-21T08:34:32Z badkins quit (Ping timeout: 272 seconds) 2020-09-21T08:54:58Z amirouche: is there a canonical example or demo app for sql? 2020-09-21T08:57:33Z mirrorbird joined #scheme 2020-09-21T08:57:33Z mirrorbird is now known as psut 2020-09-21T08:58:00Z klovett quit (Remote host closed the connection) 2020-09-21T08:58:17Z klovett joined #scheme 2020-09-21T08:59:42Z klovett quit (Remote host closed the connection) 2020-09-21T09:00:20Z klovett joined #scheme 2020-09-21T09:02:52Z cpressey joined #scheme 2020-09-21T09:04:12Z raingloom joined #scheme 2020-09-21T09:11:18Z psut quit (Quit: Leaving) 2020-09-21T09:32:34Z mirrorbird joined #scheme 2020-09-21T09:38:31Z wasamasa: amirouche: how about some CRUD 2020-09-21T09:39:11Z wasamasa: like some book inventory or whatever 2020-09-21T09:39:51Z amirouche: good idea. 2020-09-21T09:39:53Z wasamasa: or an address book 2020-09-21T09:40:06Z wasamasa: or some course register 2020-09-21T09:40:23Z wasamasa: all of those have great opportunities to show off how much you like SICP and stuff 2020-09-21T09:40:56Z amirouche: I was under the impression there was a "regular" example for sql. I think the boook inventory will do :) 2020-09-21T09:41:12Z amirouche: especially since I can mention SICP 2020-09-21T09:55:29Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-21T10:01:40Z daviid quit (Ping timeout: 256 seconds) 2020-09-21T10:26:54Z webshinra joined #scheme 2020-09-21T10:30:12Z badkins joined #scheme 2020-09-21T10:32:07Z cchristiansen quit (Quit: Konversation terminated!) 2020-09-21T10:34:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-21T10:51:20Z acarrico quit (Ping timeout: 272 seconds) 2020-09-21T11:27:54Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-21T11:29:42Z mirrorbird joined #scheme 2020-09-21T11:37:43Z badkins joined #scheme 2020-09-21T11:41:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-21T11:44:09Z terrorjack quit 2020-09-21T11:46:24Z Tirifto joined #scheme 2020-09-21T11:50:59Z phillbush joined #scheme 2020-09-21T12:01:59Z jcowan: In any case, #scheme is fairly tolerant of off-topic and pretty much obeys the laws of FidoNet 2020-09-21T12:02:20Z jcowan: namely "Thou shalt not annoy others" and "Thou shalt not be too easily annoyed" 2020-09-21T12:02:44Z jcowan: also traffic is low, so a separate OT channel isn't a necessity 2020-09-21T12:03:36Z jcowan: amirouche: The regular example for SQL is a parts inventory system,: it's all over the literature 2020-09-21T12:05:49Z jcowan: https://en.wikipedia.org/wiki/Suppliers_and_Parts_database 2020-09-21T12:08:09Z jcowan: Zipheir: When English borrows Latin verbs, it randomly borrows the bare stem or the participle. There simply is no reason why we say separate instead of separe, or prepare instead of preparate. So promotate is a reasonable choice, it just isn't the one that English-speakers chose. 2020-09-21T12:11:46Z klovett quit (Remote host closed the connection) 2020-09-21T12:12:02Z klovett joined #scheme 2020-09-21T12:13:36Z amirouche: thanks! 2020-09-21T12:14:56Z terrorjack joined #scheme 2020-09-21T12:16:42Z klovett_ joined #scheme 2020-09-21T12:17:43Z klovett quit (Ping timeout: 260 seconds) 2020-09-21T12:32:21Z hendursa1 quit (Quit: hendursa1) 2020-09-21T12:32:36Z hendursaga joined #scheme 2020-09-21T12:44:21Z klovett joined #scheme 2020-09-21T12:48:26Z klovett_ quit (Ping timeout: 256 seconds) 2020-09-21T12:48:50Z rmura quit (Quit: Connection closed for inactivity) 2020-09-21T13:01:38Z badkins joined #scheme 2020-09-21T13:02:59Z tdammers: .oO(depreciated) 2020-09-21T13:06:05Z badkins quit (Ping timeout: 258 seconds) 2020-09-21T13:10:36Z acarrico joined #scheme 2020-09-21T13:11:47Z midre quit (Ping timeout: 240 seconds) 2020-09-21T13:13:18Z midre joined #scheme 2020-09-21T13:20:53Z badkins joined #scheme 2020-09-21T13:25:25Z badkins quit (Ping timeout: 264 seconds) 2020-09-21T13:40:47Z arew quit (Ping timeout: 260 seconds) 2020-09-21T13:46:19Z klovett_ joined #scheme 2020-09-21T13:49:25Z klovett quit (Ping timeout: 240 seconds) 2020-09-21T13:55:09Z cpressey joined #scheme 2020-09-21T14:19:52Z sm2n quit (Remote host closed the connection) 2020-09-21T14:20:14Z badkins joined #scheme 2020-09-21T14:23:12Z sm2n joined #scheme 2020-09-21T14:25:12Z edgar-rft joined #scheme 2020-09-21T14:25:59Z epony joined #scheme 2020-09-21T14:31:57Z mirrorbird quit (Quit: Leaving) 2020-09-21T14:35:42Z elflng quit (Read error: Connection reset by peer) 2020-09-21T14:39:30Z elflng joined #scheme 2020-09-21T14:50:42Z ManDay joined #scheme 2020-09-21T14:50:48Z ManDay quit (Client Quit) 2020-09-21T15:17:58Z arew joined #scheme 2020-09-21T15:21:10Z amirouche quit (Ping timeout: 265 seconds) 2020-09-21T15:26:04Z teardown joined #scheme 2020-09-21T15:35:49Z coffeeturtle joined #scheme 2020-09-21T15:37:19Z theseb quit (Quit: Leaving) 2020-09-21T15:37:37Z theseb joined #scheme 2020-09-21T15:37:41Z coffeeturtle quit (Remote host closed the connection) 2020-09-21T15:38:02Z coffeeturtle joined #scheme 2020-09-21T15:41:36Z DKordic joined #scheme 2020-09-21T15:49:42Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-21T15:54:00Z coffeeturtle quit (Quit: leaving) 2020-09-21T15:57:35Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-21T16:10:30Z gmaggior joined #scheme 2020-09-21T16:16:46Z sdu quit (Ping timeout: 246 seconds) 2020-09-21T16:18:48Z sdu joined #scheme 2020-09-21T16:21:24Z rgherdt joined #scheme 2020-09-21T16:24:58Z theseb quit (Quit: Leaving) 2020-09-21T16:32:35Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-21T16:33:19Z OptimusMKD joined #scheme 2020-09-21T16:33:39Z OptimusMKD quit (Max SendQ exceeded) 2020-09-21T16:34:08Z OptimusMKD joined #scheme 2020-09-21T16:36:15Z OptimusMKD quit (Max SendQ exceeded) 2020-09-21T16:36:44Z OptimusMKD joined #scheme 2020-09-21T16:38:52Z OptimusMKD quit (Max SendQ exceeded) 2020-09-21T16:39:30Z OptimusMKD joined #scheme 2020-09-21T16:41:07Z ManDay joined #scheme 2020-09-21T16:48:19Z rgherdt joined #scheme 2020-09-21T16:51:44Z msirabella joined #scheme 2020-09-21T16:53:02Z badkins quit (Remote host closed the connection) 2020-09-21T16:54:09Z badkins joined #scheme 2020-09-21T16:54:17Z mjsir911 quit (Ping timeout: 260 seconds) 2020-09-21T16:54:44Z civodul joined #scheme 2020-09-21T16:56:25Z msirabella quit (Quit: Goodbye, World!) 2020-09-21T16:57:46Z mjsir911 joined #scheme 2020-09-21T16:58:15Z mjsir911 quit (Remote host closed the connection) 2020-09-21T16:58:28Z averell quit (Remote host closed the connection) 2020-09-21T16:59:14Z badkins quit (Ping timeout: 256 seconds) 2020-09-21T16:59:49Z mjsir911 joined #scheme 2020-09-21T17:00:14Z OptimusMKD quit (Quit: Leaving) 2020-09-21T17:05:33Z mirrorbird joined #scheme 2020-09-21T17:35:55Z mjsir911 quit (Ping timeout: 272 seconds) 2020-09-21T17:36:21Z badkins joined #scheme 2020-09-21T17:42:54Z msirabella joined #scheme 2020-09-21T17:46:18Z ManDay quit (Ping timeout: 246 seconds) 2020-09-21T17:51:50Z hugh_marera joined #scheme 2020-09-21T18:04:39Z hendursa1 joined #scheme 2020-09-21T18:06:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-21T18:06:50Z phillbush_ joined #scheme 2020-09-21T18:07:04Z phillbush quit (Ping timeout: 272 seconds) 2020-09-21T18:13:25Z ManDay joined #scheme 2020-09-21T18:26:48Z klovett_ quit (Remote host closed the connection) 2020-09-21T18:27:27Z klovett joined #scheme 2020-09-21T18:28:00Z klovett quit (Remote host closed the connection) 2020-09-21T18:28:15Z klovett joined #scheme 2020-09-21T18:36:58Z phillbush_ quit (Quit: Leaving) 2020-09-21T18:37:01Z badkins quit (Remote host closed the connection) 2020-09-21T18:39:14Z phillbush joined #scheme 2020-09-21T18:39:58Z webshinra quit (Remote host closed the connection) 2020-09-21T18:40:26Z webshinra joined #scheme 2020-09-21T18:40:32Z badkins joined #scheme 2020-09-21T18:44:19Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-21T18:45:43Z badkins quit (Ping timeout: 258 seconds) 2020-09-21T18:49:10Z phillbush quit (Quit: Leaving) 2020-09-21T18:49:41Z phillbush joined #scheme 2020-09-21T18:56:21Z ManDay quit (Ping timeout: 272 seconds) 2020-09-21T18:59:25Z ManDay joined #scheme 2020-09-21T18:59:57Z ManDay quit (Client Quit) 2020-09-21T19:08:07Z badkins joined #scheme 2020-09-21T19:12:24Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-21T19:12:44Z aeth: Right. And off-topic discussions give people the false impression that the Scheme community is more active than it is, which is probably a net benefit, for now. 2020-09-21T19:13:10Z gravicappa joined #scheme 2020-09-21T19:26:49Z edgar-rft quit (Quit: Leaving) 2020-09-21T19:33:27Z hugh_marera quit (Quit: hugh_marera) 2020-09-21T19:33:44Z hugh_marera joined #scheme 2020-09-21T19:36:25Z gmaggior quit (Ping timeout: 260 seconds) 2020-09-21T19:48:49Z lritter joined #scheme 2020-09-21T19:48:53Z gmaggior joined #scheme 2020-09-21T19:53:44Z daviid joined #scheme 2020-09-21T19:57:40Z muelleme joined #scheme 2020-09-21T20:05:42Z user51 quit (Remote host closed the connection) 2020-09-21T20:07:53Z tdammers: scheme also wins against Haskell in google fights, because there is a lot of content on the web involving some kind of scheme, even though a lot of that is not about the programming language but actually about a ponzi scheme or some such 2020-09-21T20:14:47Z aeth: You see this sometimes on reddit on /r/scheme where there are news bots who flood some article on dozens of subreddits with related-sounding names 2020-09-21T20:15:08Z aeth: e.g. https://old.reddit.com/r/scheme/comments/idcyfe/former_trump_advisor_steve_bannon_arrested_on/ 2020-09-21T20:15:31Z aeth: I guess the mods are inactive? This is the kind of stuff that I guess normally gets removed 2020-09-21T20:15:39Z aeth: But I've seen two of those recently. 2020-09-21T20:25:33Z ggole quit (Quit: Leaving) 2020-09-21T20:31:27Z arew: uspol mania starts again! 2020-09-21T20:31:47Z arew: at leas this time the world will have decent president.. in the usa. 2020-09-21T20:32:47Z aeth: World president? I, for one, would not refuse being world president if elected. 2020-09-21T20:33:54Z arew: why is that? What do you think you can do as president? People will listen to you more often than before, but there is still the senate or parliement or something.. 2020-09-21T20:34:06Z aeth: Honestly, no, I wouldn't 2020-09-21T20:34:17Z arew: me neither. 2020-09-21T20:34:22Z aeth: There's no way I'd have time left over for programming 2020-09-21T20:34:24Z arew: I just want financial independance. 2020-09-21T20:35:14Z arew: unrelated to that, anyone knows what is the purpose of Marc's project called unsyntax 2020-09-21T20:35:23Z arew: https://github.com/mnieper/unsyntax/ 2020-09-21T20:36:55Z arew: apparantly it is an r7rs implementation 2020-09-21T20:37:28Z arew: aeth: financial indepndance will allow to program anything! 2020-09-21T20:39:14Z aeth: Why stop at financial independence when you can be a dragon and retire to a remote volcano and sleep on a giant pile of shiny coins? One day, when we unlock the secrets of the mind and how to interface with and/or upload it, (cyber)dragons will be real! 2020-09-21T20:47:17Z edgar-rft joined #scheme 2020-09-21T20:48:05Z badkins quit (Remote host closed the connection) 2020-09-21T20:48:40Z badkins joined #scheme 2020-09-21T20:54:11Z badkins quit (Ping timeout: 265 seconds) 2020-09-21T20:55:20Z averell joined #scheme 2020-09-21T20:56:55Z webshinra quit (Read error: Connection reset by peer) 2020-09-21T20:57:55Z badkins joined #scheme 2020-09-21T20:59:22Z webshinra joined #scheme 2020-09-21T20:59:30Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-21T21:09:48Z lritter quit (Ping timeout: 260 seconds) 2020-09-21T21:10:13Z lritter joined #scheme 2020-09-21T21:19:13Z Aurora_v_kosmose quit (Quit: Пока, мир.) 2020-09-21T21:22:48Z Aurora_v_kosmose joined #scheme 2020-09-21T21:26:05Z muelleme quit (Ping timeout: 265 seconds) 2020-09-21T21:34:28Z tryte_ quit (Quit: _) 2020-09-21T21:37:53Z tryte joined #scheme 2020-09-21T21:43:34Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-21T21:44:44Z _apg joined #scheme 2020-09-21T21:48:09Z badkins quit (Remote host closed the connection) 2020-09-21T21:48:44Z badkins joined #scheme 2020-09-21T21:51:34Z badkins quit (Remote host closed the connection) 2020-09-21T21:51:44Z badkins_ joined #scheme 2020-09-21T21:51:49Z Tirifto quit (Quit: Leaving.) 2020-09-21T21:54:31Z hugh_marera quit (Quit: hugh_marera) 2020-09-21T21:57:01Z aeth_ joined #scheme 2020-09-21T21:57:35Z aeth quit (Disconnected by services) 2020-09-21T21:57:40Z aeth_ is now known as aeth 2020-09-21T21:59:21Z rgherdt quit (Ping timeout: 246 seconds) 2020-09-21T22:18:36Z TCZ joined #scheme 2020-09-21T22:19:42Z TCZ left #scheme 2020-09-21T22:22:39Z muelleme joined #scheme 2020-09-21T22:27:24Z muelleme quit (Ping timeout: 260 seconds) 2020-09-21T22:35:39Z badkins_ quit (Remote host closed the connection) 2020-09-21T22:36:24Z badkins joined #scheme 2020-09-21T22:41:56Z badkins quit (Ping timeout: 272 seconds) 2020-09-21T22:51:27Z terpri_ joined #scheme 2020-09-21T22:52:27Z terpri quit (Ping timeout: 260 seconds) 2020-09-21T22:58:43Z Riastradh: jcowan: Does RwhateverRS have expm1 and log1p yet? 2020-09-21T22:59:04Z Riastradh: Also FMA? (correctly rounded, of course) 2020-09-21T22:59:06Z jcowan: In the next batch of SRFIs. 2020-09-21T22:59:57Z jcowan: fl+* is part of SRFI 144 2020-09-21T23:01:02Z badkins joined #scheme 2020-09-21T23:12:56Z Riastradh: Cool. Are expm1 and log1p defined on the complex plane too? 2020-09-21T23:13:51Z Riastradh: ...why fl+* and not fl*+? (Also is there fl*- or fl-*?) 2020-09-21T23:15:08Z jcowan: (fl+* x y z) == (fl+ (fl* x y) z) 2020-09-21T23:15:22Z jcowan: no, no -* 2020-09-21T23:15:26Z Riastradh: aaagh 2020-09-21T23:15:30Z Riastradh: oh wait 2020-09-21T23:15:30Z Riastradh: I see 2020-09-21T23:15:39Z Riastradh: OK, still, kind of confusing, heh. 2020-09-21T23:15:49Z Riastradh: fl+* x y z = x*y + z 2020-09-21T23:16:00Z madage quit (Quit: leaving) 2020-09-21T23:16:06Z Riastradh: (in MIT Scheme I called it flo:*+) 2020-09-21T23:16:12Z jcowan: Got it 2020-09-21T23:16:29Z Riastradh: (agrees with the order of `m' and `a' in `fma') 2020-09-21T23:17:23Z jcowan: "multiply-add" is reverse polish rather than polish 2020-09-21T23:17:34Z Riastradh: Anyway, for complex expm1 and log1p, MIT Scheme now has a reasonably good definition, except for expm1 where e^x ~ 1/cos y, which I haven't found a good way to deal with. 2020-09-21T23:17:43Z jcowan: https://github.com/pre-srfi/logistic-regression/blob/master/logistic-impl.scm is the code, which AFAIK (I didn't do it) is straight from MIT Scheme 2020-09-21T23:18:53Z Riastradh: https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/runtime/arith.scm?id=bff4133fbdf18ecc19ccb94302baa407cc38531c#n1931 2020-09-21T23:18:54Z rudybot: https://teensy.info/TuIgjNKuUm 2020-09-21T23:19:02Z Riastradh: https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/runtime/arith.scm?id=bff4133fbdf18ecc19ccb94302baa407cc38531c#n2011 2020-09-21T23:19:03Z rudybot: https://teensy.info/iK3Q7rvTHq 2020-09-21T23:19:22Z Riastradh: https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/tests/runtime/test-arith.scm?id=bff4133fbdf18ecc19ccb94302baa407cc38531c#n310 2020-09-21T23:19:22Z rudybot: https://teensy.info/I0Yyl7i1DU 2020-09-21T23:20:24Z Riastradh: heh 2020-09-21T23:20:50Z Riastradh: jcowan: not a very good copypasta job; the comments refer to lemmas that don't appear in that file! 2020-09-21T23:21:39Z jcowan: Do you object to SRFI-author credit? 2020-09-21T23:21:59Z Riastradh: I think an acknowledgment would be more appropriate. 2020-09-21T23:29:11Z Riastradh: I haven't proven any error bounds on the log1p implementation, but I think it's O(eps) both componentwise and in complex magnitude. 2020-09-21T23:29:36Z Riastradh: (with a reasonably small constant like 10) 2020-09-21T23:31:29Z Riastradh: Who is arvyy? Do I know them? 2020-09-21T23:32:02Z madage joined #scheme 2020-09-21T23:35:39Z Riastradh: FYI, in retrospect I dunno if logistic-1/2 and logit1/2+ make much sense -- they're just slightly rescaled atan and tan, respectively. 2020-09-21T23:36:04Z Riastradh: (logistic-1/2 x) = (atan (* 2 x)) or (atan (/ x 2)) or something like that 2020-09-21T23:38:06Z Riastradh: (not thatit really hurts to have them around as something to reach for if you realize you're trying to logistic something ill-conditioned) 2020-09-21T23:38:21Z Riastradh: (kinda like the obscure trigonometric functions like versine and exsecant) 2020-09-21T23:40:49Z Riastradh: Also FYI: the only reason flo;log1p-guarded and flo:expm1-guarded exist is that flo:log1p and flo:expm1 were introduced as names for the Intel x87 instructions, which have a limited domain. Really shoulda been done another way, I think. 2020-09-21T23:41:56Z Riastradh: like flo:x87-log1p/flo:x87-expm1 as primitives, and separate primitives for flo:log1p/flo:expm1 to call libm on non-x87 platforms 2020-09-22T00:00:49Z aeth quit (Ping timeout: 258 seconds) 2020-09-22T00:01:07Z aeth joined #scheme 2020-09-22T00:08:05Z phillbush quit (Remote host closed the connection) 2020-09-22T00:36:31Z jcowan: arvyy = Arvydas Silenskas. He asked me why R7RS-large Orange was talking so long, and I asked him if he'd like to work on implementations. 2020-09-22T00:37:10Z jcowan: The result is that between him and Zipheir almost all the coding is done for Orange and I just have to pour what documentation there is into a SRFI mold. 2020-09-22T00:37:27Z jcowan: Mostly that means writing rationales, which are IMO the hardest part 2020-09-22T00:40:06Z jcowan: That's pretty much what you said to me earlier, so we are exporting logistic/logit, logsumexp, log1[mp]exp, and log-logistic/logit-exp 2020-09-22T00:51:37Z Riastradh: Sounds good. Does he know that there is source code available for the plots in MIT Scheme's reference manual -- doesn't have to be copied & pasted out manually with Inkscape? 2020-09-22T00:53:53Z madage quit (Remote host closed the connection) 2020-09-22T00:54:08Z madage joined #scheme 2020-09-22T00:54:18Z gmaggior quit (Ping timeout: 272 seconds) 2020-09-22T00:56:33Z Riastradh: ...some of this copypasta is a little problematic, e.g. everything from `;propagate NaN' onward in fllog1+exp is wrong. 2020-09-22T00:57:31Z Riastradh: Is he aware that raising a floating-point exception usually does not mean signalling an error with a control transfer, but rather just setting a bit of machine state that can be tested later? 2020-09-22T00:59:03Z Riastradh: (None of these procedure should call (error ...), except for the argument type errors.) 2020-09-22T01:00:50Z Zipheir: What is the correct Scheme way to handle that condition? 2020-09-22T01:01:44Z Zipheir: We lack a raise-floating-point-exception procedure. 2020-09-22T01:03:06Z Riastradh: Zipheir: In MIT Scheme, floating-point traps are disabled by default. You can enable them (on hardware that supports it) with flo:trap-exceptions! or flo:with-exceptions-trapped &c., and then if the hardware traps on a floating-point exception, a Scheme condition is raised. Otherwise, you can test the sticky bits with flo:test-exceptions &c. 2020-09-22T01:04:23Z Riastradh: And there's flo:raise-exceptions! to explicitly raise floating-point exceptions if you want -- either setting the sticky bit or raising a condition, depending on whether the exceptions you raised are trapped. 2020-09-22T01:04:39Z Zipheir: Riastradh: Thanks. 2020-09-22T01:04:51Z Zipheir: So, portably, there's probably not much you can do. 2020-09-22T01:05:22Z Riastradh: I don't know any other Scheme that supports floating-point exceptions. 2020-09-22T01:05:37Z Riastradh: But essentially every CPU on the planet does, and many of them -- except arm -- support trapping floating-point exceptions. 2020-09-22T01:05:42Z lritter quit (Ping timeout: 272 seconds) 2020-09-22T01:07:26Z gmaggior joined #scheme 2020-09-22T01:07:41Z elly joined #scheme 2020-09-22T01:08:32Z Riastradh: hullo elly 2020-09-22T01:08:41Z elly: hello Riastradh! long time 2020-09-22T01:09:08Z Riastradh: How's element 24? 2020-09-22T01:09:28Z elly: so far so good :) 2020-09-22T01:09:55Z elly: how's... I have to admit I forgot what you have been up to 2020-09-22T01:10:06Z Riastradh: Well I'm not up to it any more but I was at Brave last we talked. 2020-09-22T01:10:35Z phillbush joined #scheme 2020-09-22T01:10:38Z elly: ahhh, okay 2020-09-22T01:11:53Z Riastradh: Right at the moment I am trying to see how one can improve on complex expm1 x+iy by s := 2 + x, e0 := x - (s - 2), p := x*s, e1 := fma(x,s, -p), e := fma(x,e0, e1), return 0.5*log1p(e + fma(y,y, p)). 2020-09-22T01:12:16Z elly: improve on in what sense? 2020-09-22T01:12:20Z elly: also, what language is that 2020-09-22T01:12:35Z Riastradh: fewer flops, same error bounds 2020-09-22T01:12:54Z Riastradh: (oh, and that's the real part, i.e. actually computing log|1 + z|; the imaginary part, atan2(y, 1 + x), just works out everywhere) 2020-09-22T01:12:58Z elly: oh, I see 2020-09-22T01:13:06Z Riastradh: *shrug* any language you like 2020-09-22T01:13:08Z elly: that sounds like a fun puzzle 2020-09-22T01:14:25Z Riastradh: I haven't proven bounds on the error of this one but I'm pretty sure it'll work out well -- as long as 1/e <= |1 + z| <= e (outside this range you can just compute log|1 + z| directly), low relative error in evaluating |1 + z|^2 - 1 = 2x + x^2 + y^2 = x*(2 + x) + y^2 will carry through the 0.5*log1p(...) part. 2020-09-22T01:16:43Z Riastradh: (...that range for |1 + z|, [1/e, e], might not be quite right, but anyway in a ring containing the circle |1 + z| = 1 you want to use log1p and not log) 2020-09-22T01:24:48Z Riastradh: (This works because if -2 <= x <= 0 then s + e0 = 2 + x exactly, and p + e1 = x*(2 + x - e0) = x*(2 + x) - x*e0 exactly, so fma(y,y, p) = fl(x*(2 + x) - x*e0 - e1); then in case it cancels because x*(2 + x) + y^2 ~ 0 which can happen only when -2 <= x <= 0, we add back the error term x*e0 + e1.) 2020-09-22T01:29:42Z Riastradh: fma(y,y, p) = fl(y^2 + x*(2 + x) - x*e0 - e1), I mean 2020-09-22T01:30:36Z phillbush quit (Ping timeout: 256 seconds) 2020-09-22T01:31:05Z elly: my brain is not functional enough to validate that 2020-09-22T01:36:54Z phillbush joined #scheme 2020-09-22T01:55:15Z Zipheir quit (Quit: Eadem mutata resurgo.) 2020-09-22T01:56:19Z badkins quit (Remote host closed the connection) 2020-09-22T01:56:30Z badkins joined #scheme 2020-09-22T01:56:35Z badkins quit (Remote host closed the connection) 2020-09-22T01:56:54Z Riastradh: ...oh, I meant log1p above, not expm1. expm1(x+iy) is trickier when e^x cos y ~ 1. 2020-09-22T01:57:48Z Riastradh: The real part is e^x cos y - 1, of course, so... 2020-09-22T01:58:57Z Riastradh: Can write e^x cos y - 1 = (e^x - 1) cos y - cos y - 1 = expm1 x cos y - versin y, which helps when y ~ pi/2, but it doesn't help when 0 < y << pi/2 and e^x cos y ~ 1. 2020-09-22T02:00:10Z badkins joined #scheme 2020-09-22T02:00:23Z elly: does the chibi-scheme person still hang out here? I have forgotten their IRC name 2020-09-22T02:00:36Z Riastradh: foof 2020-09-22T02:00:40Z Riastradh: foof: you have a customer 2020-09-22T02:00:50Z elly: "customer" is strong 2020-09-22T02:00:56Z Riastradh: foof: you have a victim 2020-09-22T02:00:57Z elly: chibi is still my go-to scheme implementation though! 2020-09-22T02:01:15Z elly: I pretty much just want to know if chibi is still maintained 2020-09-22T02:02:00Z aeth: chibi has GOTOs? 2020-09-22T02:02:15Z Riastradh: Author: Alex Shinn 2020-09-22T02:02:15Z Riastradh: Date: Sat Sep 19 13:20:39 2020 +0900 2020-09-22T02:02:15Z Riastradh: Merge pull request #705 from laserswald/fix-arithmetic-exception-filenos 2020-09-22T02:02:15Z Riastradh: Prevent arithmetic exception when spawning lots of commands 2020-09-22T02:02:25Z elly: right, yes 2020-09-22T02:02:38Z Riastradh: aeth: You too can have gotos in the privacy of your own living room with ! 2020-09-22T02:03:03Z elly: I was wondering if it was headed towards 1.0 :) 2020-09-22T02:06:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-22T02:13:57Z muelleme joined #scheme 2020-09-22T02:16:11Z Zipheir joined #scheme 2020-09-22T02:19:10Z muelleme quit (Ping timeout: 272 seconds) 2020-09-22T02:21:03Z tryte quit (Ping timeout: 240 seconds) 2020-09-22T02:21:33Z tryte joined #scheme 2020-09-22T02:24:56Z phillbush quit (Remote host closed the connection) 2020-09-22T02:58:23Z Oddity_ quit (Read error: Connection reset by peer) 2020-09-22T02:58:53Z Oddity_ joined #scheme 2020-09-22T03:01:43Z lritter joined #scheme 2020-09-22T03:14:40Z muelleme joined #scheme 2020-09-22T03:19:23Z muelleme quit (Ping timeout: 258 seconds) 2020-09-22T03:40:40Z raingloom quit (Ping timeout: 265 seconds) 2020-09-22T03:58:43Z gravicappa joined #scheme 2020-09-22T04:04:03Z badkins joined #scheme 2020-09-22T04:08:42Z badkins quit (Ping timeout: 265 seconds) 2020-09-22T04:58:19Z marusich joined #scheme 2020-09-22T05:23:02Z aeth: Riastradh: what's the license of that code? 2020-09-22T05:26:21Z whiteline quit (Remote host closed the connection) 2020-09-22T05:26:39Z whiteline joined #scheme 2020-09-22T05:42:33Z nalaginrut quit (Ping timeout: 260 seconds) 2020-09-22T05:42:39Z DGASAU joined #scheme 2020-09-22T05:50:01Z Zipheir quit (Quit: reloading...) 2020-09-22T05:51:09Z Zipheir joined #scheme 2020-09-22T05:52:44Z lritter quit (Quit: Leaving) 2020-09-22T05:55:47Z nalaginrut joined #scheme 2020-09-22T06:03:28Z ggole joined #scheme 2020-09-22T06:08:14Z mirrorbird joined #scheme 2020-09-22T06:09:56Z gmaggior quit (Quit: Leaving) 2020-09-22T06:28:16Z tryte quit (Remote host closed the connection) 2020-09-22T06:28:30Z tryte joined #scheme 2020-09-22T06:30:12Z muelleme joined #scheme 2020-09-22T06:32:18Z cross quit (Quit: Lost terminal) 2020-09-22T06:47:27Z user51 joined #scheme 2020-09-22T06:50:56Z mirrorbird quit (Quit: Leaving) 2020-09-22T06:53:13Z jobol joined #scheme 2020-09-22T06:53:59Z akkad quit (Quit: Emacs must have died) 2020-09-22T07:20:48Z civodul joined #scheme 2020-09-22T07:26:52Z nerdypepper left #scheme 2020-09-22T07:36:28Z ManDay joined #scheme 2020-09-22T07:45:49Z arew quit (Quit: WeeChat 2.8) 2020-09-22T07:49:31Z amirouche joined #scheme 2020-09-22T07:58:54Z muelleme quit (Ping timeout: 260 seconds) 2020-09-22T08:00:46Z foof: aeth: yes, GOTOs are very natural to use when implementing a VM. 2020-09-22T08:01:19Z foof: elly: yes, chibi is maintained, but is mostly a one-person show and I'm busy with work and family, so new features are on hold. 2020-09-22T08:05:23Z badkins joined #scheme 2020-09-22T08:07:18Z notzmv` joined #scheme 2020-09-22T08:07:30Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-22T08:09:52Z hendursaga joined #scheme 2020-09-22T08:10:09Z badkins quit (Ping timeout: 260 seconds) 2020-09-22T08:10:34Z notzmv quit (Ping timeout: 260 seconds) 2020-09-22T08:11:23Z hendursa1 quit (Ping timeout: 240 seconds) 2020-09-22T08:15:49Z malaclyps quit (Ping timeout: 264 seconds) 2020-09-22T08:17:36Z supercoven joined #scheme 2020-09-22T08:17:37Z supercoven quit (Max SendQ exceeded) 2020-09-22T08:17:51Z supercoven joined #scheme 2020-09-22T08:17:52Z supercoven quit (Max SendQ exceeded) 2020-09-22T08:18:09Z supercoven joined #scheme 2020-09-22T08:19:51Z foof: as for 1.0... it's pretty stable these days, I may work towards a 1.0 release. 0.9.2 should be out shortly. 2020-09-22T08:22:54Z aeth: foof: would you time 1.0 with R7RS-large or do you think it won't line up? 2020-09-22T08:25:41Z rain1: I think I explored computed goto vs switch/case in C for VM implementation, and surprisingly switch/case is faster now - computed goto used to win 2020-09-22T08:25:49Z rain1: something to do with CPUs getting more advanced 2020-09-22T08:26:55Z foof: R7RS-large is extremely large, and I don't think it will make sense to bundle all of it with Chibi (which is still serving the embedded niche). 2020-09-22T08:27:32Z aeth: rain1: have you tried looking at this to see what various things output? https://godbolt.org/ 2020-09-22T08:27:46Z foof: Also the scope of R7RS-large is huge, maybe another 10 years at the current pace. I would expect Chibi 1.0 before that. 2020-09-22T08:28:11Z aeth: foof: I always imagined that R7RS-large in the smaller Schemes would just be the non-portable parts. 2020-09-22T08:29:15Z rain1: what does the compiler produce? computed jmps for computed goto and known jmps for switch/case 2020-09-22T08:32:33Z supercoven_ joined #scheme 2020-09-22T08:35:01Z supercoven quit (Ping timeout: 265 seconds) 2020-09-22T08:35:50Z notzmv`` joined #scheme 2020-09-22T08:36:38Z marusich quit (Ping timeout: 244 seconds) 2020-09-22T08:37:51Z cpressey joined #scheme 2020-09-22T08:38:59Z notzmv` quit (Ping timeout: 240 seconds) 2020-09-22T09:11:42Z malaclyps joined #scheme 2020-09-22T09:19:00Z ManDay quit (Ping timeout: 244 seconds) 2020-09-22T09:25:56Z nalaginrut quit (Remote host closed the connection) 2020-09-22T09:28:01Z ManDay joined #scheme 2020-09-22T09:29:18Z abralek[m] quit (Ping timeout: 258 seconds) 2020-09-22T09:29:36Z abralek[m] joined #scheme 2020-09-22T09:37:23Z mirrorbird joined #scheme 2020-09-22T09:41:29Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-22T09:42:39Z abralek[m] joined #scheme 2020-09-22T09:46:37Z user51: is this the right place to look at if i want to do stuff with unsigned bytes? https://docs.racket-lang.org/srfi/srfi-std/srfi-4.html?q=u16#u8vector 2020-09-22T09:47:33Z supercoven joined #scheme 2020-09-22T09:47:36Z wasamasa: srfi-4 is, yes 2020-09-22T09:49:25Z supercoven__ joined #scheme 2020-09-22T09:51:22Z supercoven_ quit (Ping timeout: 272 seconds) 2020-09-22T09:52:26Z supercoven quit (Ping timeout: 256 seconds) 2020-09-22T10:01:34Z supercoven joined #scheme 2020-09-22T10:04:14Z user51: doesn't seem like it defines addition or any other operation, where should i look for that? 2020-09-22T10:04:54Z supercoven__ quit (Ping timeout: 260 seconds) 2020-09-22T10:06:30Z badkins joined #scheme 2020-09-22T10:08:38Z supercoven quit (Max SendQ exceeded) 2020-09-22T10:08:51Z supercoven joined #scheme 2020-09-22T10:11:38Z badkins quit (Ping timeout: 272 seconds) 2020-09-22T10:15:54Z supercoven quit (Max SendQ exceeded) 2020-09-22T10:16:12Z supercoven joined #scheme 2020-09-22T10:20:19Z cpape quit (Remote host closed the connection) 2020-09-22T10:21:21Z cpape` joined #scheme 2020-09-22T10:27:19Z ManDay quit (Quit: WeeChat 2.9) 2020-09-22T10:27:27Z wasamasa: you'll have to define them yourselves 2020-09-22T10:27:46Z gravicappa joined #scheme 2020-09-22T10:32:44Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-22T10:49:23Z edgar-rft quit (Quit: Leaving) 2020-09-22T10:49:42Z notzmv`` is now known as notzmv 2020-09-22T10:49:51Z notzmv quit (Changing host) 2020-09-22T10:49:51Z notzmv joined #scheme 2020-09-22T10:55:19Z even4void joined #scheme 2020-09-22T11:08:04Z cpressey joined #scheme 2020-09-22T11:08:31Z webshinra quit (Remote host closed the connection) 2020-09-22T11:14:28Z mirrorbird quit (Quit: Leaving) 2020-09-22T11:22:37Z phillbush joined #scheme 2020-09-22T11:24:35Z supercoven quit (Ping timeout: 240 seconds) 2020-09-22T11:33:58Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-22T11:39:16Z supercoven joined #scheme 2020-09-22T11:39:47Z supercoven_ joined #scheme 2020-09-22T11:44:18Z supercoven quit (Ping timeout: 260 seconds) 2020-09-22T11:55:36Z daviid quit (Ping timeout: 265 seconds) 2020-09-22T11:55:36Z aaaaaa joined #scheme 2020-09-22T11:56:02Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-22T12:07:25Z badkins joined #scheme 2020-09-22T12:11:50Z badkins quit (Ping timeout: 260 seconds) 2020-09-22T12:21:20Z raingloom joined #scheme 2020-09-22T12:33:40Z TheInformaticist joined #scheme 2020-09-22T12:34:39Z TheInformaticist: Does anyone here use STklos Scheme? 2020-09-22T12:34:46Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-22T12:35:29Z TheInformaticist: I'm about to try installing it from a tarball, wish me luck. 2020-09-22T12:36:58Z gravicappa joined #scheme 2020-09-22T12:44:09Z wasamasa: you're trying to rack up as many unpopular schemes as you can? 2020-09-22T12:44:18Z wasamasa: it's notable for having GTK integration 2020-09-22T12:44:52Z wasamasa: I like how their gitlab repo can't make up their mind whether they're r5rs or r7rs compliant 2020-09-22T12:47:02Z wasamasa: title says almost r5rs-compliant, README speaks of varying degrees of r7rs compliance 2020-09-22T12:47:06Z aaaaaa quit (Ping timeout: 258 seconds) 2020-09-22T12:47:25Z badkins joined #scheme 2020-09-22T12:51:36Z TheInformaticist: wasamasa: I have my reasons. I don't usually follow the path of least resistance. I find that I learn more that way. 2020-09-22T12:52:09Z TheInformaticist: wasamasa: Have you ever used STklos? 2020-09-22T12:52:23Z wasamasa: I've briefly looked into it when researching the state of GUIs with scheme 2020-09-22T12:52:58Z TheInformaticist: wasamasa: It was formerly called... 2020-09-22T12:53:13Z TheInformaticist: Just STK 2020-09-22T12:59:10Z wasamasa: but ultimately it depends what you want to do with the scheme 2020-09-22T12:59:19Z wasamasa: I wouldn't pick it as my main one 2020-09-22T13:11:45Z cpressey joined #scheme 2020-09-22T13:19:48Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-22T13:20:24Z aaaaaa joined #scheme 2020-09-22T13:21:29Z aaaaaa quit (Client Quit) 2020-09-22T13:21:48Z TheInformaticist: I got to the end of the ./configure, and it said "cd: gc: No such file or directory" 2020-09-22T13:22:41Z TheInformaticist: and ".configure: no such file or directory" 2020-09-22T13:24:15Z TheInformaticist: I don't have much experience with compiling and installing tarballs, so I don't know what the issue is, but when I tried to run make it said No targets specified and no makefile found. Stop. 2020-09-22T13:26:31Z wasamasa: perhaps you need to generate stuff with `autoreconf -fi` 2020-09-22T13:27:20Z TheInformaticist: wasamasa: OK. I'll try that. 2020-09-22T13:29:10Z TheInformaticist: wasamasa: it says configure.ac or configure.in is required...but let me check the filenames real quick. 2020-09-22T13:30:36Z TheInformaticist: I think I see the problem. There is a configure.ac file, but it's named stklos-1.50/ffi/configure.ac 2020-09-22T13:31:17Z TheInformaticist: does that need to be renamed? 2020-09-22T13:31:18Z wasamasa: that's the libffi one 2020-09-22T13:31:20Z wasamasa: so nope 2020-09-22T13:31:26Z madage quit (Remote host closed the connection) 2020-09-22T13:31:40Z wasamasa: there's a configure.ac and aclocal.m4 in the git repo 2020-09-22T13:31:43Z madage joined #scheme 2020-09-22T13:31:49Z wasamasa: so I'd assume autoconf tools work 2020-09-22T13:32:03Z wasamasa: but who knows how the tarball is 2020-09-22T13:32:17Z TheInformaticist: I downloded this from their website. 2020-09-22T13:32:27Z wasamasa: if you want to cheat: https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=stklos 2020-09-22T13:32:59Z wasamasa: PKGBUILDs spell out how to build stuff very clearly 2020-09-22T13:33:25Z TheInformaticist: If I get desparate. I'm a Pardus user, btw. 2020-09-22T13:34:40Z TheInformaticist: I'll check the git repo. Might need to start over. 2020-09-22T13:35:35Z TheInformaticist: I got the .tar.gz here: https://stklos.net/download.html 2020-09-22T13:36:08Z terpri joined #scheme 2020-09-22T13:36:27Z terpri_ quit (Ping timeout: 240 seconds) 2020-09-22T13:50:59Z TheInformaticist: wasamasa: Things are going swimmingly now. I was in the wrong directory :-/ 2020-09-22T13:56:36Z wasamasa: lol 2020-09-22T13:59:09Z even4void quit (Remote host closed the connection) 2020-09-22T14:29:36Z TheInformaticist: alright. Had to sort out a couple make install errors. I have only installed software this way maybe three times. I guess I need to install one of these things like Gentoo or Linux from Scratch to get really familiar with the whole system. 2020-09-22T14:30:17Z h11 joined #scheme 2020-09-22T14:30:31Z rain1: i used scheme for a decade and i never heard of STklos Scheme 2020-09-22T14:30:59Z Riastradh: aeth: license of which code? 2020-09-22T14:33:06Z TheInformaticist: STklos is used by one of my heroes. I've been meaning to try it out for a long time, and was always too busy. 2020-09-22T14:44:18Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-22T14:52:37Z TheInformaticist left #scheme 2020-09-22T14:56:06Z phillbush quit (Ping timeout: 260 seconds) 2020-09-22T15:13:42Z Tirifto joined #scheme 2020-09-22T15:23:45Z cpressey joined #scheme 2020-09-22T15:36:56Z v_m_v joined #scheme 2020-09-22T15:39:03Z badkins quit (Remote host closed the connection) 2020-09-22T15:39:41Z badkins joined #scheme 2020-09-22T15:40:26Z abralek[m] quit (Ping timeout: 256 seconds) 2020-09-22T15:40:35Z abralek[m] joined #scheme 2020-09-22T15:42:18Z raingloom quit (Ping timeout: 256 seconds) 2020-09-22T15:43:43Z jcowan: I had no trouble making it work on both 32-bit and 64-bit Linux boxen. All the Schemes I used for testing are listed at https://github.com/johnwcowan/r7rs-work/blob/master/ImplementationContrasts.md 2020-09-22T15:45:13Z badkins quit (Ping timeout: 264 seconds) 2020-09-22T15:46:20Z jcowan: along with links to the tests themselves 2020-09-22T15:53:14Z badkins joined #scheme 2020-09-22T15:55:11Z tryte quit (Remote host closed the connection) 2020-09-22T15:55:26Z tryte joined #scheme 2020-09-22T15:56:06Z v_m_v quit (Remote host closed the connection) 2020-09-22T15:59:38Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-22T16:01:55Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-22T16:02:05Z abralek[m] joined #scheme 2020-09-22T16:08:24Z copec quit (Quit: checkity check out.) 2020-09-22T16:08:44Z copec joined #scheme 2020-09-22T16:11:02Z amirouche quit (Ping timeout: 256 seconds) 2020-09-22T16:14:57Z raingloom joined #scheme 2020-09-22T16:17:15Z marusich joined #scheme 2020-09-22T16:24:19Z arew joined #scheme 2020-09-22T16:30:51Z arew: hello #scheme! 2020-09-22T16:36:00Z rain1: hi 2020-09-22T16:36:45Z arew: rain1: what are you up to? 2020-09-22T16:39:17Z badkins quit (Remote host closed the connection) 2020-09-22T16:40:31Z badkins joined #scheme 2020-09-22T16:44:30Z rain1: i just tidied up my bookmarks, posted some of the interesting ones to laarc.io 2020-09-22T16:54:17Z marusich quit (Ping timeout: 260 seconds) 2020-09-22T17:01:33Z raingloom quit (Ping timeout: 265 seconds) 2020-09-22T17:02:01Z phwalkr joined #scheme 2020-09-22T17:02:40Z phwalkr quit (Client Quit) 2020-09-22T17:09:02Z badkins quit (Remote host closed the connection) 2020-09-22T17:12:26Z badkins joined #scheme 2020-09-22T17:12:38Z smazga joined #scheme 2020-09-22T17:15:20Z supercoven_ quit (Ping timeout: 272 seconds) 2020-09-22T17:15:58Z aeth quit (Ping timeout: 272 seconds) 2020-09-22T17:16:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-22T17:17:17Z aeth joined #scheme 2020-09-22T17:22:28Z brown121407 quit (Changing host) 2020-09-22T17:22:28Z brown121407 joined #scheme 2020-09-22T17:25:08Z mmohammadi9812 joined #scheme 2020-09-22T17:28:13Z badkins joined #scheme 2020-09-22T17:45:26Z hugh_marera joined #scheme 2020-09-22T17:54:57Z mirrorbird joined #scheme 2020-09-22T18:00:32Z hugh_marera quit (Quit: hugh_marera) 2020-09-22T18:00:49Z hugh_marera joined #scheme 2020-09-22T18:08:45Z terpri_ joined #scheme 2020-09-22T18:09:32Z terpri quit (Ping timeout: 260 seconds) 2020-09-22T18:12:50Z terpri_ quit (Client Quit) 2020-09-22T18:13:08Z terpri_ joined #scheme 2020-09-22T18:17:07Z bitmapper joined #scheme 2020-09-22T18:22:53Z muelleme joined #scheme 2020-09-22T18:31:37Z phillbush joined #scheme 2020-09-22T18:31:44Z Zipheir: Do bytevector-map and bytevector-for-each exist in a library/SRFI somewhere? 2020-09-22T18:32:14Z Zipheir: Both R7RS and the R6RS bytevector library omit them, it seems. 2020-09-22T18:33:49Z gravicappa quit (Ping timeout: 264 seconds) 2020-09-22T18:34:21Z ecraven: many of these sort of functions do not exist in the standards :-/ 2020-09-22T18:35:32Z gravicappa joined #scheme 2020-09-22T18:37:26Z Zipheir: ecraven: Thanks. 2020-09-22T18:37:26Z gwatt: do you want to iterate over (un)signed-{8,16,32,64} bit numbers? 2020-09-22T18:37:45Z Zipheir: Sounds like a job for a small SRFI. 2020-09-22T18:37:54Z ecraven: gwatt: it's a bytevector, presumably bytes :P 2020-09-22T18:38:03Z Zipheir: gwatt: bytevector-u8-map/-for-each, then :) 2020-09-22T18:38:44Z gwatt: Ooh, I also forgot about the floating point and endian variants 2020-09-22T18:39:50Z Zipheir: How would those work in the context of a map function? 2020-09-22T18:40:40Z gwatt: You want to map over the bytevector as if it's a bunch of floats that are stored in big endian form 2020-09-22T18:41:08Z Zipheir: It seems to me that map doesn't care about the endianness of your data. As usual, the dynamic order of application is unspecified. With for-each, there's room for reverse-for-each, I guess. 2020-09-22T18:41:21Z Zipheir: Hmm. 2020-09-22T18:42:00Z badkins quit (Remote host closed the connection) 2020-09-22T18:42:25Z gwatt: Zipheir: map and for-each don't care about the endianess, but your values may be stored in non-nnative endianess in the bytevector 2020-09-22T18:42:34Z Zipheir: Of course. 2020-09-22T18:42:38Z badkins joined #scheme 2020-09-22T18:43:27Z Zipheir: That's what I meant. I didn't see a reason to have endianness options in map or for-each, since they're just iterating over a structure. 2020-09-22T18:43:30Z mmohammadi98122 joined #scheme 2020-09-22T18:43:39Z mmohammadi98122 quit (Client Quit) 2020-09-22T18:44:05Z mmohammadi9812 quit (Ping timeout: 240 seconds) 2020-09-22T18:45:35Z gmaggior joined #scheme 2020-09-22T18:47:38Z Zipheir: Oh, duh, they're in SRFI 160. *Provided* bytevectors are the same thing as u8vectors. 2020-09-22T18:47:51Z Zipheir: Outside of Guile this is true, IIRC> 2020-09-22T18:47:53Z badkins quit (Ping timeout: 265 seconds) 2020-09-22T18:53:08Z jcowan: Zipheir: SRFI 160 2020-09-22T18:53:31Z Tirifto quit (Quit: Leaving.) 2020-09-22T18:54:22Z jcowan: We put just the bare minimum into R7RS-small because we didn't know how bytevectors would be used: as a blob for building @vectors or as a blob on top of which vector-like operations could be done, a la R6RS. The answer turned out to be "both". 2020-09-22T18:54:43Z jobol quit (Quit: Leaving) 2020-09-22T18:55:10Z Zipheir: jcowan: Interesting. 2020-09-22T18:57:04Z Zipheir: I guess it's fine to import u8vector-for-each from 160 and use it on bytevectors, then. 2020-09-22T18:57:29Z jcowan: Yes, modulo Guile as you say 2020-09-22T18:58:07Z badkins joined #scheme 2020-09-22T18:58:28Z jcowan: One thing that is still lacking is a SRFI with bytevector->@vector bulk conversions. That is where endianness would come in. 2020-09-22T19:00:08Z edgar-rft joined #scheme 2020-09-22T19:09:30Z mmohammadi9812 joined #scheme 2020-09-22T19:10:48Z smazga quit (Read error: Connection reset by peer) 2020-09-22T19:10:53Z zgasma joined #scheme 2020-09-22T19:25:44Z ggole quit (Quit: Leaving) 2020-09-22T19:25:53Z hugh_marera quit (Quit: hugh_marera) 2020-09-22T19:26:20Z hugh_marera joined #scheme 2020-09-22T19:28:03Z wasamasa: TIL: https://gitlab.com/weinholt/TerribleTLS 2020-09-22T19:28:37Z wasamasa: maybe this is what pushes me into giving r6rs a try 2020-09-22T19:29:56Z Zipheir: Wow. It doesn't look like it relies on too much of R6. 2020-09-22T19:34:40Z jcowan: Industria is a very interesting library 2020-09-22T19:35:11Z jcowan: If you had to pick just one, which is better, internal define or letrec*? 2020-09-22T19:35:16Z wasamasa: I'm spelunking here because someone asked about why CHICKEN doesn't have akku support 2020-09-22T19:35:26Z wasamasa: and I can't quite see whether that would make sense or not 2020-09-22T19:35:45Z webshinra joined #scheme 2020-09-22T19:35:48Z wasamasa: the akku website suggests r7rs support is sufficient to use akku, but doesn't show which packages expect what standard and support which implementations 2020-09-22T19:36:00Z raingloom joined #scheme 2020-09-22T19:36:07Z wasamasa: if it's only the mirrored snow packages that are supported, there wouldn't be much of a point 2020-09-22T19:37:56Z jcowan: no, it's more than that, akku will translate r6 packages to r7 on the fly 2020-09-22T19:38:18Z jcowan: e.g. `library` forms are translated to `define-library` forms 2020-09-22T19:39:06Z jcowan: If it refers to r6 packages your r7 system lacks, I don't know if it makes any effort to translate those. 2020-09-22T19:39:14Z wasamasa: isn't it the other way around 2020-09-22T19:39:27Z wasamasa: > Automatically convert R7RS libraries for use in R6RS projects. 2020-09-22T19:39:41Z jcowan: Hmm. 2020-09-22T19:40:19Z jcowan: BTW, what you typed came out funky on this client. Did you prefix the quote with > or something? 2020-09-22T19:40:25Z Zipheir: jcowan: I'd probably pick letrec*, since you can control the scope of the bindings. 2020-09-22T19:40:26Z wasamasa: yes 2020-09-22T19:40:35Z wasamasa: it's the most convenient way of quoting 2020-09-22T19:40:43Z wasamasa: you'd prefer an unbalanced single quote? 2020-09-22T19:40:50Z jcowan laughs 2020-09-22T19:41:00Z Zipheir: wasamasa: Markdown agrees. 2020-09-22T19:41:18Z jcowan: No, it's displayed to me on a separate line with a change-bar (fat vertical line) on the left. 2020-09-22T19:41:28Z wasamasa: I've first seen it on 4chan 2020-09-22T19:41:29Z jcowan: Which is reasonable, I just wondered how people made that happen. 2020-09-22T19:41:34Z arew: I prefer internal define. 2020-09-22T19:41:39Z wasamasa: later I've learned that email did this for far longer 2020-09-22T19:41:47Z jcowan: Oh Ghu yes. 2020-09-22T19:42:00Z jcowan: I still see emails with >>>> >> >>> lines 2020-09-22T19:42:12Z jcowan: Which is a whole lot better than top-posting. 2020-09-22T19:43:57Z Zipheir: arew: The funky thing about internal define is that the binding has the entire "body" (of whatever lambda form you're writing) for its scope, and there's no way to change that. Usually that's not necessary. 2020-09-22T19:44:41Z Zipheir: Admittedly, (letrec* ((f (lambda (x ...) ...)) ...) ...) isn't wonderfully concise. 2020-09-22T19:45:02Z arew: Zipheir: what is the problem with that? I prefer internal define because... it is concise and takes less horizontal space 2020-09-22T19:45:27Z arew: the compiler or interpreter can sort this out iirc. 2020-09-22T19:49:18Z Zipheir: arew: Scope is everything! (Dan Friedman) 2020-09-22T19:50:00Z v_m_v joined #scheme 2020-09-22T19:51:42Z Zipheir: SICP makes extensive use of internal define, but I think 80% of those uses could just be lets. That suggests to me that it's prone to overuse. 2020-09-22T19:53:34Z Zipheir: Instead of a name which is in scope for one specific lambda body, you get the name spilling out all over the form. This is not Python! 2020-09-22T19:54:49Z v_m_v quit (Ping timeout: 272 seconds) 2020-09-22T19:54:58Z dead10cc joined #scheme 2020-09-22T19:56:28Z jcowan: Zipheir: If you want a smaller scope you can wrap it in a (let () ...) 2020-09-22T19:57:07Z jcowan: I have occasionally written inner blocks in C using {} precisely to control scope. 2020-09-22T19:57:25Z jcowan: (in macros, not by hand) 2020-09-22T19:58:31Z Zipheir: jcowan: True. 2020-09-22T19:59:15Z v_m_v joined #scheme 2020-09-22T20:00:28Z stranger joined #scheme 2020-09-22T20:00:37Z badkins quit (Remote host closed the connection) 2020-09-22T20:01:10Z badkins joined #scheme 2020-09-22T20:01:15Z jcowan: #define SWAP(type, A, B) {type foo = a; a = b; b = foo} 2020-09-22T20:01:18Z gmaggior quit (Ping timeout: 260 seconds) 2020-09-22T20:03:44Z jcowan: okay, internal defines it is. 2020-09-22T20:03:48Z v_m_v quit (Ping timeout: 244 seconds) 2020-09-22T20:04:00Z fizzie: Terribly off-topic, but can't let that slide; it should really be a `do { ... } while (0)` wrapper. Otherwise, consider `if (x) SWAP(int, a, b); else SWAP(int, a, c);`. 2020-09-22T20:04:07Z dead10cc quit (Ping timeout: 240 seconds) 2020-09-22T20:04:44Z badkins quit (Remote host closed the connection) 2020-09-22T20:04:54Z badkins_ joined #scheme 2020-09-22T20:06:12Z v_m_v joined #scheme 2020-09-22T20:06:48Z jcowan: Ah, good point. 2020-09-22T20:07:24Z jcowan: I reconstructed it from memory, but since I never omit {}s in compound statements it doesn't come up for me. 2020-09-22T20:08:19Z stranger: why can't C get a macro system like scheme? 2020-09-22T20:08:59Z wasamasa: rust acquired a hygienic macro system 2020-09-22T20:09:29Z arew: stranger: partly because of the syntax, defining macros in a language that non homiconic is difficult, macros are difficult to write. 2020-09-22T20:09:41Z wasamasa: so I'm sure given enough effort one could make a cpp offering that 2020-09-22T20:09:48Z arew: oh no! 2020-09-22T20:10:10Z jcowan: That's tolerable, yes 2020-09-22T20:10:48Z jcowan: Pure does syntax-rules macros well, but that's because Pure code is already in the form of rewrite rules, so you just prefix them with def to show that they are executed at compile time. 2020-09-22T20:10:57Z jcowan: I looooove Pure to death 2020-09-22T20:11:00Z izh_ joined #scheme 2020-09-22T20:11:14Z arew: the name does not inspire confidance 2020-09-22T20:12:55Z stranger: wasamasa: interesting, so the syntax wasn't a problem for them? 2020-09-22T20:13:07Z stranger: the macros they have are inspired by D's iirc 2020-09-22T20:13:27Z jcowan: Oh, Pure is impure, no worries. 2020-09-22T20:14:12Z gmaggior joined #scheme 2020-09-22T20:14:34Z smazga joined #scheme 2020-09-22T20:14:35Z zgasma quit (Read error: Connection reset by peer) 2020-09-22T20:14:59Z jcowan: More or less like SML: it has a box type and a nice FFI, but otherwise pure. The other cool thing is that it's designed to baffle people who think they understand rewriting systems: "What do you mean, it's not pure? What do you mean, it's not confluent? What do you mean, it uses outward-in instead of inward-out evaluation?" 2020-09-22T20:20:39Z stranger left #scheme 2020-09-22T20:21:14Z hugh_marera quit (Quit: hugh_marera) 2020-09-22T20:22:43Z gravicappa quit (Ping timeout: 246 seconds) 2020-09-22T20:24:05Z muelleme quit (Ping timeout: 240 seconds) 2020-09-22T20:29:21Z user51 quit (Quit: leaving) 2020-09-22T20:33:19Z aeth: jcowan: It's not quite C programming, but I use inner blocks in C++ to use {} for the scope all of the time. It really fits having multiple iterators very well, although that's probably just my Lisp/Scheme way of thinking showing, too. 2020-09-22T20:33:42Z aeth: So if I need to iterate over multiple sequences I'd just do { auto foo = ...; auto bar = ...; ... } 2020-09-22T20:37:32Z aeth: This is the only time I really find the need for an inner scope in curly-bracket languages. 2020-09-22T20:38:21Z aeth: Iirc, there's some technicaly that makes for (...) { ... } not quite work here, otherwise that would probably be the way to go. 2020-09-22T20:38:27Z aeth: *technicality 2020-09-22T20:40:35Z badkins_ quit (Remote host closed the connection) 2020-09-22T20:41:08Z badkins joined #scheme 2020-09-22T20:46:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-22T20:46:54Z arew: I am too tired to do anything useful :( 2020-09-22T20:47:02Z arew: Also I can not sleep. 2020-09-22T20:51:10Z muelleme joined #scheme 2020-09-22T20:57:00Z muelleme quit (Ping timeout: 272 seconds) 2020-09-22T21:00:00Z smazga quit (Quit: leaving) 2020-09-22T21:00:32Z edgar-rft quit (Quit: Leaving) 2020-09-22T21:02:34Z v_m_v quit (Remote host closed the connection) 2020-09-22T21:21:29Z jcowan: oops; s/outward-in instead of inward-out/inward-out instead of outward-in/ 2020-09-22T21:28:41Z jcowan: Of course if your rules are (forced to be) confluent, the order doesn't matter, but since they aren't, it does matter. 2020-09-22T21:35:34Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-22T21:36:41Z izh_ quit (Quit: Leaving) 2020-09-22T21:39:19Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-22T21:52:35Z hugh_marera joined #scheme 2020-09-22T21:52:38Z hugh_marera quit (Remote host closed the connection) 2020-09-22T21:59:55Z evhan quit (Ping timeout: 240 seconds) 2020-09-22T22:00:02Z evhan` joined #scheme 2020-09-22T22:03:21Z webshinra quit (Remote host closed the connection) 2020-09-22T22:04:07Z Duns_Scrotus quit (Ping timeout: 240 seconds) 2020-09-22T22:04:10Z conjunctive quit (Read error: Connection reset by peer) 2020-09-22T22:04:15Z webshinra joined #scheme 2020-09-22T22:04:29Z travv0 quit (Read error: Connection reset by peer) 2020-09-22T22:04:37Z rickbutton quit (Read error: Connection reset by peer) 2020-09-22T22:04:55Z Duns_Scrotus joined #scheme 2020-09-22T22:04:57Z rann quit (Read error: Connection reset by peer) 2020-09-22T22:05:14Z rickbutton joined #scheme 2020-09-22T22:05:42Z travv0 joined #scheme 2020-09-22T22:05:51Z conjunctive joined #scheme 2020-09-22T22:06:28Z rann joined #scheme 2020-09-22T22:16:21Z webshinra quit (Remote host closed the connection) 2020-09-22T22:20:41Z webshinra joined #scheme 2020-09-22T22:22:38Z muelleme joined #scheme 2020-09-22T22:23:10Z gmaggior quit (Ping timeout: 260 seconds) 2020-09-22T22:27:48Z muelleme quit (Ping timeout: 265 seconds) 2020-09-22T22:36:03Z gmaggior joined #scheme 2020-09-22T22:53:08Z badkins joined #scheme 2020-09-22T22:58:08Z badkins quit (Ping timeout: 258 seconds) 2020-09-22T23:04:56Z badkins joined #scheme 2020-09-22T23:23:24Z muelleme joined #scheme 2020-09-22T23:28:15Z muelleme quit (Ping timeout: 272 seconds) 2020-09-22T23:41:25Z daviid joined #scheme 2020-09-23T00:21:18Z phillbush quit (Remote host closed the connection) 2020-09-23T00:57:47Z marusich joined #scheme 2020-09-23T00:58:06Z evdubs quit (Quit: Leaving) 2020-09-23T01:00:35Z evdubs joined #scheme 2020-09-23T01:06:25Z v_m_v joined #scheme 2020-09-23T01:10:41Z v_m_v quit (Ping timeout: 246 seconds) 2020-09-23T01:13:30Z raingloom quit (Ping timeout: 260 seconds) 2020-09-23T01:30:23Z webshinra quit (Remote host closed the connection) 2020-09-23T01:47:39Z badkins quit (Remote host closed the connection) 2020-09-23T01:49:47Z marusich quit (Ping timeout: 260 seconds) 2020-09-23T01:49:48Z badkins joined #scheme 2020-09-23T01:54:28Z badkins quit (Ping timeout: 258 seconds) 2020-09-23T02:10:56Z terpri_ is now known as terpri 2020-09-23T02:13:38Z Aurora_iz_kosmos joined #scheme 2020-09-23T02:17:46Z evdubs_ joined #scheme 2020-09-23T02:17:54Z Aurora_v_kosmose quit (Quit: Пока, мир.) 2020-09-23T02:18:15Z Aurora_iz_kosmos is now known as Aurora_v_kosmose 2020-09-23T02:19:53Z drakonis quit (Quit: ZNC 1.8.1 - https://znc.in) 2020-09-23T02:22:06Z gmaggior quit (Ping timeout: 260 seconds) 2020-09-23T02:27:31Z evdubs quit (*.net *.split) 2020-09-23T02:27:34Z cky quit (*.net *.split) 2020-09-23T02:30:26Z drakonis joined #scheme 2020-09-23T02:31:49Z webshinra joined #scheme 2020-09-23T02:33:54Z cky joined #scheme 2020-09-23T02:34:32Z gmaggior joined #scheme 2020-09-23T02:42:59Z webshinra quit (Remote host closed the connection) 2020-09-23T02:48:50Z edgar-rft joined #scheme 2020-09-23T02:55:37Z webshinra joined #scheme 2020-09-23T03:10:18Z gmaggior quit (Quit: Leaving) 2020-09-23T03:51:27Z badkins joined #scheme 2020-09-23T03:55:37Z badkins quit (Ping timeout: 246 seconds) 2020-09-23T04:06:33Z tristero quit (Ping timeout: 260 seconds) 2020-09-23T04:10:58Z daviid` joined #scheme 2020-09-23T04:12:52Z gravicappa joined #scheme 2020-09-23T04:14:00Z daviid quit (Ping timeout: 272 seconds) 2020-09-23T04:25:36Z teardown quit (Ping timeout: 256 seconds) 2020-09-23T04:37:48Z mmohammadi9812 joined #scheme 2020-09-23T04:57:53Z daviid` quit (Remote host closed the connection) 2020-09-23T04:58:12Z daviid` joined #scheme 2020-09-23T05:34:51Z teardown joined #scheme 2020-09-23T05:42:23Z lockywolf: How do blogs get to PlanetScheme? 2020-09-23T05:50:24Z aeth: this? http://scheme.dk/planet/ 2020-09-23T05:50:49Z user51 joined #scheme 2020-09-23T05:52:03Z lockywolf: Is there any other? 2020-09-23T05:52:04Z aeth: Oh, that's sad, it still mentions Google Reader. I miss Google Reader. 2020-09-23T05:52:27Z mdhughes: Yeah, I've tried finding his email or twitter, no responses. It's a zombie planet. 2020-09-23T05:52:44Z aeth: that could've been on autopilot for 10 years 2020-09-23T05:52:59Z aeth: probably not, though 2020-09-23T05:53:20Z lockywolf: I tagged JA on Twitter, but he turned off private messages. 2020-09-23T05:53:36Z lockywolf: So I couldn't send him a message directly. 2020-09-23T05:53:39Z aeth: lol it links to Planet Haskell on the side and Planet Haskell looks like it's about Rust now. https://planet.haskell.org/ 2020-09-23T05:54:16Z lockywolf: and www.planetplanet.org is dead 2020-09-23T05:54:23Z aeth: Yes, I tried that link too 2020-09-23T05:54:23Z lockywolf: just as schemecookbook 2020-09-23T05:54:27Z aeth: I mean, none of these links are helpful 2020-09-23T05:54:34Z aeth: But I'm trying them anyway 2020-09-23T05:55:13Z lockywolf: Speaking of Google Reader, it was a nice time when each facebook page had an RSS feed. 2020-09-23T05:55:27Z aeth: I didn't know that. That would have helped me 2020-09-23T05:55:51Z klovett quit (Remote host closed the connection) 2020-09-23T05:55:51Z lockywolf: It was a long time ago. 2020-09-23T05:55:55Z aeth: I stopped using Facebook a long time ago. 2020-09-23T05:56:03Z lockywolf: fb rss feeds were removed ~2011 2020-09-23T05:56:29Z klovett joined #scheme 2020-09-23T05:56:41Z aeth: yeah, I think I still used FB back then... 2020-09-23T05:56:55Z lockywolf: People hadn't yet adopted the maxim that "data is the new oil". 2020-09-23T05:57:17Z aeth: nah, you want to be open when you're growing, e.g. Twitter 2020-09-23T05:57:26Z aeth: You close down once you have lock-in and users 2020-09-23T05:57:50Z aeth: If millions of people used Freenode, we'd all be forced to migrate to https://webchat.freenode.net/ as our IRC client 2020-09-23T05:58:00Z aeth: (And if not at millions, then at billions.) 2020-09-23T05:58:27Z lockywolf: But in any case, it is a scheme blog aggregator that still works, just needs a few scratches polished. 2020-09-23T05:59:38Z lockywolf: People largely stopped writing blogs in 2013 2020-09-23T06:00:56Z lockywolf: I'm still using Facebook. The key to efficient Facebook usage is to never read anything there, only write. 2020-09-23T06:02:19Z aeth: I stopped using Facebook when too many high school acquaintances started getting married and immediately having children and posting baby pictures. I was in my early 20s still. I wanted to lose touch with everyone before the divorce posts started happening. 2020-09-23T06:03:25Z lockywolf: why? 2020-09-23T06:03:32Z lockywolf: that seems a natural part of life 2020-09-23T06:03:49Z aeth: Yes, it is, just 8 or so years too early. 2020-09-23T06:04:04Z lockywolf: USA? 2020-09-23T06:04:08Z aeth: Yes. 2020-09-23T06:04:15Z lockywolf: ah, ok... 2020-09-23T06:04:57Z Zipheir: It's just that the blogging fad started dying out in 2013. People still write lots of blogs, but I think they're no longer people expecting to make millions on it. 2020-09-23T06:05:04Z aeth: lockywolf: In the US, marrying in your very early 20s is basically coinflip odds (or better) for a divorce. Maybe other cultures are different. 2020-09-23T06:05:17Z lockywolf: I think only about ~20% of my classmates fulfilled the mandatory task of breeding before 30. 2020-09-23T06:06:36Z aeth: But, anyway, I left before people really started posting about politics on Facebook, which is a good thing because I still think highly of my former classmates in my memories... an opinion which would immediately be ruined for half (or more of them) if I still checked Facebook. 2020-09-23T06:07:34Z aeth: Zipheir: no, they just moved to video blogging on YouTube. although that too probably passed already 2020-09-23T06:07:39Z user51 left #scheme 2020-09-23T06:07:51Z lockywolf: YouTube seems to be growing very strongly. 2020-09-23T06:08:12Z aeth: And yet any YouTuber who is notable/famous probably started 5-10 years ago... and is probably entirely reliant on Patreon now 2020-09-23T06:08:14Z lockywolf: Perhaps you're already unlikely to make millions on it. 2020-09-23T06:08:47Z aeth: New people make money from videos on TikTok. 2020-09-23T06:09:10Z lockywolf: I mean the amount of useful content rather than the amount of cash. 2020-09-23T06:09:26Z lockywolf: I guess I should make myself think different. 2020-09-23T06:09:46Z aeth: idk, the SICP lectures have been on YouTube for probably a decade now at this point... and that's all that YouTube has ever needed 2020-09-23T06:09:52Z lockywolf: Like actually assess everything in potential cash earned, rather than in potential cash lost on doing something. 2020-09-23T06:10:21Z lockywolf: I'm just seeing blogs as a way to document stuff, rather than make money on it. 2020-09-23T06:10:46Z aeth: If you look at things that way (potential cash earned), then the optimal way to make money is to perfectly time some market, e.g. Bitcoin. This requires time travel, though. 2020-09-23T06:10:51Z Zipheir: lockywolf: Right. And that's what they were before the blogging craze. 2020-09-23T06:11:47Z aeth: lockywolf: Eh, tech blogs are more promotion than documentation. 2020-09-23T06:12:10Z aeth: Not necessarily for profit. Even Scheme blogs are selling the idea of programming in Scheme. 2020-09-23T06:12:35Z lockywolf: Promotion is an extremely abstracted version of documentation. 2020-09-23T06:16:05Z lockywolf: In the utmost case it documents existence. 2020-09-23T06:16:37Z Riastradh: blogumentation 2020-09-23T06:18:50Z lockywolf: In any case. If someone knows a polite way to reach Jens Axel Søgaard and ask him to spend a bit of time on PlanetScheme, it would be nice. 2020-09-23T06:21:09Z aeth: lockywolf: blogs I guess could count as documentation, but they're not "this is what the API does" kind of documentation. They're usually closer to examples/demos, which, yeah, can be included in documentation. 2020-09-23T06:21:56Z aeth: e.g. maybe someone will post a postmortem for https://itch.io/jam/autumn-lisp-game-jam-2020 2020-09-23T06:31:35Z v_m_v joined #scheme 2020-09-23T06:33:20Z midre quit (Ping timeout: 272 seconds) 2020-09-23T06:34:45Z lockywolf: My backlog is too long 2020-09-23T06:35:30Z lockywolf: I can try and make a Russian translation of the announcement though 2020-09-23T06:36:28Z midre joined #scheme 2020-09-23T06:37:46Z teardown quit (Ping timeout: 272 seconds) 2020-09-23T06:56:20Z ramin joined #scheme 2020-09-23T06:56:39Z ramin: Hi everyone. I was just curious if there are any Scheme libraries that try to ease the transition for people familiar with Common Lisp to Scheme by providing as many of the features in X3J13 as possible. For example, in Scheme a function like "funcall" is unnecessary, the kind of library I am talking about would provide a "funcall" macro as a convenience. Is there any such project out there? 2020-09-23T07:10:10Z wasamasa: that doesn't really make sense 2020-09-23T07:10:22Z wasamasa: lisp-1 vs lisp-2 semantics isn't something a library can paper over 2020-09-23T07:11:06Z wasamasa: now, there's projects to implement scheme in Cl with CL interop 2020-09-23T07:11:22Z wasamasa: in those you get that behavior for free 2020-09-23T07:12:06Z daviid`` joined #scheme 2020-09-23T07:15:08Z daviid` quit (Ping timeout: 272 seconds) 2020-09-23T07:15:27Z v_m_v quit (Remote host closed the connection) 2020-09-23T07:15:42Z daviid`` quit (Read error: Connection reset by peer) 2020-09-23T07:16:02Z v_m_v joined #scheme 2020-09-23T07:16:02Z daviid`` joined #scheme 2020-09-23T07:18:26Z v_m_v_ joined #scheme 2020-09-23T07:20:07Z v_m_v quit (Ping timeout: 240 seconds) 2020-09-23T07:28:19Z v_m_v_ quit (Ping timeout: 272 seconds) 2020-09-23T07:29:05Z v_m_v joined #scheme 2020-09-23T07:35:48Z ggole joined #scheme 2020-09-23T07:42:22Z amirouche joined #scheme 2020-09-23T07:44:45Z arew quit (Ping timeout: 240 seconds) 2020-09-23T07:51:46Z mirrorbird joined #scheme 2020-09-23T07:53:10Z badkins joined #scheme 2020-09-23T07:55:47Z daviid`` quit (Ping timeout: 240 seconds) 2020-09-23T07:56:24Z malaclyps quit (Ping timeout: 256 seconds) 2020-09-23T07:57:39Z ByronJohnson quit (Ping timeout: 265 seconds) 2020-09-23T07:58:12Z badkins quit (Ping timeout: 272 seconds) 2020-09-23T07:58:32Z malaclyps joined #scheme 2020-09-23T07:58:37Z ByronJohnson joined #scheme 2020-09-23T08:01:36Z civodul joined #scheme 2020-09-23T08:10:59Z hendursa1 joined #scheme 2020-09-23T08:13:03Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-23T08:14:15Z tdammers: IME, "easing the transition" between any two languages is a lousy way of learning a new language 2020-09-23T08:14:38Z tdammers: just start using the new language, and self-correct your behavior when a difference bites you 2020-09-23T08:14:47Z tdammers: fastest way to retrain your motor memory 2020-09-23T08:15:10Z tdammers: I've seen a C header designed for people coming from Pascal that has things like #define BEGIN { and #define END } 2020-09-23T08:15:15Z tdammers: just terrible 2020-09-23T08:16:36Z ramin: tdammers: I don't have any practical application in mind, I was just curious if there were Common Lisp features like CLOS, and the "loop" construct, collected together in a single library, along with a few other conveniences like a "funcall" macro. 2020-09-23T08:17:10Z ramin: I know that there is a Scheme library called "Prelude" which provides a good number of algorithms that you can find in the Haskell prelude. 2020-09-23T08:18:40Z tdammers: yeah, but if you want to learn Scheme, or any language for that matter, you should learn to use it idiomatically right out of the gate, not bend it into trying to be another language. this goes for the core syntax just as much as the library ecosystem 2020-09-23T08:19:37Z tdammers: if you try to shoehorn scheme into being haskell, then why not use haskell in the first place - haskell is a much better haskell than scheme, and CL is a much better CL than scheme. and of course scheme is a much better scheme than haskell or CL 2020-09-23T08:22:39Z ramin: tdammers: but clearly people see value in things like CLOS enough so that Guile provides GOOPS, and Racket has their own OOP thing. What I mean is, you don't need to have complete language compatability (like you say, just use the actual language, rather than try to emulate it), there is still value in some of the Lisp ecosystem that could be used in Scheme. 2020-09-23T08:23:50Z tdammers: oh, sure 2020-09-23T08:24:37Z tdammers: but there's a difference between "taking an idea from the ecosystem of some other language, and porting it to idiomatic scheme" and "replacing idiomatic scheme libraries with ones that follow the idiom of some other language" 2020-09-23T08:24:53Z tdammers: trying to approximate lisp-2 semantics in scheme is of the latter category 2020-09-23T08:25:43Z tdammers: porting the Haskell Prelude (which heavily relies on types) to Scheme (a fundamentally untyped language) is also of the latter category, though idiomatic ports of some of its functions do make sense in Scheme 2020-09-23T08:25:55Z tdammers: (insofar as idiomatic equivalents don't exist already, that is) 2020-09-23T08:29:12Z wasamasa: you made me remember a few scheme libraries that look like haskell 2020-09-23T08:29:16Z wasamasa: and not in the good way 2020-09-23T08:29:27Z wasamasa: a monadic parser library is fine, but doing everything that way, ew 2020-09-23T08:29:59Z tdammers: if I were to write a parser-combinator library in scheme, I wouldn't even go all-out on the monadic interface 2020-09-23T08:30:28Z tdammers: a stateful stream reader is absolutely fine, as long as you have a buffering mechanism that can efficiently rewind 2020-09-23T08:30:37Z wasamasa: https://github.com/sylphbio/pontiff 2020-09-23T08:30:48Z ramin: Right, AFAIK Monads are great if you are trying to keep everything immutable and as functional as possible. 2020-09-23T08:31:40Z wasamasa: this thing isn't too funky, but its dependencies are :D 2020-09-23T08:32:37Z wasamasa: https://github.com/sylphbio/ix/blob/master/src/ix/lens.scm 2020-09-23T08:33:34Z ramin: Although I got my start in functional programming with Haskell, so if I were to start writing any Scheme code beyond a few simple personal projects, it wuold probably end up very Haskell-like, and probably bother a lot of people. 2020-09-23T08:34:11Z even4void joined #scheme 2020-09-23T08:34:32Z notzmv quit (Ping timeout: 260 seconds) 2020-09-23T08:40:24Z mirrorbird quit (Quit: Leaving) 2020-09-23T08:42:20Z rain1 quit (Ping timeout: 258 seconds) 2020-09-23T08:54:10Z mmohammadi9812 quit (Ping timeout: 246 seconds) 2020-09-23T08:54:13Z notzmv joined #scheme 2020-09-23T08:59:37Z tdammers: Monad, being a typeclass, is a way of acknowledging isomorphic patterns in your code at the type level - IMO it's nowhere near as helpful in an untyped language 2020-09-23T09:10:33Z mmohammadi9812 joined #scheme 2020-09-23T09:20:29Z aeth: Monad, being a monoid in the category of endofunctors... 2020-09-23T09:26:20Z even4void quit (Ping timeout: 256 seconds) 2020-09-23T09:34:26Z v_m_v quit (Remote host closed the connection) 2020-09-23T09:54:07Z badkins joined #scheme 2020-09-23T09:54:23Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-23T09:58:34Z badkins quit (Ping timeout: 246 seconds) 2020-09-23T10:15:00Z jcowan has a context pre-SRFI to support functors, idioms (aka applicative functors), and monads 2020-09-23T10:16:50Z jcowan: there are a bunch of things ahead of it in my queue, but if somebody wants to grab it and run, they can 2020-09-23T10:17:49Z jcowan: aeth: I married at 21, still married at 62 to the same person 2020-09-23T10:30:31Z coffeeturtle joined #scheme 2020-09-23T10:31:44Z coffeeturtle quit (Client Quit) 2020-09-23T10:54:01Z terpri quit (Ping timeout: 244 seconds) 2020-09-23T10:54:06Z muelleme joined #scheme 2020-09-23T10:59:12Z muelleme quit (Ping timeout: 256 seconds) 2020-09-23T11:06:55Z terpri joined #scheme 2020-09-23T11:12:38Z muelleme joined #scheme 2020-09-23T11:35:04Z mmohammadi9812 joined #scheme 2020-09-23T11:54:53Z badkins joined #scheme 2020-09-23T11:59:30Z badkins quit (Ping timeout: 272 seconds) 2020-09-23T12:04:44Z mmohammadi9812 quit (Ping timeout: 258 seconds) 2020-09-23T12:04:47Z mmohammadi9812 joined #scheme 2020-09-23T12:15:46Z mmohammadi9812 quit (Ping timeout: 246 seconds) 2020-09-23T12:20:22Z mmohammadi9812 joined #scheme 2020-09-23T12:35:25Z mmohammadi9812 quit (Ping timeout: 240 seconds) 2020-09-23T12:36:40Z phillbush joined #scheme 2020-09-23T12:40:01Z mmohammadi9812 joined #scheme 2020-09-23T12:40:38Z ManDay joined #scheme 2020-09-23T12:44:40Z ManDay quit (Client Quit) 2020-09-23T12:52:47Z ManDay joined #scheme 2020-09-23T12:53:20Z elflng quit (Ping timeout: 272 seconds) 2020-09-23T12:55:24Z mirrorbird joined #scheme 2020-09-23T12:55:49Z elflng joined #scheme 2020-09-23T12:58:00Z klovett quit (Remote host closed the connection) 2020-09-23T12:58:17Z klovett joined #scheme 2020-09-23T13:09:16Z mirrorbird quit (Quit: Leaving) 2020-09-23T13:15:50Z v_m_v joined #scheme 2020-09-23T13:20:24Z badkins joined #scheme 2020-09-23T13:20:27Z ManDay quit (Ping timeout: 260 seconds) 2020-09-23T13:20:27Z v_m_v quit (Ping timeout: 272 seconds) 2020-09-23T13:24:04Z hendursa1 quit (Quit: hendursa1) 2020-09-23T13:24:22Z hendursaga joined #scheme 2020-09-23T13:36:03Z amoe quit (Quit: leaving) 2020-09-23T13:36:18Z amoe joined #scheme 2020-09-23T13:48:39Z mmohammadi98120 joined #scheme 2020-09-23T13:50:58Z mmohammadi9812 quit (Ping timeout: 272 seconds) 2020-09-23T13:50:58Z mmohammadi98120 is now known as mmohammadi9812 2020-09-23T13:57:10Z v_m_v joined #scheme 2020-09-23T14:06:15Z mmohammadi9812 quit (Ping timeout: 258 seconds) 2020-09-23T14:07:35Z mmohammadi9812 joined #scheme 2020-09-23T14:09:51Z badkins quit (Remote host closed the connection) 2020-09-23T14:10:28Z badkins joined #scheme 2020-09-23T14:12:39Z badkins quit (Remote host closed the connection) 2020-09-23T14:12:49Z badkins_ joined #scheme 2020-09-23T14:22:12Z abralek[m] quit (Ping timeout: 260 seconds) 2020-09-23T14:23:01Z abralek[m] joined #scheme 2020-09-23T14:36:00Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-23T14:37:34Z abralek[m] joined #scheme 2020-09-23T14:48:08Z shymega left #scheme 2020-09-23T14:53:34Z v_m_v quit (Remote host closed the connection) 2020-09-23T14:54:09Z v_m_v joined #scheme 2020-09-23T14:54:59Z teardown joined #scheme 2020-09-23T14:55:44Z mmohammadi9812 quit (Ping timeout: 265 seconds) 2020-09-23T14:58:37Z v_m_v quit (Ping timeout: 272 seconds) 2020-09-23T15:01:22Z muelleme quit (Ping timeout: 260 seconds) 2020-09-23T15:09:14Z abralek[m] quit (Quit: Quit) 2020-09-23T15:15:15Z Riastradh: ramin: you might like foof-loop 2020-09-23T15:21:33Z tristero joined #scheme 2020-09-23T15:33:09Z Zipheir: Monads aren't just "a typeclass", but rather an extremely general structure. Whether a monad is a "useful" structure depends on what you're doing, but I personally find them just as expressive (or inexpressive) in Scheme as in, say, Haskell. 2020-09-23T15:34:53Z teardown quit (Ping timeout: 260 seconds) 2020-09-23T15:38:08Z Riastradh: Useful structure, yes, but highly error-prone without a static type system. 2020-09-23T15:38:37Z mmohammadi9812 joined #scheme 2020-09-23T15:38:37Z Riastradh: (also `monadic parser combinators' are bad) 2020-09-23T15:39:48Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-23T15:40:52Z Zipheir: That's rather broad. 2020-09-23T15:41:39Z Zipheir: Comparse-style parser combinators with incautious use of LL(∞) tricks are very bad. 2020-09-23T15:45:14Z Riastradh: LALR parser generators are good; pretty much everything else is bad, and that includes parser combinators that are embedded in the program and not a separate development tool to generate the parser. 2020-09-23T15:46:44Z Zipheir: If your language is LL(k), then what's wrong with recursive descent or judiciously-used combinator parsing? 2020-09-23T15:47:29Z Riastradh: no feedback about ambiguity or mistakes 2020-09-23T15:47:59Z Riastradh: no guarantee on space usage, running time, or even termination 2020-09-23T15:48:58Z Zipheir: Quite true. But then, the parser also isn't a sprawling automaton spit out by yacc. 2020-09-23T15:48:58Z Riastradh: LALR parser generator gives you all five of those, in an interactive development-time tool. 2020-09-23T15:49:38Z wasamasa: but my useful error messages 2020-09-23T15:49:53Z Riastradh: You'd rather have a sprawling automaton implicit in the control flow of a program that isn't structured to detect ambiguity or mistakes or guarantee space usage, running time, or termination? 2020-09-23T15:50:18Z Zipheir: It's interesting that Niklaus Wirth grumpily rejects parser generators on the grounds that they encourage over-complicated language design. 2020-09-23T15:51:29Z Riastradh: Useful error messages require work no matter how you write your parser. 2020-09-23T15:52:04Z wasamasa: the standard argument in favor of handrolled recursive descent is that it makes it easy to have useful error messages 2020-09-23T15:52:07Z Zipheir: Good points. Although I would like to see some more rigorously verified YACCs that really do provide proofs of certain properties in the generated parser. 2020-09-23T15:52:21Z Riastradh: heh 2020-09-23T15:53:03Z Riastradh: `look, you can hand-write your error messages and it's no harder than the hand-written spaghetti you already wrote for the rest of the parser!' is not a very compelling case to me. 2020-09-23T15:53:37Z Riastradh: Zipheir: Like ? 2020-09-23T15:54:00Z wasamasa: the alternative would it be being hard to have good error messages, lol 2020-09-23T15:54:06Z wasamasa: that's what this argument rests on 2020-09-23T15:55:50Z wasamasa: for example if your parser generator doesn't offer anything to help you with error messages 2020-09-23T15:55:52Z Zipheir: Riastradh: Looks impressive. 2020-09-23T15:56:18Z Zipheir: wasamasa: The available Scheme yaccs seem to punt on error handling. 2020-09-23T15:56:48Z Zipheir: Comparse, the CHICKEN Parsec, is even funnier--if an error occurs, the parser just returns #f! 2020-09-23T15:56:57Z wasamasa: yeah, it's terrible in this aspect 2020-09-23T15:57:10Z wasamasa: and if you're not careful you can leak memory 2020-09-23T15:57:44Z Zipheir: "#f: The intelligent user will ususally know what this means." --not Ken Thompson 2020-09-23T15:57:45Z wasamasa: I eventually ended up rewriting my last parser to just use regex because it handled a regular language 2020-09-23T15:57:59Z Riastradh: Certain automatic error messages are quite easy in a LALR parser, e.g. the parser can trivially automatically report what tokens are allowed where an invalid token is seen. 2020-09-23T15:58:22Z Riastradh: But you can also always just write explicit rules for plausible mistakes and then use the parser action to report a more meaningful error message. 2020-09-23T15:59:59Z mmohammadi9812 quit (Ping timeout: 260 seconds) 2020-09-23T16:00:21Z wasamasa: hm, that's an idea for cases like missing required argument 2020-09-23T16:00:29Z Zipheir: I agree that parser generators are a Good Thing. 2020-09-23T16:02:15Z Zipheir: One point that I was discussing recently is "how do you parse a simple format which is 'too trivial' to pull out a parser generator for?" e.g. strings of ASCII characters with backslash escapes. 2020-09-23T16:02:18Z Riastradh: And there's a traditional error token that lets you recover from a fairly large class of local errors in order to make progress; you just have to give the grammar hints about how to pick up and keep moving, like scanning to a close brace or a semicolon. 2020-09-23T16:02:30Z Riastradh: Zipheir: NFAs are good too. 2020-09-23T16:05:03Z Riastradh: https://mumble.net/~campbell/tmp/20190624/lex-test.scm 2020-09-23T16:05:27Z Riastradh: (demonstration of unfinished toy, not actually something you can use without work to fix it up) 2020-09-23T16:06:02Z mmohammadi9812 joined #scheme 2020-09-23T16:06:14Z Zipheir: Most impressive! ... What does it do? 2020-09-23T16:06:20Z Riastradh: also parsers should be structured pushily, not pullily 2020-09-23T16:07:55Z ggole quit (Quit: Leaving) 2020-09-23T16:08:14Z Riastradh: Zipheir: You create a `lexicon' and add rules to it -- a rule is a (state, regexp, action) triple. Then you compile it to an NFA and scan inputs with it. If the scanner is in a rule's state, and the rule's regexp is the first one to match, then the action fires. 2020-09-23T16:09:03Z Zipheir: Riastradh: That's awesome. Exactly the tool for a common job, I think. 2020-09-23T16:09:15Z Riastradh: By the way, it's really easy to prove bounded running time for a shift/reduce parser or an NFA like this -- you don't need to haul out the big guns like Coq. 2020-09-23T16:10:07Z Riastradh: How do you prove it? Each step consumes a single input token and then does a bounded number of reductions (bounded by the size of the grammar; or, in the case of an NFA, exactly one) before moving on to the next token. 2020-09-23T16:10:37Z Riastradh: So it takes at most n*m steps to process an n-token input with an m-rule grammar. 2020-09-23T16:11:27Z Riastradh: Usually it's much much less than n*m, of course. 2020-09-23T16:11:32Z Zipheir: Assuming the C spaghetti conforms to its specification. 2020-09-23T16:12:06Z Riastradh: That's...not hard to verify unless you go out of your way to write crazy parser actions that break the semantics. 2020-09-23T16:12:23Z Riastradh: The structure is really simple like 2020-09-23T16:13:02Z Riastradh: (let loop ((state initial-state)) (let ((token (read-token))) (or (accept machine state token) (loop (shift/reduce machine state token] 2020-09-23T16:13:45Z Riastradh: (except that's a pully parser and you should really structure things as pushy parsers -- my main criticism of yacc and bison; I prefer lemon for C) 2020-09-23T16:15:26Z Riastradh: (proving that the parser recognizes the grammar is another matter; I'm just talking about proving bounds on running time and space usage, and guaranteeing termination) 2020-09-23T16:17:46Z Zipheir: Right. That seems pretty straightforward. 2020-09-23T16:18:13Z mirrorbird joined #scheme 2020-09-23T16:19:01Z Riastradh: Anyway, if you want to make something useful of , go for it. It does the standard NFA->epsilon-NFA->DFA compilation process, described in, e.g., Hopcroft & Ullman. 2020-09-23T16:19:15Z Riastradh: (code is very rough) 2020-09-23T16:19:38Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-23T16:19:53Z Zipheir: I'd really like to work on it in the near future. 2020-09-23T16:21:21Z Riastradh: er 2020-09-23T16:21:24Z Riastradh: epsilon-NFA->NFA->DFA, I mean 2020-09-23T16:22:22Z mmohammadi9812 joined #scheme 2020-09-23T16:23:21Z Zipheir: Hah, I remember the gist of that algorithm, in fact, I can see the text on the page of the 1970s edition in my mind. But that's it, at the moment. Time to attack the Dragon again, I guess. 2020-09-23T16:26:09Z badkins_ quit (Remote host closed the connection) 2020-09-23T16:26:51Z badkins joined #scheme 2020-09-23T16:28:56Z siraben: Riastradh: have you seen parsing with derivatives? 2020-09-23T16:29:20Z siraben: http://matt.might.net/articles/parsing-with-derivatives/ 2020-09-23T16:29:23Z Riastradh: Yes but I forget the details. 2020-09-23T16:30:37Z siraben: i haven't worked them out myself, IIRC the biggest problem is the exponential blowup 2020-09-23T16:31:37Z badkins quit (Ping timeout: 246 seconds) 2020-09-23T16:32:01Z Riastradh: Yeah, LL(1) and no guarantee of reasonable running time or space and no assistance in detecting and resolving ambiguity probably explains why I promptly forgot about it. 2020-09-23T16:32:08Z ManDay joined #scheme 2020-09-23T16:32:24Z Zipheir: Right. Russ Cox published a very disparaging response to that technique in which he argues it's basically just an NFA implementation of regexes. https://research.swtch.com/yaccalive 2020-09-23T16:32:59Z Riastradh: `We quietly handle ambiguity and it's usually not exponential because of tricks!' is about the worst possible answer. 2020-09-23T16:34:56Z Zipheir: The argument was that some sort of laziness could be used to avoid considering every possible parse, but the original paper doesn't explain the technique. Current Haskell versions (https://hackage.haskell.org/package/derp) are rather obscure. 2020-09-23T16:35:25Z jcowan: Are you talking about Brzozowski derivatives? 2020-09-23T16:35:58Z siraben: jcowan: yes 2020-09-23T16:35:59Z Zipheir: jcowan: Yes, I believe that's who discovered them. 2020-09-23T16:36:44Z Riastradh: jcowan: I was but I got bored because it doesn't (a) provide feedback to the grammar author for interactively deciding how to resolve ambiguity during development, nor (b) guarantee reasonably bounded time and space. 2020-09-23T16:37:42Z badkins joined #scheme 2020-09-23T16:37:46Z schemer joined #scheme 2020-09-23T16:39:03Z jcowan: OTOH they are excellent for XML-and-related-data-structures schemas, because they remove all sorts of nasty restrictions that Glushkov automata impose. 2020-09-23T16:39:27Z Riastradh: ...maybe XML is bad too... 2020-09-23T16:41:00Z wasamasa: rudybot: more like, Gluhoi automat 2020-09-23T16:41:03Z rudybot: wasamasa: try the cellular automat 2020-09-23T16:41:29Z siraben: rudybot: parsing with cellular automata? 2020-09-23T16:41:31Z rudybot: siraben: This could be a clever hook for a paper about cellular automata implemented in Logo. 2020-09-23T16:41:33Z jcowan: It's not about the surface syntax: the technique would work perfectly well for S-expression data such that the first element of each list is an atom. 2020-09-23T16:41:35Z Riastradh: parsing with nondeterministic finite laundromat 2020-09-23T16:41:52Z jcowan: Personally I have only ever tried the New York and Philadelphia automats (now defunct) 2020-09-23T16:42:17Z daviid joined #scheme 2020-09-23T16:43:33Z jcowan: I understand they have nondeterministic laundromats in Japan 2020-09-23T16:44:21Z jcowan: indeed, washing machines are a major application of fuzzy logic 2020-09-23T16:45:23Z Zipheir: And linting. 2020-09-23T16:45:32Z arew joined #scheme 2020-09-23T16:47:08Z amirouche quit (Ping timeout: 256 seconds) 2020-09-23T16:51:41Z v_m_v joined #scheme 2020-09-23T17:16:56Z badkins quit (Remote host closed the connection) 2020-09-23T17:17:30Z badkins joined #scheme 2020-09-23T17:21:52Z badkins quit (Ping timeout: 260 seconds) 2020-09-23T17:26:03Z daviid` joined #scheme 2020-09-23T17:28:00Z daviid quit (Ping timeout: 256 seconds) 2020-09-23T17:28:34Z ManDay: every time something comes up in this channel, i end up being confused 2020-09-23T17:29:04Z Riastradh: Try reading _Mathematics Made Difficult_, a handbook for the perplexed by Carl Linderholm. 2020-09-23T17:29:20Z badkins joined #scheme 2020-09-23T17:30:24Z ManDay: oh dear, i will probably make this a lecture on my deathbed 2020-09-23T17:30:35Z ManDay: (hoping there is still time) 2020-09-23T17:32:28Z arew: what is the purpose of life? \cc ManDay 2020-09-23T17:32:41Z arew: sorry i could not resist, of course it is joke. 2020-09-23T17:33:00Z ManDay: it went over my head. but that's nothing new in this channel 2020-09-23T17:33:53Z badkins quit (Ping timeout: 260 seconds) 2020-09-23T17:34:10Z arew: speaking of off-topic, #lispcafe which is off-topic is on-topic given #scheme standard :) 2020-09-23T17:36:33Z daviid` quit (Quit: ERC (IRC client for Emacs 26.3)) 2020-09-23T17:38:05Z arew: oh! nvidia has really acquired arm :( 2020-09-23T17:40:17Z Riastradh: arew: Not quite. There's another 18 months or so for antitrust regulators to hem and haw and consider the philosophical implications of antitrust theory and twiddle their thumbs and in the end abdicate responsibility before it really becomes official. 2020-09-23T17:40:33Z wasamasa: rudybot: how much will nvidia pay for leg though 2020-09-23T17:40:36Z rudybot: wasamasa: i wouldn't be surprised if CL wears leg warmers 2020-09-23T17:41:48Z jcowan: "What are feet?" "12.0 inches." "What are arms?" "That is classified." --Nicholai, an early AI program 2020-09-23T17:42:17Z Riastradh: AI didn't want to take a risc disclosing that information. 2020-09-23T17:42:23Z Riastradh runs away 2020-09-23T17:47:20Z bitmapper joined #scheme 2020-09-23T17:48:15Z ManDay quit (Quit: WeeChat 2.9) 2020-09-23T17:48:16Z jcowan: I think it's described in one of his monthly rows for Literary Australian magazine, collected in _Thetamagical Memas: Seeking the Whence of Letter and Spirit_. (Perth: Acidic Books, 1985.) 2020-09-23T17:54:08Z badkins joined #scheme 2020-09-23T18:02:42Z arew: I posted a "help wanted" issue on reddit, someone replied \o/ 2020-09-23T18:02:53Z arew: ... with some code but using... guile instead of gambit /o\ 2020-09-23T18:03:12Z v_m_v quit (Remote host closed the connection) 2020-09-23T18:04:04Z wasamasa: lol 2020-09-23T18:04:10Z wasamasa: the tower of babel is real 2020-09-23T18:07:13Z Zipheir: arew: You might get more replies on reddit if you make it clear what kind of feedback you want. It seems like you've just posted GitHub links with no context. 2020-09-23T18:07:47Z arew: Zipheir: yeah, I am still thinking people will read my mind some how... I do the same with my code project. 2020-09-23T18:08:10Z arew: Zipheir: I wanted people to post more "help wanted" issues but it might have worked, but since github is buggy it does not show up. 2020-09-23T18:09:14Z arew: On a somewhat related topic, I have an idea for an heroku like using scheme! 2020-09-23T18:09:22Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-23T18:10:06Z arew: with the hypermodern http server (or something) and SRFI-167 on top of sqlite lsm extension, one could create an heroku for scheme that somewhat easy. 2020-09-23T18:10:21Z arew: I mean srfi-167 with sqlite does not require to "manage the database" 2020-09-23T18:10:41Z arew: it could even work with original sqlite.. 2020-09-23T18:11:18Z arew: I made some calculation, 1 cpu per customer, with a total of 40 cpus and 200 euros per box, starting at 5 euros per "heroku" instance pay the bill :) 2020-09-23T18:11:25Z arew: 5 times 40 = 200 :) 2020-09-23T18:11:58Z daviid joined #scheme 2020-09-23T18:12:11Z arew: of course if you go the public cloud route, 5 euros is not enough, but you have isolation for free. 2020-09-23T18:12:47Z arew: I mean, the goal is to help people create more scheme code and more scheme in general, having a web provider that support scheme will definitly help 2020-09-23T18:13:44Z wasamasa: babel will ruin that 2020-09-23T18:14:01Z wasamasa: not everyone wants to use your preferred scheme 2020-09-23T18:14:32Z wasamasa: that aside, what is this hypermodern web server you're speaking of 2020-09-23T18:14:40Z arew: that is why it does not the prefered scheme, but the awesomest scheme: arew! 2020-09-23T18:14:57Z arew: wasamasa: it is wip at https://github.com/pre-srfi/hyperserver#specification 2020-09-23T18:15:12Z arew: wasamasa: tl;dr: just enough http support to build a single-page-app. 2020-09-23T18:15:36Z arew: we seem to disagree on what is the definition of "enough". 2020-09-23T18:16:00Z arew: no implementation yet. 2020-09-23T18:16:00Z wasamasa: yeah, naturally 2020-09-23T18:16:17Z wasamasa: this requires quite a lot from the implementation to work 2020-09-23T18:16:21Z wasamasa: let alone at hyper speed 2020-09-23T18:16:41Z arew: I was under the impression that cookies were a nest of rats.. do you agree? 2020-09-23T18:16:51Z wasamasa: the web generally is 2020-09-23T18:17:18Z arew: yeah, but are cookies painful or not? my proposal is to rely on indexedb to store the auth token. 2020-09-23T18:17:29Z wasamasa: sending out a set-cookie header and interpreting a cookie header is not the problematic part 2020-09-23T18:17:36Z arew: that avoids the requirement to parse and produce cookie headers 2020-09-23T18:17:46Z wasamasa: the problematic part is writing a secure session system 2020-09-23T18:18:03Z wasamasa: you will need an identifier from the client no matter what 2020-09-23T18:18:12Z wasamasa: cookies aren't your issue here 2020-09-23T18:18:14Z arew: yeah, but that is a problem whether the token is in a cookie jar or as part of the json reponse. 2020-09-23T18:18:29Z arew: agreed 2020-09-23T18:19:48Z wasamasa: I test web application security for a living and often websites do things like allowing me to share a session from two different clients 2020-09-23T18:20:05Z arew: is that bad? 2020-09-23T18:20:13Z arew: never heard of a workaround for that. 2020-09-23T18:20:28Z wasamasa: some applications disallow that explicitly for security reasons 2020-09-23T18:20:40Z wasamasa: others allow it for convenience reasons 2020-09-23T18:20:47Z arew: I will add the IP to the token hash 2020-09-23T18:20:59Z arew: that would not work, if the user change ip.. 2020-09-23T18:21:12Z wasamasa: yes, for example when the user is on a mobile network and roaming 2020-09-23T18:21:33Z wasamasa: websites like facebook do a more sophisticated detection of "unusual" logins 2020-09-23T18:21:49Z wasamasa: for example they check whether you've signed in from a different country than usual and block the login in that case 2020-09-23T18:22:02Z wasamasa: same with paypal, google, ... 2020-09-23T18:22:06Z arew: that is somewhat complex issue. I have never seems "sophisticaed login / auth" in floss. 2020-09-23T18:22:19Z arew: s/seems/seen/ 2020-09-23T18:22:22Z wasamasa: precisely my point 2020-09-23T18:22:39Z wasamasa: you're standardizing something that's too early to standardize and too much of a moving target 2020-09-23T18:22:40Z arew: I have been looking for that. 2020-09-23T18:22:47Z arew: http? 2020-09-23T18:22:59Z arew: the web? 2020-09-23T18:23:42Z Oddity__ joined #scheme 2020-09-23T18:23:44Z wasamasa: the web or more precisely, the browser landscape 2020-09-23T18:24:04Z wasamasa: if browsers mandate features your webserver can't fulfill (they're getting more and more aggressive with https requirements), RIP 2020-09-23T18:24:39Z wasamasa: I've run into a similar issue when trying out the webview egg 2020-09-23T18:25:05Z wasamasa: yes, it sounds great in theory to have a native webview for the three major operating systems, but the API stops short at the parts which you end up requiring at some point 2020-09-23T18:25:26Z wasamasa: like creating an ephemeral session, disabling client-side security protections, ... 2020-09-23T18:26:15Z arew: wasamasa: you have the senior developper curse! 2020-09-23T18:26:31Z wasamasa: I suspect that effort would be better invested in first writing a proper library and then standardizing it 2020-09-23T18:26:34Z arew: you can see everything that will not work, instead of everything that can work! 2020-09-23T18:26:47Z wasamasa: I found out these points by trying to port an old application I wrote 2020-09-23T18:26:56Z wasamasa: I made things work, but only for one OS 2020-09-23T18:26:57Z Oddity_ quit (Ping timeout: 260 seconds) 2020-09-23T18:27:06Z wasamasa: I can't see it work for the other supported ones 2020-09-23T18:27:39Z wasamasa: anyway, back on the topic, have you studied existing scheme web servers? 2020-09-23T18:27:44Z arew: outisde bsd, I think portable code is waste of time given wsl 1, 2... prolly 3. 2020-09-23T18:27:50Z arew: wasamasa: a little 2020-09-23T18:27:58Z arew: why? 2020-09-23T18:27:59Z wasamasa: I have some experience with spiffy, racket's server is another one to look at 2020-09-23T18:28:15Z wasamasa: there are lessons to learn from them with regards to API design 2020-09-23T18:28:28Z wasamasa: for example to use continuations for user customization of how requests are handled 2020-09-23T18:28:55Z wasamasa: or to have some way to pattern match on requests or construct any kind of response you need 2020-09-23T18:29:09Z arew: spiffy supports way to much of http for the above idea. I mean, it is a superset of what is required to create a simple http app. You can even implement a reverse proxy with spiffy. 2020-09-23T18:29:19Z wasamasa: who knows, maybe you end up porting something like ring/rack/wsgi 2020-09-23T18:29:40Z wasamasa: do you want a toy as SRFI or something people will actually use? 2020-09-23T18:29:41Z arew: did you read about express.js 2020-09-23T18:29:57Z wasamasa: these libraries are what people actually use 2020-09-23T18:30:29Z arew: that is really a toy thing, it started as toy, and it still shows, you can definitly start a week hack with it. That's the kind of thing I aiming at. Unlike spiffy that can do-it-all 2020-09-23T18:31:02Z wasamasa: I've used hapi briefly 2020-09-23T18:31:32Z v_m_v joined #scheme 2020-09-23T18:32:11Z gravicappa joined #scheme 2020-09-23T18:32:23Z arew: thanks for the pointer 2020-09-23T18:32:26Z arew reading 2020-09-23T18:33:58Z wasamasa: I mean, even express gives you that request pattern matching and custom responses :P 2020-09-23T18:34:36Z arew: so does hyperservr in its current form, it is actually nicer that express.js (or hapi) 2020-09-23T18:34:37Z wasamasa: plus with middleware you end up making your own ring/rack/wsgi thing 2020-09-23T18:34:57Z arew: you will not need middleware, never used them outside for doing "magic". 2020-09-23T18:35:16Z arew: aren't middleware just a before and after hooks? 2020-09-23T18:35:29Z wasamasa: more like, advice 2020-09-23T18:35:29Z arew: I mean, that is easy to add to hyperser 2020-09-23T18:35:42Z wasamasa: you can choose to return something else than you normally would 2020-09-23T18:36:24Z wasamasa: with middleware you can easily build things like automatic content type detection, session handling, route pattern matching, ... 2020-09-23T18:36:49Z arew: I know the lore :) 2020-09-23T18:36:59Z wasamasa: the main problem with that approach is figuring out the correct order to stick everything together 2020-09-23T18:37:28Z arew: correct, also the string indirection at least with the framework I use is very painful 2020-09-23T18:37:43Z wasamasa: what do you mean? 2020-09-23T18:38:08Z arew: well, string indirections all over the place, like "foo.bar.baz" means, use the object "baz" in "foo.bar" 2020-09-23T18:38:27Z wasamasa: that's a lisp/blub problem 2020-09-23T18:38:46Z arew: blub? I forgot about it? what is it? 2020-09-23T18:38:50Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-23T18:39:12Z wasamasa: a term for non-lisp language 2020-09-23T18:39:36Z wasamasa: https://old.reddit.com/r/LispMemes/comments/bvfty0/the_onslaught_of_the_blubistas/ 2020-09-23T18:40:05Z phwalkr joined #scheme 2020-09-23T18:41:17Z gravicappa joined #scheme 2020-09-23T18:41:33Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-23T18:46:35Z v_m_v quit (Remote host closed the connection) 2020-09-23T18:47:08Z v_m_v joined #scheme 2020-09-23T18:48:38Z lloda quit (Ping timeout: 256 seconds) 2020-09-23T18:49:04Z Zipheir: I though "blub" was the notional not-quite-expressive-enough language? Not specifically non-Lisp. 2020-09-23T18:49:59Z badkins quit (Remote host closed the connection) 2020-09-23T18:50:35Z wasamasa: I can't see a lisp ever being a blub 2020-09-23T18:50:42Z gwatt: It's the strawman language that lispers don't like 2020-09-23T18:51:26Z wasamasa: so by definition a blub must be non-lisp 2020-09-23T18:51:41Z v_m_v quit (Ping timeout: 272 seconds) 2020-09-23T18:52:24Z gwatt: Didn't the term come out of a paul graham essay? 2020-09-23T18:52:39Z wasamasa: I'm sure of it 2020-09-23T18:52:49Z Zipheir: wasamasa: bel-ub, perhaps. 2020-09-23T18:52:54Z wasamasa: lol 2020-09-23T18:53:04Z wasamasa: bel is too loved by hackernews for that 2020-09-23T18:53:16Z badkins joined #scheme 2020-09-23T18:56:46Z v_m_v joined #scheme 2020-09-23T18:59:36Z Zipheir: To people accustomed to logic programming and pattern-matching, Lisps probably look pretty blubby. 2020-09-23T19:00:18Z aeth: Lisps are designed as languages for writing declarative languages rather than as declarative languages. 2020-09-23T19:00:27Z wasamasa: I regularly get comments about how verbose lisp is compared to someone writing C or anything other with good shorthand 2020-09-23T19:00:52Z Riastradh: lisps are designed as languages for pontificating about writing declarative languages 2020-09-23T19:00:52Z Zipheir: Hah, C? It's incredibly verbose compared to Lisp. 2020-09-23T19:00:57Z aeth: Lisp tends to only be verbose for array stuff where most languages have a notation like a[42] = 5; 2020-09-23T19:01:02Z wasamasa: it depends what problems you pick 2020-09-23T19:01:27Z Zipheir: aeth: And bitwise stuff. 2020-09-23T19:01:28Z gwatt: also bitwise-arithmetic-shift-left vs << 2020-09-23T19:01:38Z aeth: Lisp isn't very concise at a character level, but it is really concise at a syntactic token level 2020-09-23T19:02:02Z Riastradh: `bitwise' does not belong in that name 2020-09-23T19:02:03Z aeth: gwatt: that's on Scheme for having meaningful names, CL just has ASH for that 2020-09-23T19:02:05Z Riastradh: it is not a bitwise operation 2020-09-23T19:02:21Z wasamasa: last time I got that comment was for this release: https://github.com/bintracker/bintracker 2020-09-23T19:02:29Z Riastradh: Also `arithmetic shift left' is kind of absurd. 2020-09-23T19:02:33Z wasamasa: the competition there would most likely be writing tcl 2020-09-23T19:02:52Z gwatt: Riastradh: well, that's what R6RS calls it. I guess one could always do an import alias to << 2020-09-23T19:03:12Z Riastradh: gwatt: yes and it's wrong! 2020-09-23T19:03:14Z wasamasa: for me it always feels comical to write image processing code in scheme 2020-09-23T19:03:23Z Zipheir: arithmetic-shift in R7 large (SRFI 151). 2020-09-23T19:04:44Z wasamasa: another possible example in that codebase is template/string generation 2020-09-23T19:05:46Z wasamasa: or the contortions in writing named let loops as compared to some mutating C-style loop 2020-09-23T19:06:02Z tristero quit (Ping timeout: 256 seconds) 2020-09-23T19:07:00Z Zipheir: Named let gets ugly, but there are of course alternatives. 2020-09-23T19:07:49Z wasamasa: generally libraries I come across tend to sacrifice clarity in favor of purity 2020-09-23T19:08:05Z Zipheir: The important things about a language are (1) good primitives, (2) good ways to combine primitives, and (3) good ways to abstract. This might sound familiar. 2020-09-23T19:08:08Z wasamasa: and rather have long identifiers than confusable ones 2020-09-23T19:08:22Z wasamasa: I sometimes do things in my code like (define str string-append) 2020-09-23T19:10:25Z wasamasa: but there's obviously more you can do with common topics like regex processing, hash tables, ... 2020-09-23T19:11:32Z Zipheir: Conciseness (concision?) isn't everything. Clarity is everything. 2020-09-23T19:12:02Z gwatt: brevity is the word I think you want 2020-09-23T19:12:30Z Zipheir: There's got to be a noun for that adjective, though. 2020-09-23T19:12:35Z wasamasa: for example for regex matching I could see a macro that binds a list of named identifiers to parts on a successful match 2020-09-23T19:12:52Z wasamasa: basically what ruby offers with $n, but less footguns :D 2020-09-23T19:13:03Z gwatt: Zipheir: "brevity" is a noin 2020-09-23T19:13:06Z gwatt: noun* 2020-09-23T19:13:11Z Zipheir: It'll be unhygienic, unfortunately. 2020-09-23T19:13:20Z wasamasa: it doesn't have to be 2020-09-23T19:17:18Z Zipheir: True, if the list of identifiers is provided. 2020-09-23T19:19:36Z gwatt: That's probably the best way to approach regex matching + binding 2020-09-23T19:19:39Z Zipheir: Submatches can really suck efficiency-wise if the engine implements them with backtracking. (IIRC Perl's does) 2020-09-23T19:20:18Z arew quit (Ping timeout: 272 seconds) 2020-09-23T19:20:41Z hendursaga quit (Remote host closed the connection) 2020-09-23T19:21:14Z Zipheir: (Although back-references are the really disastrous regex feature, until someone finds a clever solution.) 2020-09-23T19:21:42Z hendursaga joined #scheme 2020-09-23T19:23:22Z wasamasa: http://ix.io/2yxn 2020-09-23T19:23:31Z wasamasa: here's what I'm thinking of, for numbered matches only 2020-09-23T19:25:13Z wasamasa: can't write it myself with syntax-rules though because I don't know how to expand to a let with increasing numbers for values :D 2020-09-23T19:25:54Z Zipheir: Maybe you could define it in terms of a call-with-submatches procedure. 2020-09-23T19:28:59Z Zipheir: Oh, increasing integer values? That does not sound syntax-rules-able. 2020-09-23T19:34:03Z arew joined #scheme 2020-09-23T19:39:18Z schemer quit (Remote host closed the connection) 2020-09-23T19:40:30Z v_m_v quit (Remote host closed the connection) 2020-09-23T19:54:19Z Riastradh: (+ 1 (+ 1 (+ 1 ...))) 2020-09-23T19:55:40Z aeth: Why even have integers instead of just representing them as lists? '() is 0 because it contains 0 elements, '(()) is 1 and it contains 0, '(() (())) is 2 and it contains 0 and 1... and so on. 2020-09-23T19:55:56Z Riastradh: presumably because wasamasa wants to pass it to vector-ref 2020-09-23T19:56:07Z wasamasa: I want macros for expanding into efficient code, not to peano golf 2020-09-23T19:56:26Z wasamasa: using a macro shouldn't be less efficient than writing the equivalent code 2020-09-23T19:56:27Z Riastradh: If (+ 1 (+ 1 (+ 1 ...))) doesn't yield efficient code I think your problem is not the macro. 2020-09-23T19:56:39Z wasamasa: that's not the peano golf part 2020-09-23T19:57:29Z aeth: wasamasa: Well, a sufficiently smart compiler can treat integers and "peano golf" as equivalent. But then you'd still be able to (car 1) to get '() which makes sense, given the underlying abstract representation! 2020-09-23T19:58:59Z arew quit (Ping timeout: 240 seconds) 2020-09-23T20:02:37Z aeth: Riastradh: a dynamically typed language isn't necessarily going to optimize (+ 1 (+ 1 (+ 1 ...))) into (+ 3 ...) 2020-09-23T20:02:39Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-23T20:03:14Z Riastradh: aeth: if your compiler can't figure out that (+ 1 (+ 1 (+ 1 0))) evaluates to 3 then you have a bad compiler. 2020-09-23T20:03:44Z arew joined #scheme 2020-09-23T20:06:30Z aeth: Riastradh: SBCL optimizes (+ 1 (+ 1 (+ 1 0))) into the constant 6 (i.e. (ash 3 1)), but if it is instead the variable x, then it will not combine the generic-+'s into one operation. Although it probably could/should. 2020-09-23T20:07:03Z aeth: Riastradh: and if SBCL doesn't handle this fully optimally, I'm not that hopeful about other Lisps. 2020-09-23T20:08:03Z aeth: I'd try a fast Scheme, but they tend to use JIT and that's beyond my ability to look inside. 2020-09-23T20:10:04Z Riastradh: (+ 1 (+ 1 (+ 1 0))) = 6 is quite a trick 2020-09-23T20:10:23Z aeth: Yes. 2020-09-23T20:10:39Z gwatt: Does that include a tag bit or something? 2020-09-23T20:10:42Z aeth: Yes. 2020-09-23T20:14:04Z evdubs joined #scheme 2020-09-23T20:14:45Z aeth: SBCL uses a variable-sized tag bit system and the x86-64 version of it only uses 1 bit to tag fixnums, just an arithmetic shift, which gives it pretty much the largest possible 64-bit tagged fixnum. I say this in detail in hopes implementers copy it. 2020-09-23T20:15:27Z evdubs_ quit (Ping timeout: 240 seconds) 2020-09-23T20:15:40Z aeth: (i.e. it has 63-bit fixnums... 62-bit if you're treating them as unsigned since there's not actually a distinct unsigned fixnum type) 2020-09-23T20:15:45Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-23T20:19:32Z v_m_v joined #scheme 2020-09-23T20:19:36Z aeth: On top of that, it will special case signed/unsigned 64-bit integers that don't leave function scope and not turn those into bignums. So it can use fixnum-style fast arithmetic on what Scheme calls u64/s64 arrays and won't potentially create bignums for some restricted operations on those arrays. 2020-09-23T20:19:45Z aeth: That's another thing Scheme implementers should copy. 2020-09-23T20:20:42Z aeth: Probably a bit easier for Scheme implementations, actually, since SBCL has to rely on type declarations here. 2020-09-23T20:21:34Z aeth: You can avoid double-float boxing in a similar way, and this is sort of the minimum necessary for "low level" programming in a Lisp. 2020-09-23T20:21:50Z jcowan: wasamasa: The name has nothing to do with speed, and I don't even like it much, I just don't have a better one. 2020-09-23T20:22:01Z Riastradh: mit-scheme already does that for floats 2020-09-23T20:23:10Z aeth: Riastradh: Surprisingly, MIT Scheme might have the most advanced number system for a Scheme. 2020-09-23T20:23:14Z jcowan: All it does is serve static files and allow you to send it JSON to which it replies with JSON 2020-09-23T20:23:20Z Riastradh: Why is that surprising? 2020-09-23T20:23:34Z jcowan: Nobody else supports multiple float formats 2020-09-23T20:23:45Z jcowan: (except Racket BC) 2020-09-23T20:23:47Z v_m_v quit (Ping timeout: 240 seconds) 2020-09-23T20:23:59Z aeth: Riastradh: because it's not *that* hard, but the more popular Schemes don't tend to have CL-ish advanced numeric systems 2020-09-23T20:24:04Z Riastradh: (I meant binary64 `double floats'; that's what `float' means in MIT Scheme.) 2020-09-23T20:24:32Z aeth: e.g. CL solves this problem, but most Schemes imo don't. https://old.reddit.com/r/scheme/comments/ixlkv8/how_inexactexact_01_should_work/ 2020-09-23T20:24:56Z aeth: I think I need to reinstall MIT Scheme to see if it does, though 2020-09-23T20:25:06Z jcowan: https://github.com/johnwcowan/r7rs-work/blob/master/FixnumInfo.md shows how big fixnums are on various Schemes 2020-09-23T20:25:15Z aeth: (fwiw, Airship Scheme does address the concern in that thread) 2020-09-23T20:25:49Z aeth: (I already noticed that problem and decided to use CL:RATIONALIZE's behavior as something that would produce less surprising results for the user) 2020-09-23T20:26:16Z aeth: (I would have done this even without access to a CL, I would've just hand-translated a CL:RATIONALIZE implementation first) 2020-09-23T20:27:03Z Riastradh: rudybot: eval (rationalize (inexact->exact 0.1) 1/1234) 2020-09-23T20:27:07Z rudybot: Riastradh: your r5rs sandbox is ready 2020-09-23T20:27:07Z rudybot: Riastradh: ; Value: 1/10 2020-09-23T20:28:32Z aeth: Riastradh: is r7rs's rationalize just a generalization of CL's rationalize but with the floating point precision size as the second argument? 2020-09-23T20:28:41Z aeth: the hyperspec doesn't really describe the algorithm 2020-09-23T20:29:24Z Riastradh: aeth: (rationalize x e) returns the simplest rational number whose distance from x is at most e 2020-09-23T20:30:46Z Riastradh: https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/runtime/arith.scm?id=bff4133fbdf18ecc19ccb94302baa407cc38531c#n845 2020-09-23T20:30:46Z rudybot: https://teensy.info/S2sg5bpRsj 2020-09-23T20:32:36Z jcowan: aeth: The implementation from the appendix to IEEE Scheme is at https://github.com/johnwcowan/r7rs-work/blob/master/RationalizeDefinition.md 2020-09-23T20:33:52Z evhan` is now known as evhan 2020-09-23T20:36:46Z Zipheir: Riastradh: Nice. I was under the impression that wasamasa wanted numbered *identifiers*, but I misunderstood. 2020-09-23T20:36:59Z wasamasa: no, just number values 2020-09-23T20:37:28Z wasamasa: the idea is to expand (foo bar) into (let ((foo (match 1)) (bar (match 2))) ...) 2020-09-23T20:38:45Z Riastradh: jcowan: bah 2020-09-23T20:38:51Z Riastradh: jcowan: should cite chapter & verse, not just the whole book 2020-09-23T20:39:06Z mmohammadi9812 joined #scheme 2020-09-23T20:39:07Z jcowan: How? 2020-09-23T20:40:03Z theseb joined #scheme 2020-09-23T20:40:09Z Riastradh: `By H&W Theorem 171 (Ch. X, p. 140), ...' 2020-09-23T20:46:25Z phwalkr quit 2020-09-23T20:47:56Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-23T20:49:50Z physpi quit (Ping timeout: 244 seconds) 2020-09-23T20:49:50Z kilimanjaro quit (Ping timeout: 244 seconds) 2020-09-23T20:49:55Z Balooga quit (Ping timeout: 244 seconds) 2020-09-23T20:49:56Z cemerick quit (Ping timeout: 240 seconds) 2020-09-23T20:50:45Z bitmapper quit (Ping timeout: 272 seconds) 2020-09-23T20:50:45Z Duns_Scrotus quit (Ping timeout: 272 seconds) 2020-09-23T20:50:52Z ec quit (Ping timeout: 244 seconds) 2020-09-23T20:50:55Z d_run quit (Ping timeout: 240 seconds) 2020-09-23T20:50:55Z duncanm quit (Ping timeout: 240 seconds) 2020-09-23T20:51:03Z mats quit (Ping timeout: 260 seconds) 2020-09-23T20:51:03Z jcowan quit (Ping timeout: 260 seconds) 2020-09-23T20:51:03Z samth quit (Ping timeout: 260 seconds) 2020-09-23T20:51:24Z physpi joined #scheme 2020-09-23T20:51:38Z rickbutton quit (Ping timeout: 260 seconds) 2020-09-23T20:51:38Z gf3_ quit (Ping timeout: 260 seconds) 2020-09-23T20:51:38Z ullbeking quit (Ping timeout: 260 seconds) 2020-09-23T20:51:38Z stephe quit (Ping timeout: 260 seconds) 2020-09-23T20:51:38Z kwmiebach quit (Ping timeout: 260 seconds) 2020-09-23T20:51:46Z Balooga joined #scheme 2020-09-23T20:51:51Z kilimanjaro joined #scheme 2020-09-23T20:52:01Z d_run joined #scheme 2020-09-23T20:52:03Z Duns_Scrotus joined #scheme 2020-09-23T20:52:06Z cemerick joined #scheme 2020-09-23T20:52:12Z ec joined #scheme 2020-09-23T20:52:20Z ullbeking joined #scheme 2020-09-23T20:52:24Z rickbutton joined #scheme 2020-09-23T20:52:28Z mats joined #scheme 2020-09-23T20:52:32Z kwmiebach joined #scheme 2020-09-23T20:52:45Z gf3_ joined #scheme 2020-09-23T20:52:47Z samth joined #scheme 2020-09-23T20:53:29Z duncanm joined #scheme 2020-09-23T20:53:29Z rudybot: la la la 2020-09-23T20:53:30Z stephe joined #scheme 2020-09-23T20:53:34Z jcowan joined #scheme 2020-09-23T20:53:38Z bitmapper joined #scheme 2020-09-23T21:03:51Z jcowan: Thanks, fixed 2020-09-23T21:05:33Z Riastradh: errr 2020-09-23T21:05:55Z Riastradh: jcowan: Not quite what I meant -- I don't actually know offhand which theorems justify this algorithm. 2020-09-23T21:06:10Z jcowan: Oh, that was just an example? 2020-09-23T21:06:17Z Riastradh: yes 2020-09-23T21:06:47Z jcowan: Well, the limited citation is what the IEEE standard says 2020-09-23T21:07:19Z Riastradh: (I mean, that there is a Theorem 171 in chapter X on p. 140, and it's kind of related, but it doesn't immediately justify the algorithm.) 2020-09-23T21:07:59Z Riastradh: (Annoyingly, the book doesn't have an index.) 2020-09-23T21:14:54Z Riastradh: I assume what the algorithm is doing is finding the first convergent in the continued fraction representation of x which differs from x by at most e, but I haven't looked closely. 2020-09-23T21:17:11Z phillbush quit (Quit: Leaving) 2020-09-23T21:19:48Z hugh_marera joined #scheme 2020-09-23T21:20:41Z Riastradh: aeth: FYI, if you want to get the equivalent of Common Lisp rationalize in MIT Scheme, I think you could do this: (rationalize (inexact->exact x) (inexact->exact (/ (flo:ulp x) 2))) 2020-09-23T21:21:06Z aeth: Riastradh: yes, / 2 2020-09-23T21:21:10Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-23T21:21:28Z aeth: I didn't want to waste lines on IRC to partially correct myself 2020-09-23T21:22:50Z aeth: Riastradh: thanks for the full correction, though 2020-09-23T21:23:34Z Riastradh: I didn't mean that as a correction; I was just showing exactly how you can evaluate it in MIT Scheme. 2020-09-23T21:24:38Z theseb quit (Quit: Leaving) 2020-09-23T21:24:44Z phillbush joined #scheme 2020-09-23T21:29:24Z jcowan: aeth: Given that almost all the bits passing over the Internet are video, a few lines on IRC are unnoticeable 2020-09-23T21:35:27Z phillbush quit (Quit: Leaving) 2020-09-23T21:39:02Z v_m_v joined #scheme 2020-09-23T21:39:29Z phillbush joined #scheme 2020-09-23T21:43:57Z v_m_v quit (Ping timeout: 272 seconds) 2020-09-23T22:03:20Z greyeax joined #scheme 2020-09-23T22:16:10Z hugh_marera quit (Quit: hugh_marera) 2020-09-23T22:25:40Z sudden quit (Ping timeout: 256 seconds) 2020-09-23T22:50:07Z ullbeking quit (Ping timeout: 240 seconds) 2020-09-23T22:50:27Z Balooga quit (Ping timeout: 240 seconds) 2020-09-23T22:50:37Z travv0 quit (Read error: Connection reset by peer) 2020-09-23T22:50:38Z samth quit (Read error: Connection reset by peer) 2020-09-23T22:50:38Z d_run quit (Read error: Connection reset by peer) 2020-09-23T22:50:44Z bchar quit (Read error: Connection reset by peer) 2020-09-23T22:50:56Z Boarders quit (Ping timeout: 240 seconds) 2020-09-23T22:51:27Z kilimanjaro quit (Ping timeout: 240 seconds) 2020-09-23T22:51:32Z gf3_ quit (Ping timeout: 260 seconds) 2020-09-23T22:51:32Z kwmiebach quit (Ping timeout: 260 seconds) 2020-09-23T22:51:32Z ec quit (Ping timeout: 260 seconds) 2020-09-23T22:51:32Z cemerick quit (Ping timeout: 260 seconds) 2020-09-23T22:51:32Z physpi quit (Ping timeout: 260 seconds) 2020-09-23T22:51:43Z jcowan quit (Ping timeout: 272 seconds) 2020-09-23T22:51:43Z mats quit (Ping timeout: 272 seconds) 2020-09-23T22:51:48Z nikita` quit (Ping timeout: 260 seconds) 2020-09-23T22:52:14Z travv0 joined #scheme 2020-09-23T22:52:40Z cemerick joined #scheme 2020-09-23T22:52:43Z jcowan joined #scheme 2020-09-23T22:52:47Z rickbutton quit (Ping timeout: 240 seconds) 2020-09-23T22:52:50Z nikita` joined #scheme 2020-09-23T22:53:17Z Duns_Scrotus quit (Ping timeout: 260 seconds) 2020-09-23T22:53:38Z bchar joined #scheme 2020-09-23T22:53:47Z ec joined #scheme 2020-09-23T22:54:03Z badkins quit (Remote host closed the connection) 2020-09-23T22:54:05Z Balooga joined #scheme 2020-09-23T22:54:05Z physpi joined #scheme 2020-09-23T22:54:14Z ullbeking joined #scheme 2020-09-23T22:54:22Z samth joined #scheme 2020-09-23T22:54:28Z kilimanjaro joined #scheme 2020-09-23T22:54:51Z gf3_ joined #scheme 2020-09-23T22:55:05Z d_run joined #scheme 2020-09-23T22:55:05Z rickbutton joined #scheme 2020-09-23T22:55:13Z mats joined #scheme 2020-09-23T22:55:18Z duncanm quit (Ping timeout: 260 seconds) 2020-09-23T22:56:13Z duncanm joined #scheme 2020-09-23T22:56:13Z rudybot: la la la 2020-09-23T22:56:14Z Duns_Scrotus joined #scheme 2020-09-23T22:56:16Z kwmiebach joined #scheme 2020-09-23T22:57:11Z Boarders joined #scheme 2020-09-23T22:58:19Z travv0 quit (Ping timeout: 258 seconds) 2020-09-23T22:58:32Z cemerick quit (Ping timeout: 256 seconds) 2020-09-23T23:01:04Z cemerick joined #scheme 2020-09-23T23:01:48Z travv0 joined #scheme 2020-09-23T23:13:41Z badkins joined #scheme 2020-09-23T23:17:45Z ec is now known as ELLIOTTCABLE 2020-09-23T23:18:00Z ELLIOTTCABLE is now known as ec 2020-09-23T23:27:07Z v_m_v joined #scheme 2020-09-23T23:32:02Z v_m_v quit (Ping timeout: 260 seconds) 2020-09-23T23:42:38Z sudden joined #scheme 2020-09-24T00:47:59Z badkins quit (Remote host closed the connection) 2020-09-24T00:49:06Z badkins joined #scheme 2020-09-24T00:54:13Z badkins quit (Ping timeout: 264 seconds) 2020-09-24T01:06:44Z gnomon quit (Ping timeout: 258 seconds) 2020-09-24T01:07:19Z gnomon joined #scheme 2020-09-24T01:15:07Z v_m_v joined #scheme 2020-09-24T01:20:17Z v_m_v quit (Ping timeout: 260 seconds) 2020-09-24T01:49:35Z phillbush quit (Remote host closed the connection) 2020-09-24T01:58:28Z foof: if you apply for an electronic absentee ballot from PA, you get a link to a site requiring a microsoft or gmail account, allowing you to download a password-protected pdf, with the password sent in a separate email. 2020-09-24T01:58:51Z foof: the contents of this document are... just a blank ballot with mail-in instructions, and zero personal information. 2020-09-24T02:09:31Z greyeax left #scheme 2020-09-24T02:09:55Z v_m_v joined #scheme 2020-09-24T02:11:37Z greyeax joined #scheme 2020-09-24T02:13:18Z alicemaz_ quit (Ping timeout: 256 seconds) 2020-09-24T02:14:03Z greyeax quit (Remote host closed the connection) 2020-09-24T02:15:01Z v_m_v quit (Ping timeout: 272 seconds) 2020-09-24T02:20:46Z greyeax joined #scheme 2020-09-24T02:36:57Z greyeax left #scheme 2020-09-24T02:46:40Z alicemaz_ joined #scheme 2020-09-24T02:50:33Z badkins joined #scheme 2020-09-24T02:55:25Z badkins quit (Ping timeout: 265 seconds) 2020-09-24T03:06:55Z ex_nihilo joined #scheme 2020-09-24T03:31:47Z kori quit (Ping timeout: 260 seconds) 2020-09-24T03:52:36Z gravicappa joined #scheme 2020-09-24T03:54:15Z kori joined #scheme 2020-09-24T04:06:38Z lambda-11235 joined #scheme 2020-09-24T04:27:49Z kori quit (Read error: Connection reset by peer) 2020-09-24T04:49:11Z kori joined #scheme 2020-09-24T04:51:12Z badkins joined #scheme 2020-09-24T04:55:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-24T05:01:56Z kori quit (Read error: Connection reset by peer) 2020-09-24T05:14:28Z sudden quit (Ping timeout: 260 seconds) 2020-09-24T05:22:32Z Zipheir: "See, we have election security!" 2020-09-24T05:23:15Z kori joined #scheme 2020-09-24T05:23:15Z kori quit (Changing host) 2020-09-24T05:23:15Z kori joined #scheme 2020-09-24T05:23:49Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-24T05:28:55Z kori quit (Read error: Connection reset by peer) 2020-09-24T05:30:37Z mirrorbird joined #scheme 2020-09-24T05:48:39Z rickygee joined #scheme 2020-09-24T05:50:29Z kori joined #scheme 2020-09-24T05:50:29Z kori quit (Changing host) 2020-09-24T05:50:29Z kori joined #scheme 2020-09-24T05:55:32Z rickygee quit (Ping timeout: 272 seconds) 2020-09-24T06:03:12Z kori quit (Read error: Connection reset by peer) 2020-09-24T06:04:37Z ManDay joined #scheme 2020-09-24T06:15:41Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-24T06:20:44Z mmohammadi9812 joined #scheme 2020-09-24T06:24:43Z kori joined #scheme 2020-09-24T06:25:56Z mmohammadi9812 quit (Ping timeout: 272 seconds) 2020-09-24T06:33:28Z dbmikus joined #scheme 2020-09-24T06:49:15Z civodul joined #scheme 2020-09-24T06:52:12Z badkins joined #scheme 2020-09-24T06:53:57Z klovett quit (Remote host closed the connection) 2020-09-24T06:54:32Z klovett joined #scheme 2020-09-24T06:56:35Z badkins quit (Ping timeout: 240 seconds) 2020-09-24T07:03:19Z foof: It's all part of the democrat pedophiles' plot to rig the election. 2020-09-24T07:06:01Z autumn[m]: Now that does sound like questionable information. 2020-09-24T07:06:36Z ManDay: another day in #scheme, another weird subject 2020-09-24T07:07:38Z aeth: the weirdest subject of all is the Scheme programming language 2020-09-24T07:07:54Z gravicappa joined #scheme 2020-09-24T07:08:53Z arew: appropriate time greetings :) 2020-09-24T07:11:07Z ManDay quit (Ping timeout: 260 seconds) 2020-09-24T07:11:46Z arew: :/ 2020-09-24T07:12:02Z autumn[m]: appropriate time greetings? 2020-09-24T07:12:16Z arew: depending on timezone 2020-09-24T07:12:35Z autumn[m]: oh I get it, I was just responding :p 2020-09-24T07:13:10Z kori quit (Read error: Connection reset by peer) 2020-09-24T07:14:25Z arew: On my side things are very good, since i solved the problem I had with aws at $work 2020-09-24T07:14:54Z arew: I figured that grinding at work on difficult problem was draining my energy. 2020-09-24T07:15:21Z arew: because I solved the aws issue, I feel much better and woke up early :) 2020-09-24T07:17:21Z arew: also I figured, floss work is much easier, since you can just fork. At work, forking is... impossible. 2020-09-24T07:18:29Z notzmv` joined #scheme 2020-09-24T07:21:57Z notzmv quit (Ping timeout: 260 seconds) 2020-09-24T07:25:41Z siraben: UTC time greetings, perhaps 2020-09-24T07:29:22Z amirouche joined #scheme 2020-09-24T07:32:26Z arew quit (Ping timeout: 272 seconds) 2020-09-24T07:34:40Z mirrorbird joined #scheme 2020-09-24T07:35:17Z kori joined #scheme 2020-09-24T07:35:17Z kori quit (Changing host) 2020-09-24T07:35:17Z kori joined #scheme 2020-09-24T07:46:06Z ex_nihilo quit (Quit: Leaving) 2020-09-24T07:48:59Z daviid quit (Ping timeout: 240 seconds) 2020-09-24T07:52:08Z kori quit (Read error: Connection reset by peer) 2020-09-24T07:57:30Z kori joined #scheme 2020-09-24T08:09:25Z hendursa1 joined #scheme 2020-09-24T08:11:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-24T08:19:11Z kori quit (Read error: Connection reset by peer) 2020-09-24T08:22:48Z lambda-11235 quit (Quit: Bye) 2020-09-24T08:40:44Z kori joined #scheme 2020-09-24T08:53:09Z badkins joined #scheme 2020-09-24T08:57:56Z badkins quit (Ping timeout: 272 seconds) 2020-09-24T09:03:28Z kori quit (Read error: Connection reset by peer) 2020-09-24T09:18:54Z jobol joined #scheme 2020-09-24T09:25:07Z kori joined #scheme 2020-09-24T09:38:40Z kori quit (Read error: Connection reset by peer) 2020-09-24T09:59:44Z kori joined #scheme 2020-09-24T09:59:44Z kori quit (Changing host) 2020-09-24T09:59:44Z kori joined #scheme 2020-09-24T10:08:23Z kori quit (Read error: Connection reset by peer) 2020-09-24T10:25:40Z cpressey joined #scheme 2020-09-24T10:29:58Z kori joined #scheme 2020-09-24T10:30:07Z cpressey quit (Client Quit) 2020-09-24T10:51:07Z ManDay joined #scheme 2020-09-24T10:54:06Z badkins joined #scheme 2020-09-24T10:58:11Z badkins quit (Ping timeout: 240 seconds) 2020-09-24T11:11:56Z abralek[m] joined #scheme 2020-09-24T11:12:25Z notzmv` is now known as notzmv 2020-09-24T11:12:35Z notzmv quit (Changing host) 2020-09-24T11:12:35Z notzmv joined #scheme 2020-09-24T11:17:38Z kori quit (Read error: Connection reset by peer) 2020-09-24T11:27:32Z ManDay quit (Ping timeout: 260 seconds) 2020-09-24T11:30:10Z ManDay joined #scheme 2020-09-24T11:39:10Z kori joined #scheme 2020-09-24T11:43:37Z v_m_v_ joined #scheme 2020-09-24T11:48:44Z kori quit (Read error: Connection reset by peer) 2020-09-24T11:49:22Z v_m_v_ quit (Ping timeout: 260 seconds) 2020-09-24T11:57:30Z mirrorbird quit (Quit: Leaving) 2020-09-24T12:10:42Z kori joined #scheme 2020-09-24T12:10:42Z kori quit (Changing host) 2020-09-24T12:10:42Z kori joined #scheme 2020-09-24T12:16:15Z kori quit (Read error: Connection reset by peer) 2020-09-24T12:38:16Z kori joined #scheme 2020-09-24T12:38:50Z stux|work quit (Read error: Connection reset by peer) 2020-09-24T12:39:38Z stux|work joined #scheme 2020-09-24T12:43:56Z mirrorbird joined #scheme 2020-09-24T12:45:37Z badkins joined #scheme 2020-09-24T12:47:06Z kori quit (Read error: Connection reset by peer) 2020-09-24T12:52:27Z kori joined #scheme 2020-09-24T12:54:00Z jcowan: foof: There isn't a barcode in the PDF er sumpn? 2020-09-24T12:58:00Z klovett quit (Remote host closed the connection) 2020-09-24T12:58:19Z klovett joined #scheme 2020-09-24T13:04:54Z hendursa1 quit (Quit: hendursa1) 2020-09-24T13:05:17Z hendursaga joined #scheme 2020-09-24T13:17:29Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-24T13:30:53Z v_m_v_ joined #scheme 2020-09-24T13:35:17Z v_m_v_ quit (Ping timeout: 260 seconds) 2020-09-24T13:48:34Z mirrorbird joined #scheme 2020-09-24T14:00:33Z phillbush joined #scheme 2020-09-24T14:07:27Z kori quit (Read error: Connection reset by peer) 2020-09-24T14:08:37Z kori joined #scheme 2020-09-24T14:22:00Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-24T14:22:27Z ManDay quit (Quit: WeeChat 2.9) 2020-09-24T14:26:39Z klovett quit 2020-09-24T14:29:33Z bitmapper joined #scheme 2020-09-24T14:30:19Z klovett joined #scheme 2020-09-24T14:36:27Z schemer joined #scheme 2020-09-24T14:44:05Z klovett_ joined #scheme 2020-09-24T14:48:06Z klovett quit (Ping timeout: 256 seconds) 2020-09-24T15:08:02Z ManDay joined #scheme 2020-09-24T15:31:54Z klovett_ is now known as klovett 2020-09-24T15:35:25Z deesix quit (Read error: Connection reset by peer) 2020-09-24T15:35:44Z deesix joined #scheme 2020-09-24T15:36:27Z schemer quit (Remote host closed the connection) 2020-09-24T15:41:38Z tristero joined #scheme 2020-09-24T16:08:24Z arew joined #scheme 2020-09-24T16:10:01Z amirouche quit (Ping timeout: 265 seconds) 2020-09-24T16:13:08Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-24T16:13:47Z abralek[m] joined #scheme 2020-09-24T16:16:14Z abralek[m] quit (Read error: Connection reset by peer) 2020-09-24T16:16:22Z abralek[m] joined #scheme 2020-09-24T16:22:08Z jobol quit (Quit: Leaving) 2020-09-24T16:23:48Z abralek[m] quit (Ping timeout: 272 seconds) 2020-09-24T16:24:02Z abralek[m] joined #scheme 2020-09-24T16:32:45Z Riastradh: aeth: Turns out there's a much simpler idiom in MIT Scheme: (rationalize->exact .1 (flo:ulp .1)) 2020-09-24T16:38:13Z ManDay quit (Quit: WeeChat 2.9) 2020-09-24T16:39:51Z badkins quit (Remote host closed the connection) 2020-09-24T16:40:28Z badkins joined #scheme 2020-09-24T16:42:49Z abralek[m] quit (Ping timeout: 264 seconds) 2020-09-24T16:45:58Z badkins quit (Ping timeout: 272 seconds) 2020-09-24T16:47:48Z mmohammadi98127 joined #scheme 2020-09-24T16:51:25Z badkins joined #scheme 2020-09-24T16:53:21Z mmohammadi98127 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-24T16:54:08Z badkins quit (Remote host closed the connection) 2020-09-24T16:54:16Z mmohammadi9812 joined #scheme 2020-09-24T16:54:16Z badkins joined #scheme 2020-09-24T16:56:54Z aeth quit (Ping timeout: 265 seconds) 2020-09-24T16:58:31Z aeth joined #scheme 2020-09-24T16:59:24Z daviid joined #scheme 2020-09-24T17:15:52Z nullheroes joined #scheme 2020-09-24T17:22:48Z kori quit (Quit: WeeChat 2.8) 2020-09-24T17:26:32Z kori joined #scheme 2020-09-24T17:26:32Z kori quit (Changing host) 2020-09-24T17:26:32Z kori joined #scheme 2020-09-24T17:34:18Z mmohammadi9812 quit (Ping timeout: 256 seconds) 2020-09-24T17:51:42Z catkiki joined #scheme 2020-09-24T17:56:27Z mmohammadi9812 joined #scheme 2020-09-24T18:08:10Z gmaggior joined #scheme 2020-09-24T18:25:58Z v_m_v joined #scheme 2020-09-24T18:30:42Z v_m_v quit (Ping timeout: 260 seconds) 2020-09-24T18:40:30Z phillbush quit (Remote host closed the connection) 2020-09-24T18:45:59Z izh_ joined #scheme 2020-09-24T18:47:01Z badkins quit (Remote host closed the connection) 2020-09-24T18:47:42Z badkins joined #scheme 2020-09-24T18:50:19Z badkins quit (Remote host closed the connection) 2020-09-24T18:50:29Z badkins joined #scheme 2020-09-24T18:54:45Z arew: define-syntax-rule is probably the form that copy paste the most. 2020-09-24T18:55:03Z arew: I really can not remember it, but i know how to use it. 2020-09-24T19:15:05Z dTal just likes the unhygienic (macro '(old) '(new)) 2020-09-24T19:16:58Z jcowan: Of course if you have that, you also have (macro '(shoot) '(your foot)). 2020-09-24T19:18:52Z ecraven: no need to quote shoot with a macro, right? 2020-09-24T19:32:26Z phillbush joined #scheme 2020-09-24T19:34:13Z gravicappa quit (Ping timeout: 246 seconds) 2020-09-24T19:36:16Z gravicappa joined #scheme 2020-09-24T19:45:33Z izh_ quit (Quit: Leaving) 2020-09-24T19:47:03Z madage quit (Ping timeout: 240 seconds) 2020-09-24T19:48:03Z jcowan: I was just copying dTal 2020-09-24T19:48:21Z madage joined #scheme 2020-09-24T19:50:24Z arew: ecraven has no humor :] 2020-09-24T19:51:29Z ecraven: not if it comes to quoting! a serious topic! :D :P 2020-09-24T19:52:27Z arew: ! 2020-09-24T19:52:40Z Zipheir: ecraven: Can we quote you on that? 2020-09-24T19:52:44Z jcowan: Misquotation is the _parole_ of netters all over the world. 2020-09-24T19:53:05Z jcowan: both Cicero and Abraham Lincoln said so 2020-09-24T19:53:26Z ecraven: Zipheir: haha, good one! 2020-09-24T19:53:30Z jcowan: (actually I'm misquoting them: they talked about misattribution, but mis-this, mis-that, pretty soon it's miss-everything) 2020-09-24T19:53:59Z ecraven: getting a bit slow today, still trying to correctly configure postfix+dovecot+openldap... interesting thing, mail servers 2020-09-24T19:55:56Z arew: interesting?! 2020-09-24T19:56:22Z Zipheir: "Misquotation is for netters on parole all over the world" --jcowan, IIRC 2020-09-24T19:56:25Z ecraven: well, lots of logs to investigate when something fails (and it always does :D) 2020-09-24T19:56:37Z arew: ecraven: exactly. 2020-09-24T19:57:07Z jcowan: "Go and tell the Spartans, passerby / "Erm, I forget what" 2020-09-24T19:57:15Z arew: ecraven: it is been 3 weeks i am abused by some public cloud with their "web-scale offering" for an app that I can spin on a debian in 2hours :( 2020-09-24T19:57:42Z arew: ecraven: indeed logs are scattered everywhere 2020-09-24T19:57:52Z arew: ecraven: also they rely on redhat derivative.. 2020-09-24T19:58:03Z arew: even libcurl is second class citizen. 2020-09-24T19:59:04Z jcowan: Don't get me started on corporate firewalls and curl vs wget 2020-09-24T19:59:22Z Zipheir: arew: Do they have an issue with curl? 2020-09-24T20:01:55Z arew: Zipheir: it might be an debian / european things maybe, but libcurl does not work out of the box with the language bindings I am using, all weird incompatbility betwee nss (whatever that is) and openssl. 2020-09-24T20:02:13Z jcowan: [off] dpk: "A precedent unequaled in legal jug-headedness since Secretary Fall was convicted of receiving a bribe that Doheny was [twice] acquitted of paying." 2020-09-24T20:02:33Z dpk: ? 2020-09-24T20:03:00Z arew: I never dealt with firewall, except once I locked every outgoing network with an iptable rule and was looking into wifi card issues x) 2020-09-24T20:04:35Z Zipheir: arew: nss is Mozilla's TLS, IIRC? 2020-09-24T20:05:04Z arew: Zipheir: prolly yes. That seems like the default on redhat. 2020-09-24T20:05:56Z Zipheir: arew: A quick search suggests curl+nss = no fun. 2020-09-24T20:06:00Z jcowan: dpk: that should have been in another channel, of course, and ... 2020-09-24T20:06:20Z arew: anyway, the gist of it, is that it works painlessly with my favorite (and only stack I know that is debian, nginx, supervisord, gunicorn) but fails completly on redhat with apache, mod wsgi et al. 2020-09-24T20:07:12Z arew: first time I need to work with redhat, I am far from happy. 2020-09-24T20:08:52Z jcowan: My trouble was that I had to install corporate certs on my Linux box to make their https firewall work correctly 2020-09-24T20:09:19Z jcowan: And you have to put them in two places, where the browser expects and where libtls expects. 2020-09-24T20:09:54Z badkins quit (Remote host closed the connection) 2020-09-24T20:11:07Z catkiki quit (Quit: Leaving) 2020-09-24T20:12:14Z arew: corporate certs are for mitm deep packet inspect i think. 2020-09-24T20:14:34Z Riastradh: jcowan: miss-everything sounds like more of a trumpian interest than anything lincolnian 2020-09-24T20:14:50Z badkins joined #scheme 2020-09-24T20:15:18Z jcowan: No doubt. But perhaps also the winner of the world's simplest beauty contest: "all have won, and all must have prizes" 2020-09-24T20:15:36Z ohama quit (Ping timeout: 260 seconds) 2020-09-24T20:17:32Z ohama joined #scheme 2020-09-24T20:18:09Z badkins quit (Remote host closed the connection) 2020-09-24T20:18:18Z badkins joined #scheme 2020-09-24T20:22:27Z mdhughes_ joined #scheme 2020-09-24T20:23:28Z aeth: Real macros use unnecessary quoting and then parse (quote foo) instead of (or in addition to! special case it!) foo. 2020-09-24T20:23:33Z notzmv` joined #scheme 2020-09-24T20:24:06Z aeth: It helps make users unclear about whether the syntax is a macro or a procedure call. 2020-09-24T20:24:12Z arew: i always find odd a symbol without quote. 2020-09-24T20:24:18Z mdhughes quit (Ping timeout: 256 seconds) 2020-09-24T20:24:21Z arew: even in a macro. 2020-09-24T20:24:35Z arew: also it looks like a variable but undefined. 2020-09-24T20:25:03Z catkiki joined #scheme 2020-09-24T20:26:45Z notzmv quit (Ping timeout: 240 seconds) 2020-09-24T20:35:50Z aeth: an unquoted symbol in a macro usually is some kind of variable. 2020-09-24T20:36:06Z aeth: e.g. define 2020-09-24T20:36:11Z mirrorbird quit (Remote host closed the connection) 2020-09-24T20:36:57Z mirrorbird joined #scheme 2020-09-24T20:39:09Z arew: I read it was because in the old times the ' shortcut did not exists, and people used that idiom in macro to save typing. 2020-09-24T20:40:42Z Riastradh: ' has been there since the beginning in Scheme 2020-09-24T20:41:31Z Riastradh: AIM 349, 1975, https://dspace.mit.edu/handle/1721.1/5794, p. 2: `The abbreviation "'FOO" may be used instead of "(QUOTE FOO)".' 2020-09-24T20:42:20Z Riastradh: (I think the notation was first introduced in Maclisp but I am not sure of the history before Maclisp had it.) 2020-09-24T20:44:54Z Riastradh: (It certainly appeared no later than 1974 in Maclisp, since it is described in the Moonual.) 2020-09-24T20:49:42Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-24T20:52:08Z notzmv`` joined #scheme 2020-09-24T20:52:41Z Riastradh: (It seems to have been added between 1970 and 1974, since it does not appear in the 1970 user guide.) 2020-09-24T20:55:44Z notzmv` quit (Ping timeout: 260 seconds) 2020-09-24T21:03:40Z notzmv`` quit (Ping timeout: 260 seconds) 2020-09-24T21:04:16Z jcowan: Interlisp has ', but that could be by diffusion rather than by common inheritance. 2020-09-24T21:05:40Z jcowan: Stanford Lisp 1.6 had "foo" instead of 'foo 2020-09-24T21:07:44Z phillbush quit (Remote host closed the connection) 2020-09-24T21:20:12Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-24T21:25:28Z gravicappa joined #scheme 2020-09-24T21:46:48Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-24T22:03:31Z foof: jcowan: I realized later there's a barcode on the envelope cover printout which I can't use because I'm mailing internationally. 2020-09-24T22:03:46Z jcowan: Ah. 2020-09-24T22:04:00Z jcowan: Can't you use it if you put the postage on it anyway? 2020-09-24T22:04:24Z foof: Yes, I was going to rewrite by hand but won't anymore. 2020-09-24T22:05:35Z foof: I guess this makes sense to preserve the privacy of my vote. They can confirm from the barcode that my vote was counted exactly once, but once opened this has no connection to the sealed envelope inside. 2020-09-24T22:12:03Z jcowan: Just so. When voting in tenant-union elections we use nested envelopes with our names on both of them: the envelopes are checked against the membership list, opened, and destroyed 2020-09-24T22:12:49Z jcowan: sorry, with our names on the outside one only 2020-09-24T22:12:57Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-24T22:25:26Z badkins quit (Ping timeout: 272 seconds) 2020-09-24T22:47:25Z mrkotfw joined #scheme 2020-09-24T22:47:47Z mrkotfw: Hello everyone. In general, when writing a library, and in an interactive shell, is it possible to reload a library? 2020-09-24T22:47:53Z mrkotfw: When (import (my-library))? 2020-09-24T22:52:00Z badkins joined #scheme 2020-09-24T22:52:44Z jcowan: In general, the results are unpredictable. 2020-09-24T22:53:39Z jcowan: Some Schemes will notice that it is already loaded and do nothing. Others will behave differently. 2020-09-24T22:54:22Z mrkotfw: Should I then just create a new environment? 2020-09-24T22:55:56Z mrkotfw: (eval '(proc-from-my-lib) (environment '(rnrs) '(my-lib))) 2020-09-24T23:03:38Z phillbush joined #scheme 2020-09-24T23:04:28Z mrkotfw: Hm, I think I just need to (load) it 2020-09-24T23:06:07Z phillbush quit (Client Quit) 2020-09-24T23:11:40Z tristero quit (Ping timeout: 272 seconds) 2020-09-24T23:39:11Z gmaggior quit (Quit: Leaving) 2020-09-25T00:00:53Z TCZ joined #scheme 2020-09-25T00:04:31Z klovett quit (Remote host closed the connection) 2020-09-25T00:04:59Z whiteline quit (Ping timeout: 260 seconds) 2020-09-25T00:05:11Z klovett joined #scheme 2020-09-25T00:12:03Z whiteline joined #scheme 2020-09-25T00:31:07Z TCZ quit (Quit: Leaving) 2020-09-25T00:34:06Z badkins quit (Remote host closed the connection) 2020-09-25T00:36:20Z badkins joined #scheme 2020-09-25T00:37:04Z lambda-11235 joined #scheme 2020-09-25T00:41:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-25T01:08:43Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-25T01:08:54Z X-Scale` joined #scheme 2020-09-25T01:10:05Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-25T01:10:06Z X-Scale` is now known as X-Scale 2020-09-25T01:22:12Z catkiki quit (Quit: Leaving) 2020-09-25T01:25:55Z mrkotfw: Wow, yeah... so (load) doesn't work under IronScheme 2020-09-25T01:26:13Z mrkotfw: I tried it under Chez, and it works as intended 2020-09-25T01:26:44Z mdhughes_ is now known as mdhughes 2020-09-25T01:35:41Z phillbush joined #scheme 2020-09-25T01:58:00Z klovett quit (Remote host closed the connection) 2020-09-25T01:58:16Z klovett joined #scheme 2020-09-25T02:37:46Z badkins joined #scheme 2020-09-25T02:42:13Z badkins quit (Ping timeout: 265 seconds) 2020-09-25T03:12:09Z mirrorbird joined #scheme 2020-09-25T03:13:48Z phillbush quit (Quit: Leaving) 2020-09-25T03:15:09Z mrkotfw: Is it possible to create an association list to hash table? 2020-09-25T03:17:00Z foof: alist->hash-table from SRFI 69/125 2020-09-25T03:28:12Z mrkotfw: Ah, yes, thank you! 2020-09-25T03:28:15Z mrkotfw: I had forgotten 2020-09-25T03:28:48Z mirrorbird quit (Quit: Leaving) 2020-09-25T03:30:10Z aeth_ joined #scheme 2020-09-25T03:31:34Z aeth quit (Ping timeout: 256 seconds) 2020-09-25T03:32:03Z aeth_ is now known as aeth 2020-09-25T03:58:37Z cjb joined #scheme 2020-09-25T04:08:36Z cjb quit (Quit: rcirc on GNU Emacs 27.1) 2020-09-25T04:38:38Z badkins joined #scheme 2020-09-25T04:43:32Z badkins quit (Ping timeout: 272 seconds) 2020-09-25T04:55:49Z gravicappa joined #scheme 2020-09-25T05:04:45Z mmohammadi9812 joined #scheme 2020-09-25T05:10:49Z retropikzel_ joined #scheme 2020-09-25T05:11:09Z retropikzel_ quit (Remote host closed the connection) 2020-09-25T05:18:01Z Zipheir quit (Quit: reloading...) 2020-09-25T05:20:07Z Zipheir joined #scheme 2020-09-25T05:46:08Z supercoven joined #scheme 2020-09-25T05:50:50Z _Googleman250[d] joined #scheme 2020-09-25T05:50:50Z [d]_ joined #scheme 2020-09-25T05:50:55Z _dmiles[d] joined #scheme 2020-09-25T05:51:01Z nyx[d]_ joined #scheme 2020-09-25T05:51:06Z _jacobpdq[d] joined #scheme 2020-09-25T05:51:12Z _jbalint[d] joined #scheme 2020-09-25T05:51:12Z _Dletta[d] joined #scheme 2020-09-25T05:51:17Z irc0[d]_ joined #scheme 2020-09-25T05:51:23Z _jeosol[d] joined #scheme 2020-09-25T05:51:30Z _jbalint[d] quit (Client Quit) 2020-09-25T05:51:30Z _dmiles[d] quit (Client Quit) 2020-09-25T05:51:30Z irc0[d]_ quit (Client Quit) 2020-09-25T05:51:30Z [d]_ quit (Client Quit) 2020-09-25T05:51:30Z _Dletta[d] quit (Remote host closed the connection) 2020-09-25T05:51:30Z _Googleman250[d] quit (Remote host closed the connection) 2020-09-25T05:51:30Z nyx[d]_ quit (Remote host closed the connection) 2020-09-25T05:51:30Z _jeosol[d] quit (Remote host closed the connection) 2020-09-25T05:51:30Z _jacobpdq[d] quit (Client Quit) 2020-09-25T05:52:07Z [d]_ joined #scheme 2020-09-25T05:52:07Z _Googleman250[d] joined #scheme 2020-09-25T05:52:12Z _dmiles[d] joined #scheme 2020-09-25T05:52:18Z nyx[d]_ joined #scheme 2020-09-25T05:52:23Z _jacobpdq[d] joined #scheme 2020-09-25T05:52:28Z _jbalint[d] joined #scheme 2020-09-25T05:52:34Z _Dletta[d] joined #scheme 2020-09-25T05:52:39Z irc0[d]_ joined #scheme 2020-09-25T05:52:45Z _jeosol[d] joined #scheme 2020-09-25T05:58:27Z supercoven quit (Max SendQ exceeded) 2020-09-25T05:58:40Z supercoven joined #scheme 2020-09-25T06:16:21Z klovett quit (Remote host closed the connection) 2020-09-25T06:16:49Z jobol joined #scheme 2020-09-25T06:16:59Z klovett joined #scheme 2020-09-25T06:30:07Z lambda-11235 quit (Quit: Bye) 2020-09-25T06:33:00Z v_m_v joined #scheme 2020-09-25T06:35:56Z ggole joined #scheme 2020-09-25T06:36:03Z lritter joined #scheme 2020-09-25T06:39:43Z badkins joined #scheme 2020-09-25T06:43:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-25T07:06:21Z Oddity joined #scheme 2020-09-25T07:06:27Z Oddity__ quit (Ping timeout: 260 seconds) 2020-09-25T07:26:16Z amirouche joined #scheme 2020-09-25T07:28:06Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-25T07:31:15Z mirrorbird joined #scheme 2020-09-25T07:39:47Z v_m_v quit (Remote host closed the connection) 2020-09-25T07:40:21Z v_m_v joined #scheme 2020-09-25T07:44:57Z v_m_v quit (Ping timeout: 260 seconds) 2020-09-25T07:52:00Z mirrorbird quit (Quit: Leaving) 2020-09-25T08:12:34Z hendursa1 joined #scheme 2020-09-25T08:13:47Z daviid quit (Ping timeout: 265 seconds) 2020-09-25T08:14:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-25T08:15:11Z _anniepoo[d] joined #scheme 2020-09-25T08:39:24Z skapata joined #scheme 2020-09-25T08:40:31Z badkins joined #scheme 2020-09-25T08:44:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-25T09:11:17Z cpressey joined #scheme 2020-09-25T09:30:32Z TCZ joined #scheme 2020-09-25T09:32:29Z mhmd[d]_ joined #scheme 2020-09-25T09:59:12Z mirrorbird joined #scheme 2020-09-25T10:20:53Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-25T10:41:24Z badkins joined #scheme 2020-09-25T10:45:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-25T10:54:49Z ArneBab quit (Ping timeout: 260 seconds) 2020-09-25T10:54:49Z ArneBab_ joined #scheme 2020-09-25T11:17:05Z catkiki joined #scheme 2020-09-25T11:17:34Z catkiki quit (Client Quit) 2020-09-25T11:19:07Z catkiki joined #scheme 2020-09-25T11:21:44Z phillbush joined #scheme 2020-09-25T11:32:24Z _aindilis[d] joined #scheme 2020-09-25T11:40:57Z daviid` joined #scheme 2020-09-25T11:43:33Z daviid` quit (Client Quit) 2020-09-25T11:47:53Z _jacobpdq[d] quit (Quit: Offline for 24h0m0s) 2020-09-25T11:47:53Z _Dletta[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z _dmiles[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z nyx[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-25T11:47:53Z irc0[d]_ quit (Remote host closed the connection) 2020-09-25T11:47:53Z _jeosol[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z _anniepoo[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z [d]_ quit (Quit: [d]_) 2020-09-25T11:47:53Z _jbalint[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z _aindilis[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z _Googleman250[d] quit (Remote host closed the connection) 2020-09-25T11:47:53Z mhmd[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-25T11:55:22Z [d]_ joined #scheme 2020-09-25T11:55:22Z _dmiles[d] joined #scheme 2020-09-25T11:55:28Z nyx[d]_ joined #scheme 2020-09-25T11:55:33Z _aindilis[d] joined #scheme 2020-09-25T11:55:39Z _jacobpdq[d] joined #scheme 2020-09-25T11:55:39Z _jbalint[d] joined #scheme 2020-09-25T11:55:50Z _jeosol[d] joined #scheme 2020-09-25T11:55:50Z irc0[d]_ joined #scheme 2020-09-25T12:00:01Z hendursa1 quit (Quit: hendursa1) 2020-09-25T12:00:16Z hendursaga joined #scheme 2020-09-25T12:04:29Z notzmv`` joined #scheme 2020-09-25T12:04:59Z notzmv`` is now known as notzmv 2020-09-25T12:05:18Z notzmv quit (Changing host) 2020-09-25T12:05:19Z notzmv joined #scheme 2020-09-25T12:16:53Z elflng quit (Quit: leaving) 2020-09-25T12:22:00Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-25T12:22:21Z TCZ quit (Quit: Leaving) 2020-09-25T12:23:26Z nyx[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-25T12:23:26Z _jbalint[d] quit (Remote host closed the connection) 2020-09-25T12:23:26Z irc0[d]_ quit (Remote host closed the connection) 2020-09-25T12:23:26Z _jacobpdq[d] quit (Remote host closed the connection) 2020-09-25T12:23:26Z [d]_ quit (Quit: [d]_) 2020-09-25T12:23:26Z _jeosol[d] quit (Remote host closed the connection) 2020-09-25T12:23:26Z _aindilis[d] quit (Remote host closed the connection) 2020-09-25T12:23:26Z _dmiles[d] quit (Remote host closed the connection) 2020-09-25T12:24:35Z [d]_ joined #scheme 2020-09-25T12:24:35Z _dmiles[d] joined #scheme 2020-09-25T12:24:40Z nyx[d]_ joined #scheme 2020-09-25T12:24:42Z _aindilis[d] joined #scheme 2020-09-25T12:24:46Z _jacobpdq[d] joined #scheme 2020-09-25T12:24:51Z _jbalint[d] joined #scheme 2020-09-25T12:24:52Z koo5[d]_ joined #scheme 2020-09-25T12:24:53Z irc0[d]_ joined #scheme 2020-09-25T12:24:59Z _jeosol[d] joined #scheme 2020-09-25T12:29:28Z elflng joined #scheme 2020-09-25T12:42:21Z badkins joined #scheme 2020-09-25T12:46:52Z badkins quit (Ping timeout: 265 seconds) 2020-09-25T12:58:00Z klovett quit (Remote host closed the connection) 2020-09-25T12:58:15Z klovett joined #scheme 2020-09-25T13:03:23Z cpressey joined #scheme 2020-09-25T13:05:31Z raingloom joined #scheme 2020-09-25T13:06:29Z civodul joined #scheme 2020-09-25T13:06:56Z _stoopkid2[d] joined #scheme 2020-09-25T13:07:24Z lockywolf: mrkotfw, working for Tinkoff by any chance? 2020-09-25T13:07:40Z klovett quit 2020-09-25T13:10:44Z klovett joined #scheme 2020-09-25T13:11:27Z badkins joined #scheme 2020-09-25T13:15:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-25T13:18:23Z hendursaga joined #scheme 2020-09-25T13:21:29Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-25T13:22:55Z _Dletta[d] joined #scheme 2020-09-25T13:43:24Z rgherdt joined #scheme 2020-09-25T13:52:42Z arew quit (Ping timeout: 260 seconds) 2020-09-25T14:08:29Z raingloom quit (Ping timeout: 260 seconds) 2020-09-25T14:22:40Z lloda joined #scheme 2020-09-25T14:24:51Z badkins quit (Remote host closed the connection) 2020-09-25T14:29:03Z badkins joined #scheme 2020-09-25T14:30:11Z TCZ joined #scheme 2020-09-25T14:32:18Z phillbush quit (Remote host closed the connection) 2020-09-25T14:33:57Z _Meredith[d] joined #scheme 2020-09-25T14:34:43Z klovett_ joined #scheme 2020-09-25T14:35:51Z phillbush joined #scheme 2020-09-25T14:36:05Z bitmapper joined #scheme 2020-09-25T14:36:06Z klovett quit (Ping timeout: 265 seconds) 2020-09-25T14:38:38Z mirrorbird joined #scheme 2020-09-25T14:40:16Z rgherdt quit (Remote host closed the connection) 2020-09-25T14:42:17Z ManDay joined #scheme 2020-09-25T14:47:57Z retropikzel joined #scheme 2020-09-25T14:48:21Z klovett joined #scheme 2020-09-25T14:49:14Z catkiki quit (Read error: Connection reset by peer) 2020-09-25T14:51:41Z civodul quit (Remote host closed the connection) 2020-09-25T14:52:32Z klovett_ quit (Ping timeout: 265 seconds) 2020-09-25T14:55:11Z retropikzel quit (Quit: Leaving) 2020-09-25T14:56:52Z civodul joined #scheme 2020-09-25T14:57:08Z retropikzel joined #scheme 2020-09-25T15:12:34Z raingloom joined #scheme 2020-09-25T15:32:07Z _Googleman250[d] joined #scheme 2020-09-25T15:56:10Z arew joined #scheme 2020-09-25T15:58:08Z arew: Weeeeeeeeeeeeeeeeeeeek end time! 2020-09-25T15:58:33Z amirouche quit (Ping timeout: 258 seconds) 2020-09-25T15:59:18Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-25T16:04:48Z mr_ab joined #scheme 2020-09-25T16:05:11Z mr_ab9 joined #scheme 2020-09-25T16:11:52Z jobol quit (Quit: Leaving) 2020-09-25T16:22:20Z tristero joined #scheme 2020-09-25T16:23:21Z Oddity quit (Read error: Connection reset by peer) 2020-09-25T16:26:59Z Zipheir: arew: So... even more work to do! (YMMV) 2020-09-25T16:34:24Z ManDay: end time? well isn't that a bit pessimistic? 2020-09-25T16:44:37Z arew: about more work... 2020-09-25T16:44:47Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-25T16:45:38Z arew: wasamasa: I know what the good thing is, but at some point I (or we?) need to settle on something to move forward: https://i.redd.it/t539nmnjfmq41.jpg 2020-09-25T16:50:50Z arew[d]_ joined #scheme 2020-09-25T16:52:39Z TCZ quit (Quit: Leaving) 2020-09-25T16:56:04Z daviid joined #scheme 2020-09-25T16:57:51Z ManDay: arew: end time? time of end? end of time? 2020-09-25T16:58:06Z ManDay: If it's just the end of work for the week, congrats :] 2020-09-25T17:00:31Z arew: week-end time :) 2020-09-25T17:00:33Z arew: yeah 2020-09-25T17:03:28Z arew: ManDay: what are you up to? 2020-09-25T17:04:28Z ManDay: nonstop work :] 2020-09-25T17:04:36Z ManDay: but I like it 2020-09-25T17:04:56Z arew: what is the topic of your work 2020-09-25T17:06:12Z ManDay: a special kind of solver for sufficiently harmless, infinite constraint systems 2020-09-25T17:07:11Z ManDay: (special in the sense that it doesn't solve just generically everything, but the system has to satisfy certain "adequate behaviour" assumptions) 2020-09-25T17:08:58Z mirrorbird joined #scheme 2020-09-25T17:09:44Z rtypo joined #scheme 2020-09-25T17:10:05Z rtypo left #scheme 2020-09-25T17:15:58Z badkins quit (Remote host closed the connection) 2020-09-25T17:16:06Z arew: oh i am clueless about that, is it somehow related to sat solvers? 2020-09-25T17:18:08Z ManDay_clone joined #scheme 2020-09-25T17:19:06Z ManDay_clone: re sat solvers, well it has to question satisfyability, but it's mostly trivial in that aspect. the system of equations (thus the assumtion) is assumed to be entirely degenerate to the effect that you can simply count DOFs 2020-09-25T17:19:42Z ManDay_clone: entirely NON-degenerate 2020-09-25T17:19:44Z ManDay_clone: ofc... 2020-09-25T17:20:44Z ManDay_clone: it's the backbone of an infrastructure which performs as few as necessarily calculations to provide a consistent answer when asked for a variable 2020-09-25T17:21:07Z ManDay_clone: it's rather difficult to explain, I've been working on the theory for more than a year now, so it might go outside of scope in this channel :-P 2020-09-25T17:21:17Z ManDay quit (Ping timeout: 260 seconds) 2020-09-25T17:21:55Z arew: not necessarly ;) 2020-09-25T17:22:12Z ManDay_clone: true, that channel doesn't really seem to have a scope x-D 2020-09-25T17:22:23Z ManDay_clone: *this channel 2020-09-25T17:22:29Z ManDay_clone: anyway, back to work ;) 2020-09-25T17:38:39Z badkins joined #scheme 2020-09-25T17:42:23Z brandstifter joined #scheme 2020-09-25T17:48:13Z brandstifter quit 2020-09-25T17:52:28Z Zipheir: Scope usually takes care of itself in this channel. Although it can get weird when people call a days-old continuation. 2020-09-25T18:01:42Z arew: > "[...] is a new sane implementation of the Scheme programming language..." 2020-09-25T18:01:46Z arew: what could possibly go wrong 2020-09-25T18:01:59Z koo5[d]_: sounds interesting , what does a typical input look like ManDay_clone? 2020-09-25T18:02:19Z koo5[d]_: arew, is this coming through? i'm not actually on the channel 2020-09-25T18:02:52Z arew: koo5[d]_: yes! 2020-09-25T18:02:56Z koo5[d]_: nice 2020-09-25T18:03:14Z arew: ah that is the discord bridge.. 2020-09-25T18:04:23Z koo5[d]_: yeah... 2020-09-25T18:04:38Z ManDay_clone: why not matrix ^^ 2020-09-25T18:04:38Z koo5 joined #scheme 2020-09-25T18:05:21Z arew: discord has the ability to regroup channels into the same "work" space. 2020-09-25T18:05:32Z arew: otherwise than that.. it has... emoji! 2020-09-25T18:05:59Z ManDay_clone: koo5[d]_: i sure hope it's promising. I've quit my job for three years to realize it. it's part of a much larger system. the "input" in that sense are requests for data from the top of the hirarchy, the clue is that the whole generation of the data is modular in "generators" and the system figures out which generators have to be invoked how to keep every answer it gives you consistent. 2020-09-25T18:06:18Z koo5: arew, well, we regrouped, and at the same time we split some:) 2020-09-25T18:06:38Z ManDay_clone: looks like I'm not the only clone here 2020-09-25T18:06:47Z ManDay_clone: we could have a clone war 2020-09-25T18:06:49Z arew: Zipheir: ^ 2020-09-25T18:07:03Z koo5: lol 2020-09-25T18:07:15Z arew: erf i am lost with all those nicks. 2020-09-25T18:07:17Z arew: sorry. 2020-09-25T18:07:25Z Zipheir: Are you both swarthy bounty-hunters with Australian accents? 2020-09-25T18:07:57Z ManDay_clone: "both" both or both both? 2020-09-25T18:08:01Z arew: I like this channel, I keep an english dictionary open, in any case.. 2020-09-25T18:10:03Z mirrorbird quit (Quit: Leaving) 2020-09-25T18:10:30Z koo5: ManDay_clone, is it intended for any specific domain? 2020-09-25T18:12:19Z arew: it is private source ]:> 2020-09-25T18:12:43Z ManDay_clone: koo5 my vision, should it come true, is that it will serve as a base for a ground-breaking game engine which can actually display whole universes on all scales. the core is phrased generally, but it the assumptions for the functions (defining "sets of compatible points") are rather pragmatic, so this solver can't really be used to solve mathematical equations. 2020-09-25T18:13:03Z ManDay_clone: arew it's under covers right now, but it's gonna be foss 2020-09-25T18:13:34Z arew: the first part is interesting, I am working on a civkit, it might useful to have a space exploration tool 2020-09-25T18:13:42Z arew: s/space/universe/ 2020-09-25T18:14:05Z ManDay_clone: yeah, something like that :) but don't hold your breath (unless you can hold it for reallly long ;p) 2020-09-25T18:14:32Z koo5: ManDay_clone, like, from quantum to intergalactic? 2020-09-25T18:14:39Z ManDay_clone: good night everyone. gotta keep the distractions low ;) 2020-09-25T18:15:02Z koo5: sorry *grin* nn 2020-09-25T18:15:21Z arew: koo5: x) 2020-09-25T18:15:28Z ManDay_clone quit (Quit: WeeChat 2.9) 2020-09-25T18:16:06Z mirrorbird joined #scheme 2020-09-25T18:16:09Z arew: even the best schemer like Maday, when they are talked into making their work useful, they call distraction.. 2020-09-25T18:16:20Z koo5: he sure seems serious about it 2020-09-25T18:16:40Z arew: he will be back 2020-09-25T18:16:46Z arew: s/he/they/ 2020-09-25T18:18:37Z koo5: unless he gets stuck in there like The Wasp 2020-09-25T18:18:44Z arew: koo5: by the way, I switched to backend stuff, i need to make it ready to support the clone of slack 2020-09-25T18:18:55Z Zipheir: arew: "Usefulness" is overrated. There's far too much "useful" software in the world! 2020-09-25T18:19:29Z arew: I figured it is much easier to work on slack clone that something that does not exists yet, it is less work for the mind for everybody, even if it is not optimal. Also it easier to market because it is a familiar ui/ux 2020-09-25T18:19:55Z arew: even if it is done in scheme i hope to make it enough useful for your work. 2020-09-25T18:20:40Z koo5: well, i'd love a fully threaded chat, we could migrate the discord to it one day:) 2020-09-25T18:21:12Z arew: threaded chat is blast 2020-09-25T18:22:04Z Zipheir: How does that work, from a data-structure perspective? 2020-09-25T18:22:35Z arew: Zipheir: I am thinking about going to my home town the one of my parents, they have 3G maybe 4G, I mean there is Internet, but water in houses becan 10 years ago, my father recall moving log on fire to warm houses.. 2020-09-25T18:23:04Z arew: Zipheir: anyway, to picture yourself the environment, it is not very "advanced". Anyway, I can think of, is useless there. 2020-09-25T18:23:09Z Zipheir: arem: Um, OK. Sounds nice. 2020-09-25T18:24:48Z koo5: arew are you implying that southern albania doesnt need threaded chat or what? 2020-09-25T18:25:09Z `micro quit (Remote host closed the connection) 2020-09-25T18:26:24Z arew: koo5: threaded app maybe, but docker or megacentralizedpolitech not so much. 2020-09-25T18:27:16Z mhmd[d]_ joined #scheme 2020-09-25T18:27:43Z arew: my father, tell me the people from there are many things but curious.. they keep doing the sames things for several centuries. 2020-09-25T18:28:33Z arew: Zipheir: regarding the datastructure, i think i will use a timestamp and root that can be null? 2020-09-25T18:28:54Z Zipheir: So each message belongs to a conversation-tree? 2020-09-25T18:29:39Z Riastradh: what if I am replying to two different messages at once 2020-09-25T18:29:43Z arew: no, that what I was saying to koo5, the conversation tree, true tree structure, is too difficult to represent visually, so there is a single level of parent, it is a tree but with one level. 2020-09-25T18:29:55Z Riastradh: conversation dag (nabbit) 2020-09-25T18:30:21Z Zipheir: So ... there's only one thread? 2020-09-25T18:30:22Z arew: unlike newsgroups 2020-09-25T18:30:29Z Zipheir: For each parent-message, I mean. 2020-09-25T18:30:34Z arew: yes! 2020-09-25T18:30:55Z Zipheir: That doesn't seem like much of an improvement over unthreaded conversations. 2020-09-25T18:30:59Z arew: there is several channel, in each channel you can start threads, in a thread there is several message. Actually, it looks like phpbb 2020-09-25T18:31:28Z Zipheir: Did you just blow a raspberry? 2020-09-25T18:31:39Z arew: no? why? 2020-09-25T18:31:48Z Zipheir: phpbbbbb 2020-09-25T18:31:51Z arew: i do no understand 2020-09-25T18:31:56Z Zipheir: Sorry, English idiom. 2020-09-25T18:31:59Z arew: what is raspberry in this contexte? 2020-09-25T18:32:04Z wasamasa: I once blew up a raspberry pi 2020-09-25T18:32:16Z wasamasa: and my thinkpad usb port at the same time 2020-09-25T18:32:41Z Riastradh: arew: https://en.wikipedia.org/wiki/Blowing_a_raspberry 2020-09-25T18:33:31Z arew: I try not to do mockery.. so no I am not doing what the idiom says. 2020-09-25T18:33:42Z Zipheir: arew: I'm joking :) 2020-09-25T18:33:49Z Riastradh: arew: `phpbb' looks like onomatopoeia for blowing a raspberry 2020-09-25T18:35:07Z arew: ah. english people do that a lot! I figured that previously. Maybe phpbb name comes from that idea. Anyway PHP BB is / was a popular bulletin board 2020-09-25T18:35:33Z Zipheir: arew: I guess that makes sense. If each message can have any number of children (Rose tree), that seems quite useful. 2020-09-25T18:36:12Z arew: it really looks like a forum in fact, except it means for "transient" conversation... hence the name. 2020-09-25T18:36:41Z arew: so small text in each message. slack, the app, is very popular among startupers. 2020-09-25T18:37:02Z arew: even my new company that claims to be not-a-startup, has it... 2020-09-25T18:37:20Z TCZ joined #scheme 2020-09-25T18:39:06Z Zipheir: arew: The tough thing is that a message can't store references to its children, since they may not exist. It's got to be sort of a Git situation where the children point back to the parent. 2020-09-25T18:39:38Z arew: Zipheir: yes 2020-09-25T18:39:45Z Zipheir: That would make traversal a massive pain, IIUC. 2020-09-25T18:39:51Z Zipheir: Top-down, that is. 2020-09-25T18:39:57Z arew: + timestamp 2020-09-25T18:40:06Z arew: + channel 2020-09-25T18:40:42Z Zipheir: Hmm, collisions would be possible. 2020-09-25T18:40:51Z arew: how? 2020-09-25T18:41:05Z Zipheir: Same timestamp and channel for two messages. 2020-09-25T18:41:21Z arew: and? 2020-09-25T18:41:27Z arew: yes they have a uid too 2020-09-25T18:41:30Z arew: i guess 2020-09-25T18:41:32Z Zipheir: Oh, OK. 2020-09-25T18:41:51Z arew: I almost never create a "row" or "entity" without an uid 2020-09-25T18:42:01Z Zipheir: (Although that just means collisions are less likely, probably.) 2020-09-25T18:42:18Z arew: unlike the canonical course on sql / rdbms, there is always somekind of representation that make the row unique. 2020-09-25T18:42:48Z Zipheir: Provably? 2020-09-25T18:42:57Z arew: posgresql has sequence that monotically increase, it is slower than uuid, foundationdb has increasing uid but not monothonic 2020-09-25T18:43:32Z arew: most people i know rely on postgrsql sequence, except when performance matter then they use uuid 2020-09-25T18:43:47Z arew: but then there is a risk of collision indeed. 2020-09-25T18:44:01Z arew: someone mocked me when I raised the problem of whether uuid4 was really unique. 2020-09-25T18:44:17Z arew: I got something along the lines of "of course it is" :( 2020-09-25T18:44:24Z Zipheir: That person sounds ill-informed. 2020-09-25T18:44:41Z Zipheir: Wikipedia claims "unique for most practical purposes". 2020-09-25T18:44:43Z Riastradh: You don't have to worry about collisions until you have >quadrillions of UUIDs. 2020-09-25T18:44:53Z Zipheir: Right. 2020-09-25T18:44:59Z arew: speaking of uuid4, there is also distributed uuid and a project from twitter called snowflake :) 2020-09-25T18:45:19Z Riastradh: `distributed uuid'? 2020-09-25T18:45:31Z Zipheir: Wow, "Snowflake". 2020-09-25T18:45:41Z arew: yes, it is a service that aims to generade uid, I mean, not uuid, but unique identifiers "at scale" 2020-09-25T18:45:50Z arew: i guess they have quadrillions tweets or somethign 2020-09-25T18:46:09Z Riastradh: You can always use a 256-bit token instead of a ~128-bit one. 2020-09-25T18:46:21Z Riastradh: (or just a pair of two consecutive uuids) 2020-09-25T18:46:27Z arew: yes 2020-09-25T18:46:43Z autumn[m]: I suppose 'take a global lock on the thing providing IDs each time' is the naive solution (wouldn't scale very well, but) 2020-09-25T18:47:07Z Zipheir: arew: So anyone who wants to respond to a specific message on this protocol would need to know the UID, or have the software figure it out for them? 2020-09-25T18:47:30Z koo5: ii've never been comfortable with the idea of introducing a chance of failure, no matter how (allegedly) small 2020-09-25T18:47:50Z arew: Zipheir: i guess 2020-09-25T18:48:42Z arew: koo5: it might bit you later, but in "real world scenario" people consider the worst case and the normal case and how frequent is the worst case 2020-09-25T18:48:57Z Zipheir: arew: Similarly, messages would have include their UID, so that clients can send messages referring to them? 2020-09-25T18:49:06Z Zipheir: arew: This doesn't sound too complicated. 2020-09-25T18:49:42Z Zipheir: s/have/have to/ 2020-09-25T18:50:01Z arew: yeah, most thing we do as webdev are not complicated. 2020-09-25T18:50:31Z jcowan: A uuid3 followed by a uuid4 should be pretty strong 2020-09-25T18:50:43Z Zipheir: arew: It sounds like it could even be implemented on top of the IRC protocol, if UIDs were tunneled in PRIVMSGs. 2020-09-25T18:50:58Z jcowan: as long as you use a valid seed for the uuid3, it is unique to you, and then the uuid4 is probabilistically unique 2020-09-25T18:51:02Z Zipheir: Wait, not easy. 2020-09-25T18:53:18Z Riastradh: koo5: There is a certain level of `small' below which you really don't have to worry about it. 2020-09-25T18:54:21Z Riastradh: You do not have to worry about a collision between two uniform random 256-bit strings. (You might have to worry about whether you have a reliable entropy source, but that's likely a concern for many other reasons anyway.) 2020-09-25T18:54:41Z Riastradh: Nobody can generate enough uniform random 256-bit strings to ever find a collision between any pair of them. 2020-09-25T18:55:07Z `micro joined #scheme 2020-09-25T18:56:36Z koo5: fair fair 2020-09-25T19:05:05Z Riastradh: A reasonable threshold is that an event with probability below about 1/2^128 with energy cost comparable to a bit operation is not going to happen. 2020-09-25T19:05:49Z arew: that is a precise definition of "unlikely". 2020-09-25T19:10:30Z arew: I will start to put together a fortune file for with quotes of this channel. 2020-09-25T19:11:18Z arew: rudybot: what is the definition of unlikely? 2020-09-25T19:11:22Z rudybot: arew: uh, I think a PTSD demonstration at a funeral would be unlikely to choose the same retraumatizing, triggery, please-punch-us-out, space-invading-but-not-"violent"-by-your-limited-definition tactics that the Phelpsians favor. 2020-09-25T19:11:38Z arew: >_< 2020-09-25T19:13:00Z badkins quit (Remote host closed the connection) 2020-09-25T19:18:14Z gravicappa quit (Ping timeout: 260 seconds) 2020-09-25T19:19:54Z gravicappa joined #scheme 2020-09-25T19:21:16Z lritter quit (Ping timeout: 265 seconds) 2020-09-25T19:23:45Z badkins joined #scheme 2020-09-25T19:26:51Z bars0 joined #scheme 2020-09-25T19:30:34Z autumn[m]: rudybot: blink 2020-09-25T19:30:34Z rudybot: autumn[m]: *blink* 2020-09-25T19:30:43Z autumn[m]: EXACTLY! 2020-09-25T19:33:48Z bars0 quit (Quit: Lost terminal) 2020-09-25T19:40:42Z terpri quit (Ping timeout: 260 seconds) 2020-09-25T19:43:02Z terpri joined #scheme 2020-09-25T19:43:46Z terpri_ joined #scheme 2020-09-25T19:47:07Z terpri quit (Ping timeout: 240 seconds) 2020-09-25T19:52:15Z mirrorbird quit (Ping timeout: 272 seconds) 2020-09-25T19:54:11Z ggole quit (Quit: Leaving) 2020-09-25T19:56:31Z retropikzel quit (Read error: Connection reset by peer) 2020-09-25T20:24:22Z terpri__ joined #scheme 2020-09-25T20:27:02Z terpri_ quit (Ping timeout: 260 seconds) 2020-09-25T21:08:10Z badkins quit (Remote host closed the connection) 2020-09-25T21:13:10Z badkins joined #scheme 2020-09-25T21:29:22Z gravicappa quit (Ping timeout: 258 seconds) 2020-09-25T21:33:48Z TCZ quit (Quit: Leaving) 2020-09-25T21:45:12Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-25T22:13:07Z phillbush quit (Remote host closed the connection) 2020-09-25T22:23:18Z mrkotfw: lockywolf: Nope 2020-09-25T22:23:26Z mrkotfw: What/who is that? 2020-09-25T22:23:51Z mrkotfw: Under Chez, I don't see SRFI-57 for Thunderchez, but records are available by default it seems 2020-09-25T22:24:05Z mrkotfw: I'm looking at the SRFI-57 documentation, and I can't seem to get record-update to work 2020-09-25T22:24:34Z mrkotfw: state in the record name, and index is a field: (record-update p state (index 1)) 2020-09-25T22:24:48Z mrkotfw: p is a variable with a state record 2020-09-25T22:31:12Z mrkotfw: Oh, I guess there's (rnrs records)? 2020-09-25T22:33:49Z klovett quit (Remote host closed the connection) 2020-09-25T22:34:17Z badkins quit (Remote host closed the connection) 2020-09-25T22:34:25Z klovett joined #scheme 2020-09-25T22:35:05Z badkins joined #scheme 2020-09-25T22:40:38Z badkins quit (Ping timeout: 260 seconds) 2020-09-25T22:48:53Z mrkotfw: Gah, this confusion with SRFI/Akku/Thunderchez/... is killing me 2020-09-25T22:51:43Z skapata quit (Quit: Leaving) 2020-09-25T22:54:08Z tristero quit (Ping timeout: 272 seconds) 2020-09-25T23:02:03Z madage quit (Ping timeout: 240 seconds) 2020-09-25T23:05:11Z madage joined #scheme 2020-09-25T23:10:22Z terpri__ quit (Quit: Leaving) 2020-09-25T23:10:36Z terpri__ joined #scheme 2020-09-25T23:11:29Z autumn[m]1 joined #scheme 2020-09-25T23:13:17Z autumn[m] quit (Ping timeout: 246 seconds) 2020-09-25T23:18:55Z mrkotfw: So I think I'm understanding... SRFI-57 hasn't been ported to Chez... 2020-09-25T23:23:38Z badkins joined #scheme 2020-09-25T23:27:59Z klovett quit (Remote host closed the connection) 2020-09-25T23:28:17Z klovett joined #scheme 2020-09-25T23:31:12Z Zipheir: mrkotfw: According to Arthur Gleckler's list (from 2018), the Schemes that support SRFI 57 are CHICKEN, Sagittarius, and Racket. 2020-09-25T23:32:03Z Zipheir: And there's no sample implementation (difficult, given the nature of the SRFI). 2020-09-25T23:35:04Z mrkotfw: I saw a list, and yeah, Chicken is the only one 2020-09-25T23:35:30Z mrkotfw: I see that there's a low level of defining records, which makes sense. But there's a TON of boilerplate code involved 2020-09-25T23:35:53Z Zipheir: By "low level", you mean define-record-type? 2020-09-25T23:36:15Z mrkotfw: Ultimately, I went down this rabbit hole because I was looking to copy an existing record instance and making a change to one field 2020-09-25T23:36:19Z mrkotfw: Lower than that, apparently 2020-09-25T23:36:50Z mrkotfw: If I understand things correctly, that's considered syntatic sugar, where it define the constructor, setters, getters, etc. 2020-09-25T23:38:26Z Zipheir: The important part is that define-record-type ensures that the constructor will create objects of a type that is disjoint from those of other objects. 2020-09-25T23:38:47Z mrkotfw: Yes 2020-09-25T23:38:50Z Zipheir: Otherwise, yes, it's just more convenient than using a tagged vector or whatever. 2020-09-25T23:39:35Z Zipheir: But pretty bare-bones. 2020-09-25T23:39:43Z Zipheir: And not portably pattern-matchable. 2020-09-25T23:39:57Z mrkotfw: Got it 2020-09-25T23:40:58Z mrkotfw: This is a big letdown :( 2020-09-25T23:41:32Z Zipheir: Most Schemes provide some kind of fancy record system. And there's always R6RS records if your Scheme has them. 2020-09-25T23:42:08Z mrkotfw: Yeah, I'm combing through the Chez documentation 2020-09-25T23:42:23Z Zipheir: Chez certainly has R6RS records. 2020-09-25T23:42:24Z mrkotfw: But nothing makes it clear to me how I can achieve the equivalence of update-record 2020-09-25T23:42:34Z mrkotfw: Yep, that's how I'm able to define records :) 2020-09-25T23:43:02Z Zipheir: Non-destructive record update? 2020-09-25T23:43:48Z mrkotfw: Yes, preferably, but I may need both 2020-09-25T23:44:09Z mrkotfw: For now, I'm content with just being able to do it non-destructively 2020-09-25T23:44:52Z Zipheir: Racket has lenses, of a sort. But I'm not aware of another Scheme that has them :-( 2020-09-25T23:45:33Z mrkotfw: :( 2020-09-25T23:45:50Z mrkotfw: What's worse is that I'm writing this under Chez, but I need to port it over to IronScheme 2020-09-25T23:46:10Z mrkotfw: I may have to just give up and write this in C# 2020-09-25T23:49:50Z Zipheir: IronScheme seems to support R6RS, from what I can find, and R6RS records do provide a lot. 2020-09-25T23:50:43Z aeth: too bad the R6RS-R7RS schism is still around, even after a decade. 2020-09-25T23:50:52Z mrkotfw: Zipheir: Good point 2020-09-25T23:51:07Z aeth: (before, it was an R5RS-R6RS schism, but R5RSes moved to R7RS) 2020-09-25T23:51:10Z Zipheir: aeth: Yeah. 2020-09-25T23:51:30Z aeth: I hesitate to call the situation "worse than Python 3", but it's not ideal 2020-09-25T23:51:36Z Zipheir: aeth: Sort of. There's now a 3-way schism: R7RS, R6RS, and R5RS holdouts. 2020-09-25T23:52:27Z aeth: Zipheir: R7RS-small and R5RS are so similar, that the last category is more just "unmaintained or on life support" and if you include that, there are some R4RSes still, too 2020-09-25T23:53:35Z mrkotfw: make-record-type-descriptor 2020-09-25T23:53:40Z mrkotfw: This seems to be it... 2020-09-25T23:53:56Z Zipheir: mrkotfw: Ouch. That's it? 2020-09-25T23:54:23Z mrkotfw: Well, I'm going through the documentation, but it's not 100% clear to me 2020-09-25T23:54:32Z mrkotfw: "returns: a record-type descriptor (rtd) for a new or existing record type" 2020-09-25T23:54:52Z mrkotfw: It doesn't exactly imply that it'll return a copy of an existing record 2020-09-25T23:55:01Z Zipheir: aeth: Opinionated RnRS holdouts, for n <= 5, who have their own ways of doing everything and consider later standards irrelevant. 2020-09-25T23:57:19Z Zipheir: mrkotfw: That's how you create a *new* record type. 2020-09-25T23:58:19Z mrkotfw: Ah, yes, you're right 2020-09-25T23:58:46Z mrkotfw: I think I'm going to just create a procedure that updates selectively. I'm tired of wasting time 2020-09-25T23:58:58Z mrkotfw: Spent 2-3 hours on looking 2020-09-26T00:03:15Z aeth: Zipheir: I think "development has stalled" is more likely than "opinionated" for n <= 5 2020-09-26T00:03:40Z aeth: (Assuming that they don't have even partial R6RS or R7RS support) 2020-09-26T00:08:03Z Zipheir: I'm not aware of Gambit having any plans to provide anything beyond R5. Maybe there are others that won't budge. 2020-09-26T00:09:10Z DGASAU quit (Ping timeout: 256 seconds) 2020-09-26T00:18:08Z aeth: well http://www.gambitscheme.org/wiki/index.php/Main_Page mentions https://www.european-lisp-symposium.org/static/2020/hamel-feeley-slides.pdf 2020-09-26T00:18:11Z aeth: not Gambit itself, though 2020-09-26T00:18:28Z DGASAU joined #scheme 2020-09-26T01:03:52Z marusich joined #scheme 2020-09-26T01:07:03Z zooey quit (Ping timeout: 240 seconds) 2020-09-26T01:09:04Z koo5 quit (Ping timeout: 256 seconds) 2020-09-26T01:09:46Z sp1ff quit (Read error: Connection reset by peer) 2020-09-26T01:10:14Z sp1ff joined #scheme 2020-09-26T01:25:24Z badkins quit (Remote host closed the connection) 2020-09-26T01:26:40Z badkins joined #scheme 2020-09-26T01:31:38Z badkins quit (Ping timeout: 258 seconds) 2020-09-26T02:15:56Z terpri__ quit (Quit: Leaving) 2020-09-26T02:16:14Z terpri__ joined #scheme 2020-09-26T02:16:29Z terpri__ quit (Remote host closed the connection) 2020-09-26T02:27:42Z terpri joined #scheme 2020-09-26T02:40:26Z koo5 joined #scheme 2020-09-26T03:08:16Z rickygee joined #scheme 2020-09-26T03:16:12Z raingloom quit (Ping timeout: 260 seconds) 2020-09-26T03:24:04Z mrkotfw: What is the purpose of define-record-type and make-record-type-descriptor, if they're the same thing? 2020-09-26T03:24:20Z mrkotfw: If I do: (define-record-type point (fields x y)) 2020-09-26T03:24:36Z mrkotfw: (record-type-descriptor? (make-point 1 2)) ;; => #f 2020-09-26T03:25:04Z mrkotfw: It seems like if I use define-record-type, I can't use the procedural interface 2020-09-26T03:28:22Z badkins joined #scheme 2020-09-26T03:29:41Z aeth: mrkotfw: Just by the names alone, I can tell that define-foo is syntax and make-foo is a procedure 2020-09-26T03:30:26Z aeth: syntactic layer vs. procedural layer in the ToC. http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-1.html 2020-09-26T03:31:02Z mrkotfw: Thanks 2020-09-26T03:31:31Z aeth: I haven't read through the whole thing, but it's a fairly common pattern (but not the only way to do things) to macroexpand into procedure calls. 2020-09-26T03:32:29Z badkins quit (Ping timeout: 246 seconds) 2020-09-26T03:38:43Z Zipheir: mrkotfw: Simple: R6RS records and define-record-type are totally different systems. How they work together is going to be implementation-defined. 2020-09-26T03:39:55Z aeth: I'm assuming mrkotfw was talking about the (rnrs records syntactic (6)) define-record-type from http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-7.html#node_sec_6.2 2020-09-26T03:40:33Z rickygee quit (Ping timeout: 265 seconds) 2020-09-26T03:40:50Z Zipheir: Oh, oops, yes. 2020-09-26T03:50:24Z aeth: Scheme is a bit messy with names because e.g. it's not impossible to have R6RS and R7RS in the same system... 2020-09-26T03:50:39Z aeth: Or to provide two SRFIs where one superseded the other and is slightly incompatible 2020-09-26T03:50:49Z aeth: (just not loaded in the same file at the same time with the same name) 2020-09-26T03:52:37Z Zipheir: There are some clashes between R6 and other standards, e.g. bytevector-copy! is particularly bad. 2020-09-26T03:53:16Z aeth: that's the nature of Scheme 2020-09-26T03:53:24Z Zipheir: Mostly not bad. But the two different define-record-type forms is tricky. 2020-09-26T03:53:38Z Zipheir: That's the nature of R6. 2020-09-26T03:54:16Z aeth: With CL, you live with your language's mistakes even if they were made 50+ years ago and that means inconsistent APIs and ugly names. Even a new CL standard wouldn't change much. 2020-09-26T03:54:32Z aeth: With Scheme, there's been quite a few breaks since the original was very classic Lisp style, very close to what eventually wound up in CL 2020-09-26T03:55:44Z aeth: which also means e.g. Scheme has import renaming, since it kind of has to, if you wanted to use e.g. R6RS and R7RS side by side 2020-09-26T03:56:52Z Zipheir: I think Larceny only had to rename bytevector-copy! to support R6 in R7. 2020-09-26T03:57:48Z aeth: I'm still waiting for the R1RS through R7RS in one system... that'll require more renaming, probably. 2020-09-26T03:57:58Z aeth: (and was there a Scheme before R1RS?) 2020-09-26T03:58:11Z Zipheir: See http://andykeep.com/SchemeWorkshop2015/papers/sfpw1-2015-clinger.pdf for Will Clinger's notes on embedding R6 in R7. 2020-09-26T03:58:17Z aeth: I think the big API change was as recent as R3RS... sometime around then. 2020-09-26T03:59:35Z Zipheir: R3RS looks a lot like R4RS, from what little I can find. 2020-09-26T04:00:03Z aeth: yeah, afaik, R4RS is mostly modern, but put the hygienic macros as an optional appendix 2020-09-26T04:00:26Z aeth: The great renaming (from traditional Lisp like elisp or CL to the more consistent, longer Scheme-style names) must've been R2RS or R3RS, if not earlier. 2020-09-26T04:00:59Z Zipheir: R5 added multiple values and dynamic-wind, which turned a few people off, I guess. 2020-09-26T04:01:20Z Zipheir: Yeah, definitely a different naming sensibility. 2020-09-26T04:01:44Z aeth: I read some of the old standards, and one of them optionally permits quasi-CL behavior, like case insensitivity (yes, yes, CL isn't quite 'case insensitive'... it's upcasing) maybe even not necessarily separating #f from the empty list 2020-09-26T04:01:50Z aeth: iirc 2020-09-26T04:01:54Z aeth: It has been a few years. 2020-09-26T04:02:06Z aeth: While newer ones forbid this. 2020-09-26T04:03:09Z Zipheir: jcowan would know, I'm sure. 2020-09-26T04:03:23Z Zipheir: It's hard to find copies of anything before R4. 2020-09-26T04:03:27Z aeth: If you read the progression of the standards, though, you can really see that Scheme is clearly descendent from Maclisp (or is it Interlisp?) 2020-09-26T04:03:41Z aeth: it just drifts more in each revision 2020-09-26T04:04:02Z aeth: Wikipedia says Maclisp 2020-09-26T04:11:03Z aeth: Zipheir: the other thing about the naming scheme of Scheme is... Scheme is a very non-generic Lisp 2020-09-26T04:11:16Z aeth: One of these days, + is going to be removed for being too generic :-P 2020-09-26T04:11:33Z Zipheir: Of course Scheme is generic. Everything's a Scheme object! 2020-09-26T04:11:40Z Zipheir: But I know what you mean, of course. 2020-09-26T04:11:51Z Zipheir: Monomorphic names everywhere. 2020-09-26T04:12:14Z aeth: yeah, I guess you could say anti-polymorphic 2020-09-26T04:12:30Z lockywolf: Hm... No response from the scheme.dk's as admin :( 2020-09-26T04:12:31Z aeth: probably helped by any attempt at polymorphism being implementation-specific and too controversial to generalize 2020-09-26T04:13:03Z Zipheir: There's some work being done to remedy that. We've had comparators (generic comparison) for a while, thanks to jcowan. 2020-09-26T04:13:13Z Zipheir: And generalized arrays have two SRFIs. 2020-09-26T04:14:34Z Zipheir: lockywolf: Maybe PlanetScheme is just a zombie. The rest of the site looks like it's totally inactive. 2020-09-26T04:15:04Z Zipheir: I'd like to write a foldables/traversables SRFI at some point for generic fold/map. 2020-09-26T04:15:21Z lockywolf: Zipheir, I'm a necromancer by nature. 2020-09-26T04:15:42Z Zipheir: Monads, functors and applicatives are a pre-SRFI. There's a lot going on. 2020-09-26T04:16:08Z lockywolf: This manifests itself in me never trying to write anything from scratch, but trying to revive old entities. 2020-09-26T04:16:16Z lockywolf: STk included 2020-09-26T04:16:38Z lockywolf: in some sense, I'm a staunch anti-liberal 2020-09-26T04:17:09Z Zipheir: By which you mean "one who conserves"? 2020-09-26T04:17:32Z lockywolf: it's all a bit fuzzy 2020-09-26T04:17:45Z aeth: Zipheir: oh, good, if we have monads, we'll never have to see a foo! again 2020-09-26T04:17:57Z Zipheir: (Is the dual of a conservative an nservative?) 2020-09-26T04:18:17Z lockywolf: nservative is a great self-identification 2020-09-26T04:18:31Z lockywolf: wait 2020-09-26T04:18:52Z lockywolf: there should be "servative", 'nservative', 'coservative' and 'conservative' 2020-09-26T04:19:32Z Zipheir: aeth: You *could* implement a Scheme without mutation that way, provided you get rid of set!. 2020-09-26T04:19:41Z Zipheir: Heh. 2020-09-26T04:19:50Z aeth: Zipheir: We need a Scheme where if it compiles, it's correct. 2020-09-26T04:19:56Z lockywolf: I have seen a scheme interpreter in syntax-rules 2020-09-26T04:20:04Z Zipheir: Not gonna happen with dynamic typing. 2020-09-26T04:20:18Z aeth: Zipheir: I already worked out the removal of set! with jcowan 2020-09-26T04:20:34Z Zipheir: Yeah, JRM's syntax-rules tutorial has an example. 2020-09-26T04:20:38Z Zipheir: It's super slow. 2020-09-26T04:21:11Z aeth: Zipheir: At the library level, anything without (functional) "contaminates" other libraries to be non-functional, but if the whole dependency chain is (functional) then the compiler can do fancy things 2020-09-26T04:21:48Z Zipheir: CHICKEN has a type notation for non-mutating procedures, so I guess that exists to some extent. 2020-09-26T04:22:20Z Zipheir: It would be nice if linear-update procedures (reverse! and friends) actually got some compiler support. 2020-09-26T04:22:22Z mrkotfw: Thanks for the explanation 2020-09-26T04:23:01Z Zipheir: mrkotfw: yw. Sorry to hear you ended up on a wild goose-chase. 2020-09-26T04:23:20Z mrkotfw: It's no problem... I'm learning, and I did find a decent workaround 2020-09-26T04:23:45Z mrkotfw: It does really suck that it's the case that some SRFIs are present in some implementations, and others not 2020-09-26T04:24:00Z Zipheir: mrkotfw: Yes. 2020-09-26T04:24:23Z Zipheir: The majority of SRFIs have portable implementations already, too. 2020-09-26T04:25:00Z mrkotfw: With define-syntax, I'm defining (foo bar baz) --- Is it possible to allow foo and baz not to be evaluated? 2020-09-26T04:25:41Z Zipheir: Is `foo' the name of the form with arguments `bar' and `baz'? 2020-09-26T04:25:56Z mrkotfw: (define-syntax foo (syntax-rules () ...)) 2020-09-26T04:26:02Z mrkotfw: I believe yes? 2020-09-26T04:26:10Z mrkotfw: I'm still grep'ing the docs 2020-09-26T04:26:21Z lockywolf: mrkotfw, Tinkoff is a Russian banking service that uses IronScheme in their products. 2020-09-26T04:26:23Z Zipheir: OK, what do you mean by "not to be evaluated"? Nothing will be evaluated at expand time. 2020-09-26T04:26:44Z lockywolf: when I heard "IronScheme", just recalled them; 2020-09-26T04:27:08Z mrkotfw: If I call (foo bar baz), bar is already defined, but I want to treat it as a symbol 2020-09-26T04:27:15Z mrkotfw: However, I don't want to explicitly quote bar 2020-09-26T04:27:25Z Riastradh: mrkotfw: What do you want (foo bar baz) to be equivalent to writing? 2020-09-26T04:28:24Z mrkotfw: (my-special-func 'bar baz) 2020-09-26T04:28:31Z Riastradh: Great, that's your macro definition: 2020-09-26T04:28:42Z Riastradh: (define-syntax foo (syntax-rules () ((foo bar baz) (my-special-func 'bar baz)))) 2020-09-26T04:29:10Z mrkotfw: Ah! 2020-09-26T04:29:16Z Zipheir: Is that it? 2020-09-26T04:29:58Z mrkotfw: Thank you. There's another case that I need to cover, (foo (bar baz) ...) 2020-09-26T04:30:10Z mrkotfw: So I need to think of a way to call my-special-func multiple times 2020-09-26T04:30:18Z Zipheir: Of course, (foo (+ 2 1) baz) will expand to (my-special-func '(+ 2 1) baz) 2020-09-26T04:30:26Z Riastradh: What should (foo (bar baz) ...) be equivalent to writing? 2020-09-26T04:31:22Z mrkotfw: Sorry, I need to think about this one a bit more 2020-09-26T04:31:43Z mrkotfw: I may be going down the wrong path with how I'll be calling my-special-func 2020-09-26T04:33:24Z mrkotfw: I'll come back if I can't figure it out. Thank you Riastradh, Zipheir 2020-09-26T04:35:33Z Zipheir: mrkotfw: Good luck. 2020-09-26T04:36:21Z aeth: Zipheir: On your earlier topic of static typing... I think it's a common misconception that static and dynamic typing are opposing features of a language, since static typing means associating types with a binding and dynamic typing means associating types with a runtime value, and you can clearly have both, although having both will probably use more runtime RAM than just having static types. 2020-09-26T04:37:15Z aeth: Zipheir: It's less necessary in Scheme than in CL because, as we talked about, Scheme is very monomorphic, while efficient numerical/array code in CL has to be full of type declarations (especially to make the AREFs efficient). Alternatively, you can think of Scheme's many ways to reference a vector/array as essentially forcing a "type declaration" in every foo-ref. 2020-09-26T04:38:17Z aeth: But gradual typing is very underexplored. At the moment, it's mostly just type anotations, e.g. Python's type anotations are very clearly just for verification (from external tools!) and do not improve the efficiency of the program at all. 2020-09-26T04:39:30Z aeth: Scheme's mostly typed via predicates which... are far from ideal here... but you can generate those predicates from a more restricted define-type and fall back to a CL-style (runtime-only?) SATISFIES for the general case. 2020-09-26T04:39:51Z Zipheir: I know very little about gradual typing, but it sounds like a system based on extensive use of holes, in type-theory jargon. 2020-09-26T04:40:52Z aeth: The only real side effect of being typed like Scheme is ("predicatively typed"?) is that every type definition will also define a corresponding predicate, and every type imo is naturally named as such, so e.g. the predicate foo? might as well just be generated from the type foo? and not from a type Foo (often seen in such attempts even in Lisps) or foo (if you pull a CL and make types a separate namespace) 2020-09-26T04:41:26Z Zipheir: Well, holes usually have a known type, so I guess that's not right. 2020-09-26T04:42:11Z Zipheir: aeth: Yes, types are basically defined by predicates in Scheme. 2020-09-26T04:42:28Z aeth: Zipheir: gradual typing isn't really the best name for mixing static/dynamic typing in one runtime because it's basically the process of starting from an any? or whatever your type system is going to call that kind of type (if it has it) and then as you are more concrete in your design, you add more and more static types. Hence, gradually doing so. 2020-09-26T04:42:43Z Zipheir: That's the approach I've taken in explaining Scheme's type system in the Wikibook. 2020-09-26T04:43:25Z Zipheir: I'd like to see some constructive typing rules demonstrating that. 2020-09-26T04:43:33Z aeth: Zipheir: and if you actually just define predicates (rather than generating predicates)... it's basically game over as far as trying to statically type parts 2020-09-26T04:43:55Z aeth: but you can always just generate the predicates from the type definitions, at least as the preferred way to handle the types 2020-09-26T04:44:17Z aeth: Even some core Scheme types can't really be done this way, though, e.g. integer? 2020-09-26T04:44:22Z aeth: (contrast with exact-integer?) 2020-09-26T04:44:42Z Zipheir: Hmm. You mean something like always defining types with something like define-record-type which also generates a predicate `foo?' which is guaranteed to only be true of foos? 2020-09-26T04:45:21Z Zipheir: I guess most SRFIs and other specs require types to be disjoint, which is the abstract way of requiring that. 2020-09-26T04:46:35Z Zipheir: Someone seems to have written a paper on gradual typing for Scheme http://scheme2006.cs.uchicago.edu/13-siek.pdf 2020-09-26T04:47:55Z Zipheir: Cool, it's got formal typing rules. 2020-09-26T04:48:51Z aeth: Zipheir: yes, it would have to be like CL's type system, which is essentially defstruct/defclass for new types, or deftype for combinations of types like (or foo bar) 2020-09-26T04:49:17Z aeth: or translated to Scheme: define-record-type for new (non-builtin) types, or define-type 2020-09-26T04:52:34Z aeth: Zipheir: a very CL:DEFTYPE inspired example would be e.g. (define-type (foobar?) `(or foo? bar?)) 2020-09-26T04:54:01Z aeth: now assuming none of those are the equivalent of a CL satisfies type (an arbitrary predicate that probably isn't checkable at compile time) you created a new efficient type 2020-09-26T04:54:16Z aeth: while still having the predicately-typed lisp-1 nature of the type system 2020-09-26T04:55:39Z Zipheir: Hmm. 2020-09-26T04:56:14Z aeth: If there was a type? like CL's TYPEP then effectively what define-type is doing (in addition to the generating the actual type 'foobar?) is generating (define (foobar? object) (type? object 'foobar?)) 2020-09-26T04:56:52Z aeth: I mean, this isn't a proposal or anything, this is actually how Airship Scheme works. 2020-09-26T04:56:59Z Zipheir: Ah, ok. 2020-09-26T04:57:34Z aeth: I mean, I currently only have define-scheme-type so I don't have the type? side of things, but it's effectively equivalent, with the only difference being which side of the CL-Scheme barrier you define it in 2020-09-26T04:58:00Z aeth: Having so many parallel macros like this means I keep open the option of just outright porting almost all of the CL into Airship Scheme itself later on 2020-09-26T04:59:01Z lockywolf: cl keeps creeping in everywhere 2020-09-26T04:59:34Z lockywolf: elisp has imbibed a lot of cl's features in the past years 2020-09-26T04:59:41Z lockywolf: sorry, Emacs Lisp 2020-09-26T04:59:41Z aeth: The way Airship Scheme does gradual typing is naturally fairly close to Common Lisp, but trust me, it's better at doing it. 2020-09-26T05:01:06Z Zipheir: Sounds interesting. 2020-09-26T05:01:08Z aeth: lockywolf: It really does save on the design effort when you lift stuff from CL, which is a pretty large standard that pretty smart people worked on. You just need to know how to port it, and what not to port (someone in here the other day wanted funcall, of all things, in Scheme) 2020-09-26T05:01:31Z Zipheir: Hahahaha. 2020-09-26T05:01:38Z aeth: But other sources of inspiration can include ML and Haskell 2020-09-26T05:01:48Z aeth: You have to borrow from the close languages and not, say, Java. 2020-09-26T05:02:18Z lockywolf: from a nationalist point of view, it would feel nice to see other languages borrowing stuff from Scheme, than the other way round 2020-09-26T05:02:39Z lockywolf: funcall is trivial to implement, isn't it? 2020-09-26T05:03:25Z aeth: lockywolf: Common Lisp borrows heavily from Scheme, it just does it in a way that mostly maintains API compatibility with Maclisp, so it's not as obvious as it might otherwise be. For instance, lexical scope. Old Lisps before Scheme used this really annoying thing called dynamic scope that made lexical closures (obvious when you give the full two-word name) impossible. 2020-09-26T05:03:31Z lockywolf: aeth, srfi-18 is borrowed from Java 2020-09-26T05:04:03Z aeth: (Emacs Lisp is just now starting to jump on the lexical scope bandwagon... I like to call Emacs Lisp a "legacy Lisp" that's newer than quite a few non-legacy Lisps. RMS is stubborn and he made it intentionally archaic.) 2020-09-26T05:04:11Z lockywolf: in Emacs Lisp you have both 2020-09-26T05:05:11Z Zipheir: I thought elisp had dynamic binding because no-one thought lexical could possibly be fast enough? 2020-09-26T05:05:17Z mmohammadi9812 joined #scheme 2020-09-26T05:05:38Z aeth: Zipheir: "No one" being RMS 2020-09-26T05:05:41Z lockywolf: and in emacs lisp you can destructure procedures with car and cdr 2020-09-26T05:05:56Z lockywolf: Zipheir, they've done an amazing job in the past 5 years 2020-09-26T05:06:40Z Zipheir: aeth: I mean, I think Olin said in "History Of T" that, at the time, "no one thought lexical scope was going to fly". So not just another RMS eccentricity. 2020-09-26T05:07:04Z lockywolf: dynamic scope makes sense for repls 2020-09-26T05:07:10Z Riastradh: dynamic scope has always been a mistake 2020-09-26T05:07:14Z aeth: Zipheir: A lot of Lispers are conservative in their programming language design. Another one is pg with Arc, which was decades after the other examples you can name 2020-09-26T05:07:34Z Zipheir: lockywolf: OK, cool. I'm not an Emacs fan, but it's good that they've improved the language. 2020-09-26T05:07:35Z aeth: I guess lisp attracts this crowd because lisp is very old 2020-09-26T05:07:58Z aeth: Riastradh: Dynamically scoped variables in Common Lisp make sense for I/O streams and I've never seen another use for them. 2020-09-26T05:08:32Z aeth: ("ports" in Scheme terminology) 2020-09-26T05:08:36Z Zipheir: McCarthy said he always considered it a stupid bug. 2020-09-26T05:09:07Z Zipheir: Parameter objects solve the problem better, IMHO. 2020-09-26T05:09:39Z Riastradh: parameter objects are a mistake too 2020-09-26T05:09:55Z aeth: Zipheir: I was under the impression that they're there out of necessity because dynamic scoping doesn't mix well with call/cc 2020-09-26T05:10:05Z Riastradh: dynamic scope doesn't mix with anything 2020-09-26T05:10:09Z Riastradh: dynamic scope is bad 2020-09-26T05:10:25Z aeth: Actually, I think CL's condition system also can be implemented with dynamic scope 2020-09-26T05:10:58Z Riastradh: (that said there's nothing substantively different between dynamic scope and parameter objects about call/cc) 2020-09-26T05:11:14Z Zipheir: aeth: They're there because Scheme doesn't have dynamic scope. So there's some dynamic-wind magic to make them work. 2020-09-26T05:11:47Z Zipheir: (I assume. I haven't implemented them.) 2020-09-26T05:12:06Z aeth: to be fair, I haven't implemented them yet, either 2020-09-26T05:12:37Z Zipheir: Riastradh: (parameterize ((current-output-port foo-port)) (some-output-procedure)) ; bad? 2020-09-26T05:13:15Z aeth: Riastradh: can the IO monad be ported to Scheme? 2020-09-26T05:13:26Z Riastradh: aeth: yes but it wouldn't have much value 2020-09-26T05:13:47Z Zipheir: aeth: Easy. But IO values won't be tagged as such. 2020-09-26T05:13:56Z aeth: Riastradh: why not? 2020-09-26T05:14:53Z Riastradh: aeth: The value of the IO monad is that the parts of the program that do I/O are marked in the type system. 2020-09-26T05:15:11Z Riastradh: No IO in the type? Guaranteed not to do I/O. 2020-09-26T05:17:37Z aeth: heh 2020-09-26T05:17:47Z aeth: the inverse might be easier 2020-09-26T05:18:05Z aeth: That is, NoIO in the type, guaranteed not to do I/O 2020-09-26T05:18:58Z Zipheir: One might define "tagging" I/O routines which create values satisfying io? or something. You'd need to find some way to ensure they could only be unwrapped by certain procedures. 2020-09-26T05:21:19Z aeth: What CL does *not* really have is a function type system, even though its type system for non-functions is pretty expressive. 2020-09-26T05:22:58Z Zipheir: Pretty easy to hide I/O values actually--you define an IO record type and don't export any accessors; just pure and bind. 2020-09-26T05:23:41Z Zipheir: Of course, any control you'd gain from that is a joke in the presence of call/cc. 2020-09-26T05:25:55Z Riastradh: Zipheir: yes, you could add a static type system 2020-09-26T05:28:35Z retropikzel joined #scheme 2020-09-26T05:29:03Z aeth: Technically, standard Scheme (at least R7RS-small) does have a basic static type system in its procedure API, just not specified except as the naming conventions of its arguments, e.g. z being a complex or x being a real or n being an integer. 2020-09-26T05:31:18Z Riastradh: ...that doesn't help a compiler to reject programs whose I/O isn't marked with the IO type. 2020-09-26T05:34:31Z aeth: no, you'd need the procedures themselves to have types, not just the arguments. 2020-09-26T05:42:45Z Blukunfando quit (Ping timeout: 240 seconds) 2020-09-26T05:46:06Z mirrorbird joined #scheme 2020-09-26T06:03:08Z gravicappa joined #scheme 2020-09-26T06:11:40Z ggole joined #scheme 2020-09-26T06:35:43Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-26T07:03:39Z marusich quit (Quit: Leaving) 2020-09-26T07:14:47Z retropikzel quit (Quit: Leaving) 2020-09-26T07:14:59Z retropikzel joined #scheme 2020-09-26T07:17:23Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-26T07:17:28Z X-Scale` joined #scheme 2020-09-26T07:18:35Z X-Scale` is now known as X-Scale 2020-09-26T07:20:04Z [d]_ quit (Ping timeout: 246 seconds) 2020-09-26T07:20:04Z _dmiles[d] quit (Ping timeout: 246 seconds) 2020-09-26T07:20:25Z irc0[d]_ quit (Ping timeout: 246 seconds) 2020-09-26T07:20:28Z _Meredith[d] quit (Ping timeout: 265 seconds) 2020-09-26T07:20:35Z dmiles quit (Ping timeout: 240 seconds) 2020-09-26T07:20:45Z _stoopkid2[d] quit (Ping timeout: 260 seconds) 2020-09-26T07:20:58Z _jeosol[d] quit (Ping timeout: 256 seconds) 2020-09-26T07:20:58Z _aindilis[d] quit (Ping timeout: 256 seconds) 2020-09-26T07:20:58Z nyx[d]_ quit (Ping timeout: 260 seconds) 2020-09-26T07:20:59Z mhmd[d]_ quit (Ping timeout: 240 seconds) 2020-09-26T07:21:14Z _jacobpdq[d] quit (Ping timeout: 258 seconds) 2020-09-26T07:21:33Z _Dletta[d] quit (Ping timeout: 260 seconds) 2020-09-26T07:21:34Z koo5[d]_ quit (Ping timeout: 260 seconds) 2020-09-26T07:21:52Z arew[d]_ quit (Ping timeout: 256 seconds) 2020-09-26T07:22:04Z _Googleman250[d] quit (Ping timeout: 272 seconds) 2020-09-26T07:22:04Z _jbalint[d] quit (Ping timeout: 272 seconds) 2020-09-26T07:30:04Z badkins joined #scheme 2020-09-26T07:34:44Z badkins quit (Ping timeout: 272 seconds) 2020-09-26T07:44:18Z [d]_ joined #scheme 2020-09-26T07:44:18Z _dmiles[d] joined #scheme 2020-09-26T07:44:23Z nyx[d]_ joined #scheme 2020-09-26T07:44:25Z _aindilis[d] joined #scheme 2020-09-26T07:44:25Z _jacobpdq[d] joined #scheme 2020-09-26T07:44:26Z _jbalint[d] joined #scheme 2020-09-26T07:44:26Z mhmd[d]_ joined #scheme 2020-09-26T07:44:27Z koo5[d]_ joined #scheme 2020-09-26T07:44:27Z irc0[d]_ joined #scheme 2020-09-26T07:44:28Z _jeosol[d] joined #scheme 2020-09-26T07:48:56Z klovett quit (Remote host closed the connection) 2020-09-26T07:49:35Z klovett joined #scheme 2020-09-26T08:05:05Z rgherdt joined #scheme 2020-09-26T08:08:58Z mirrorbird quit (Ping timeout: 256 seconds) 2020-09-26T08:09:26Z hendursa1 joined #scheme 2020-09-26T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-26T08:12:58Z mmohammadi98128 joined #scheme 2020-09-26T08:12:59Z mmohammadi98128 quit (Client Quit) 2020-09-26T08:13:03Z mmohammadi9812 quit (Read error: Connection reset by peer) 2020-09-26T08:13:57Z mmohammadi9812 joined #scheme 2020-09-26T08:22:33Z mirrorbird joined #scheme 2020-09-26T08:22:52Z mmohammadi9812 quit (Read error: Connection reset by peer) 2020-09-26T08:27:13Z mmohammadi9812 joined #scheme 2020-09-26T08:44:47Z mirrorbird quit (Quit: Leaving) 2020-09-26T08:45:05Z mirrorbird joined #scheme 2020-09-26T09:07:26Z civodul joined #scheme 2020-09-26T09:10:31Z coffeeturtle joined #scheme 2020-09-26T09:10:48Z mirrorbird quit (Quit: Leaving) 2020-09-26T09:11:14Z GreaseMonkey quit (Ping timeout: 244 seconds) 2020-09-26T09:12:22Z greaser|q joined #scheme 2020-09-26T09:18:43Z coffeeturtle quit (Quit: leaving) 2020-09-26T09:19:21Z arew: It is nearly hacktoberfest, the goal is to make pull-request (and possibly win a t-shirt). 2020-09-26T09:19:52Z arew: I create a few issue in arew repository: https://github.com/arew-scheme/arew-scheme/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22 2020-09-26T09:22:05Z daviid quit (Ping timeout: 260 seconds) 2020-09-26T09:26:47Z mmohammadi98121 joined #scheme 2020-09-26T09:27:44Z mmohammadi9812 quit (Ping timeout: 246 seconds) 2020-09-26T09:27:45Z mmohammadi98121 is now known as mmohammadi9812 2020-09-26T09:30:48Z badkins joined #scheme 2020-09-26T09:35:05Z badkins quit (Ping timeout: 240 seconds) 2020-09-26T09:36:54Z mmohammadi98124 joined #scheme 2020-09-26T09:39:34Z mmohammadi9812 quit (Ping timeout: 256 seconds) 2020-09-26T09:39:35Z mmohammadi98124 is now known as mmohammadi9812 2020-09-26T09:47:50Z skapata joined #scheme 2020-09-26T10:07:22Z koo5 quit (Ping timeout: 272 seconds) 2020-09-26T10:12:11Z mirrorbird joined #scheme 2020-09-26T10:15:23Z mirrorbird is now known as psutcliffe 2020-09-26T10:19:47Z mmohammadi9812 quit (Ping timeout: 240 seconds) 2020-09-26T10:26:29Z _Dletta[d] joined #scheme 2020-09-26T10:42:44Z Guest42020 quit (Quit: ZNC 1.7.4 - https://znc.in) 2020-09-26T11:12:31Z coffeeturtle joined #scheme 2020-09-26T11:17:39Z iltutmus joined #scheme 2020-09-26T11:21:46Z coffeeturtle quit (Quit: leaving) 2020-09-26T11:23:40Z phillbush joined #scheme 2020-09-26T11:31:38Z badkins joined #scheme 2020-09-26T11:36:38Z badkins quit (Ping timeout: 265 seconds) 2020-09-26T11:54:55Z wasamasa: but hacktoberfest is about easy PRs 2020-09-26T11:55:37Z ManDay joined #scheme 2020-09-26T12:03:12Z raingloom joined #scheme 2020-09-26T12:05:03Z aeth quit (Ping timeout: 272 seconds) 2020-09-26T12:06:23Z aeth joined #scheme 2020-09-26T12:14:57Z koo5 joined #scheme 2020-09-26T12:28:48Z hendursa1 quit (Quit: hendursa1) 2020-09-26T12:29:06Z hendursaga joined #scheme 2020-09-26T12:37:01Z supercoven_ joined #scheme 2020-09-26T12:37:02Z supercoven_ quit (Max SendQ exceeded) 2020-09-26T12:37:16Z supercoven_ joined #scheme 2020-09-26T12:37:17Z supercoven_ quit (Max SendQ exceeded) 2020-09-26T12:37:32Z supercoven_ joined #scheme 2020-09-26T12:37:33Z supercoven_ quit (Max SendQ exceeded) 2020-09-26T12:37:33Z supercoven quit (K-Lined) 2020-09-26T12:41:50Z mmohammadi9812 joined #scheme 2020-09-26T12:48:00Z klovett quit (Remote host closed the connection) 2020-09-26T12:48:18Z klovett joined #scheme 2020-09-26T12:53:15Z arew: easy? not easy? I do not know what would be easy or not easy. 2020-09-26T12:53:56Z arew: kvcli: at support for glob pattern is easy. 2020-09-26T12:54:24Z arew: ccse: full common crawl is somewhat easy (it involves threads) 2020-09-26T12:55:06Z arew: the fauxtexte optimization, it only replacing the list massage with a better datastructure like mapping 2020-09-26T12:55:53Z arew: of course, I will not accept PR that implements that using guile ice-9 module ;) 2020-09-26T12:56:50Z TCZ joined #scheme 2020-09-26T12:57:54Z klovett quit (Ping timeout: 256 seconds) 2020-09-26T13:02:36Z klovett joined #scheme 2020-09-26T13:09:19Z gmaggior joined #scheme 2020-09-26T13:11:29Z mmohammadi9812 quit (Read error: Connection reset by peer) 2020-09-26T13:12:51Z mmohammadi9812 joined #scheme 2020-09-26T13:28:16Z mmohammadi9812 quit (Ping timeout: 246 seconds) 2020-09-26T13:28:18Z mmohammadi9812 joined #scheme 2020-09-26T13:29:22Z ManDay quit (Ping timeout: 260 seconds) 2020-09-26T13:32:52Z badkins joined #scheme 2020-09-26T13:33:43Z ManDay joined #scheme 2020-09-26T13:37:13Z even4void[m] quit (*.net *.split) 2020-09-26T13:37:14Z balkamos quit (*.net *.split) 2020-09-26T13:38:59Z badkins quit (Ping timeout: 240 seconds) 2020-09-26T13:39:45Z ManDay quit (Ping timeout: 246 seconds) 2020-09-26T13:39:49Z _jbalint[d] quit (Ping timeout: 246 seconds) 2020-09-26T13:39:49Z [d]_ quit (Ping timeout: 246 seconds) 2020-09-26T13:39:49Z _dmiles[d] quit (Ping timeout: 246 seconds) 2020-09-26T13:40:52Z [d]__ joined #scheme 2020-09-26T13:40:52Z __dmiles[d] joined #scheme 2020-09-26T13:40:52Z __jbalint[d] joined #scheme 2020-09-26T13:41:17Z even4void[m] joined #scheme 2020-09-26T13:41:40Z ManDay joined #scheme 2020-09-26T13:42:42Z balkamos joined #scheme 2020-09-26T13:55:17Z ManDay quit (Ping timeout: 260 seconds) 2020-09-26T14:04:30Z TCZ quit (Quit: Leaving) 2020-09-26T14:15:19Z retropikzel quit (Remote host closed the connection) 2020-09-26T14:15:39Z retropikzel joined #scheme 2020-09-26T14:33:49Z mmohammadi9812 quit (Ping timeout: 264 seconds) 2020-09-26T14:37:16Z mmohammadi9812 joined #scheme 2020-09-26T14:40:36Z mmohammadi98128 joined #scheme 2020-09-26T14:41:12Z mmohammadi9812 quit (Read error: Connection reset by peer) 2020-09-26T14:41:12Z mmohammadi98128 is now known as mmohammadi9812 2020-09-26T15:07:13Z daviid joined #scheme 2020-09-26T15:07:32Z daviid is now known as Guest65431 2020-09-26T15:12:36Z edgar-rft quit (Quit: Leaving) 2020-09-26T15:18:37Z bitmapper joined #scheme 2020-09-26T15:28:00Z v_m_v joined #scheme 2020-09-26T15:28:36Z arew[d]_ joined #scheme 2020-09-26T15:42:42Z jcowan: Indeed, in 1975 very few Lispers thought that lexical scoping could be made efficient in an interpreter. (It's been obvious since Algol 60 that it could be efficient in a compiler.) 2020-09-26T15:43:24Z jcowan: The history of Scheme and then CL since then has been one of gradual abandonment of all the features of Lisp that are interpreter-only, like fexprs and one-argument EVAL. 2020-09-26T15:45:48Z jcowan: (Lots of people think this is a big mistake, but they have got no dinner from the standardizers thus far, and indeed tehy tend to be anti-standardization as well, so it works out.) 2020-09-26T15:49:38Z ggole: Lots of people = John Shutt, or are there more? 2020-09-26T15:50:25Z koo5 quit (Ping timeout: 240 seconds) 2020-09-26T15:55:35Z klovett quit 2020-09-26T16:00:24Z tristero joined #scheme 2020-09-26T16:05:09Z jcowan: Forgive me if I can't name names on the spot, but yes. 2020-09-26T16:05:31Z jcowan: Granted, most of them are old farts, but I'm an OF myself as well as a historian. 2020-09-26T16:09:20Z ggole: Hmm, ok. I've heard many arguments about things like redefinitions, but not inherent interpreter features per se (well, except for Shutt). 2020-09-26T16:21:23Z _stoopkid2[d] joined #scheme 2020-09-26T16:23:57Z jcowan: There's a lot of nostalgia for fexprs 2020-09-26T16:26:30Z Riastradh: fexprs: `code was too comprehensible, we should make it totally impossible to reason about higher-order functions' 2020-09-26T16:27:12Z klovett joined #scheme 2020-09-26T16:35:37Z mmohammadi9812 quit (Ping timeout: 264 seconds) 2020-09-26T16:38:13Z mmohammadi9812 joined #scheme 2020-09-26T16:43:12Z jcowan: As someone who wrote a long rant yesterday saying that reason did not control the SRFI process and should not, you'd think I would support fexprs, but I don't. 2020-09-26T16:48:18Z klovett_ joined #scheme 2020-09-26T16:48:32Z Riastradh: nostalgia for weird mistakes of deified early pioneers confuses me 2020-09-26T16:52:04Z klovett quit (Ping timeout: 260 seconds) 2020-09-26T16:53:02Z Zipheir: Like nil = #f. 2020-09-26T16:55:47Z arew quit (Quit: WeeChat 2.8) 2020-09-26T16:56:49Z amirouche joined #scheme 2020-09-26T16:57:39Z v_m_v quit (Remote host closed the connection) 2020-09-26T16:58:02Z klovett joined #scheme 2020-09-26T16:58:16Z v_m_v joined #scheme 2020-09-26T17:01:27Z klovett_ quit (Ping timeout: 240 seconds) 2020-09-26T17:02:24Z v_m_v quit (Ping timeout: 246 seconds) 2020-09-26T17:03:12Z dTal: or car and cdr 2020-09-26T17:05:12Z jcowan: Well, it's not clear what you'd replace them with. First and rest only make sense when pairs are used to form lists (which of course they are, much of the time). When pairs are used as 2-tuples, what would you call them? |1| and |2| aren't very perspicuous either. 2020-09-26T17:06:20Z mmohammadi9812 quit (Ping timeout: 256 seconds) 2020-09-26T17:10:09Z Zipheir: Similar objections apply to 'head' and 'tail', which make sense in languages with a strict list type. 2020-09-26T17:10:46Z Zipheir: First and second make sense for tuples, less sense for lists. 2020-09-26T17:16:29Z koo5 joined #scheme 2020-09-26T17:27:58Z Zipheir: I guess 'head' and |1| could be added as aliases for car, 'tail' and |2| for cdr. 2020-09-26T17:28:07Z Zipheir: But the old names are entrenched. 2020-09-26T17:36:51Z badkins joined #scheme 2020-09-26T17:37:35Z klovett_ joined #scheme 2020-09-26T17:37:41Z gravicappa quit (Ping timeout: 265 seconds) 2020-09-26T17:39:16Z gravicappa joined #scheme 2020-09-26T17:40:07Z klovett quit (Ping timeout: 240 seconds) 2020-09-26T17:41:37Z badkins quit (Ping timeout: 264 seconds) 2020-09-26T17:49:33Z mmohammadi9812 joined #scheme 2020-09-26T17:53:47Z Guest65431 quit (Ping timeout: 240 seconds) 2020-09-26T18:01:30Z laxask joined #scheme 2020-09-26T18:01:38Z laxask is now known as sudden 2020-09-26T18:02:44Z jcowan: OTOH, Common Lispers would say that NREVERSE is entrenched 2020-09-26T18:13:47Z phillbush quit (Ping timeout: 240 seconds) 2020-09-26T18:14:01Z phillbush joined #scheme 2020-09-26T18:14:10Z koo5 quit (Ping timeout: 256 seconds) 2020-09-26T18:17:18Z badkins joined #scheme 2020-09-26T18:21:13Z _Googleman250[d] joined #scheme 2020-09-26T18:30:14Z tristero quit (Ping timeout: 272 seconds) 2020-09-26T19:02:23Z phillbush quit (Remote host closed the connection) 2020-09-26T19:20:22Z phillbush joined #scheme 2020-09-26T19:24:11Z Aurora_v_kosmose quit (Quit: brb) 2020-09-26T19:26:29Z koo5 joined #scheme 2020-09-26T19:30:06Z raingloom quit (Ping timeout: 256 seconds) 2020-09-26T19:30:22Z psutcliffe quit (Quit: Leaving) 2020-09-26T19:41:27Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-26T20:07:21Z ggole quit (Quit: Leaving) 2020-09-26T20:07:33Z retropikzel quit (Quit: Leaving) 2020-09-26T20:09:08Z aeth quit (Ping timeout: 256 seconds) 2020-09-26T20:10:38Z aeth joined #scheme 2020-09-26T20:15:33Z lritter joined #scheme 2020-09-26T20:41:40Z rotty quit (Ping timeout: 256 seconds) 2020-09-26T20:43:14Z TCZ joined #scheme 2020-09-26T20:44:23Z rotty joined #scheme 2020-09-26T20:50:08Z ex_nihilo joined #scheme 2020-09-26T20:56:56Z gmaggior quit (Quit: Leaving) 2020-09-26T21:06:02Z raingloom joined #scheme 2020-09-26T21:07:30Z aeth: "head" and "tail" seems like a natural API because everyone knows what a coin is... although, idk if that analogy will hold or will go the way of the floppy disk save icon. 2020-09-26T21:13:46Z aeth: It's also amusing to think of a cons pair as a coin, which I've never thought of before. 2020-09-26T21:14:55Z aeth: I guess if the cdr contains a cons pair, then it's a bi-metallic coin, but only on the tail side. https://en.wikipedia.org/wiki/Bi-metallic_coin 2020-09-26T21:15:27Z aeth: Fortunately, visual recursion is avoided if you show the head of that second coin. 2020-09-26T21:17:07Z aeth: It's even still O(n) to do random access since you have to remove the inner coin n-1 times to get to the nth coin. 2020-09-26T21:17:26Z iltutmus quit (Quit: ZNC 1.7.4 - https://znc.in) 2020-09-26T21:17:35Z iltutmus joined #scheme 2020-09-26T21:18:39Z aeth: The only thing that this analogy doesn't account for is that more than one coin's tail-side can refer to the same coin. 2020-09-26T21:19:25Z iltutmus quit (Client Quit) 2020-09-26T21:19:34Z iltutmus joined #scheme 2020-09-26T21:22:16Z iltutmus quit (Client Quit) 2020-09-26T21:22:25Z iltutmus joined #scheme 2020-09-26T21:22:51Z Zipheir: What's the most effective standard Scheme structure for working with integers in two's complement representation? i.e. assuming we want bitwise operations on integers. 2020-09-26T21:23:22Z aeth: Zipheir: how many bits? 2020-09-26T21:23:24Z Zipheir: Bitvectors would be the best choice, I suppose. 2020-09-26T21:23:37Z Zipheir: aeth: A fixed number. 2020-09-26T21:24:19Z aeth: Zipheir: I'd use u64 vectors, but there's a very good chance that that's doing bignum arithmetic even though it can be optimized as long as the procedure's scope isn't left. u32 vectors will probably be efficient on 64-bit implementations. 2020-09-26T21:24:37Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-26T21:24:38Z aeth: I'd go for more than u8 vectors just because there's a lot fewer bits to shuffle around and you can probably solve your problem in 1-4 2020-09-26T21:24:49Z Zipheir: It's not entirely trivial to implement bitwise operations on bytevector-represented integers. 2020-09-26T21:24:52Z aeth: (1-4 fixnums, I mean) 2020-09-26T21:25:00Z Zipheir: Yeah, u64vectors might be good. 2020-09-26T21:26:08Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-26T21:26:34Z aeth: ime, it only really gets hard when you start trying to do stuff like multiplication and division and exponentiation in your manual, fixed-sized bignums. 2020-09-26T21:26:47Z aeth: which probably isn't what you'll want/need 2020-09-26T21:28:43Z Zipheir: This is for representing integers in Okasaki-Gill Patricia tr(ee|ie)s. 2020-09-26T21:29:26Z Zipheir: Basically, you just need and/ior/xor/not to implement the lookups and prefix calculations. 2020-09-26T21:30:40Z Zipheir: I guess I'll see how plausible it is to use u64vectors. 2020-09-26T21:33:01Z Riastradh: Why do you need to represent the whole thing in a form other than as integers? 2020-09-26T21:33:07Z TCZ quit (Quit: Leaving) 2020-09-26T21:36:11Z Zipheir: Actually, I don't, provided the insertion algorithm can correctly handle both positive and negative integers. 2020-09-26T21:36:29Z Riastradh: Why does that make a difference? 2020-09-26T21:38:38Z Zipheir: The algorithm from Okasaki's paper computes the highest set bit of an integer, but this breaks with arbitrary negative numbers. 2020-09-26T21:39:09Z Riastradh: OK, but what does that have to do with integers vs u64vectors? 2020-09-26T21:39:22Z Zipheir: So the trie gets completely out of order when negative and positive integers are mixed. This sucks. 2020-09-26T21:40:31Z Zipheir: I'm trying to follow the Haskell implementation, which uses a fixed-size unsigned representation of integers. Thus, highest set bit can easily be computed, for integers in-range. 2020-09-26T21:40:44Z Zipheir: Does that make some kind of sense? 2020-09-26T21:41:18Z Riastradh: I remain unclear on why this motivates reaching for u64vectors instead of ordinary integers? 2020-09-26T21:44:41Z Zipheir: I'm not sure it makes any sense. Initially I was trying to work with the twos-complement rep. in bytevector form, but bitwise operations proved annoying to implement. Again, the goal being to implement a working highest-set-bit. 2020-09-26T21:44:59Z Zipheir: But now I can't see how u64vectors would change that at all. 2020-09-26T21:45:50Z Riastradh: FYI, I dunno what the modern R7RSy spelling of this is, but MIT Scheme's integer-length (from SRFI 33 if memory serves) works on nonnegative and negative integers. 2020-09-26T21:47:04Z Zipheir: Yes, it's integer-length in SRFI 151, and is probably the same as the SRFI 33 version. 2020-09-26T21:47:10Z Zipheir: That's a good idea. 2020-09-26T21:47:38Z Riastradh: It returns the length of the finite nonrepeated prefix of the integer as a string of bits (viewed as little-endian), whether the infinite suffix is all 0 or all 1. 2020-09-26T21:49:49Z Zipheir: And (+ 1 (integer-length i)) gives the length of the two's-complement representation of i. 2020-09-26T21:50:35Z Riastradh: Well, the minimum number of bits needed to represent integers up to and including x in two's-complement, yes. 2020-09-26T21:50:49Z Zipheir: Right, of course. 2020-09-26T21:52:18Z jcowan: There's a table at the end of 151 correlating its procedures with those of other bitwise SRFIs. 2020-09-26T21:52:31Z jcowan: s/other/earlier 2020-09-26T21:54:16Z Zipheir: Riastradh: Thanks. 2020-09-26T21:54:45Z jcowan: https://srfi.schemers.org/srfi-151/srfi-151.html#Comparisonofproposals 2020-09-26T21:55:02Z jcowan: so only a few incompatibilities with SRFI 33 2020-09-26T21:56:01Z Zipheir: Another observation is that negative and positive integers never share a big-endian prefix (in the Patricia binary-prefix-trie sense), so it's effectively a "left-negative, right-positive" situation at the beginning of every lookup. It seems like it should be ridiculously easy to solve this. 2020-09-26T22:01:21Z koo5 quit (Quit: Leaving) 2020-09-26T22:07:27Z TCZ joined #scheme 2020-09-26T22:39:43Z madage quit (Ping timeout: 240 seconds) 2020-09-26T22:48:04Z madage joined #scheme 2020-09-26T23:08:11Z Zenton quit (Remote host closed the connection) 2020-09-26T23:08:57Z daviid joined #scheme 2020-09-26T23:09:21Z daviid is now known as Guest60468 2020-09-26T23:09:35Z Guest60468 is now known as daviid 2020-09-26T23:13:28Z Balooga quit (Read error: Connection reset by peer) 2020-09-26T23:13:32Z nikita` quit (Ping timeout: 256 seconds) 2020-09-26T23:14:06Z nikita` joined #scheme 2020-09-26T23:14:07Z nikita` quit (Excess Flood) 2020-09-26T23:14:43Z nikita` joined #scheme 2020-09-26T23:14:43Z nikita` quit (Excess Flood) 2020-09-26T23:14:45Z Balooga joined #scheme 2020-09-26T23:14:46Z rickygee joined #scheme 2020-09-26T23:15:14Z nikita` joined #scheme 2020-09-26T23:15:14Z nikita` quit (Excess Flood) 2020-09-26T23:16:02Z nikita` joined #scheme 2020-09-26T23:16:03Z nikita` quit (Excess Flood) 2020-09-26T23:16:46Z nikita` joined #scheme 2020-09-26T23:16:47Z nikita` quit (Excess Flood) 2020-09-26T23:17:24Z nikita` joined #scheme 2020-09-26T23:17:25Z nikita` quit (Excess Flood) 2020-09-26T23:18:33Z nikita` joined #scheme 2020-09-26T23:18:34Z nikita` quit (Excess Flood) 2020-09-26T23:25:34Z nikita` joined #scheme 2020-09-26T23:25:34Z nikita` quit (Excess Flood) 2020-09-26T23:28:09Z rgherdt quit (Ping timeout: 260 seconds) 2020-09-26T23:30:25Z nikita` joined #scheme 2020-09-26T23:30:26Z nikita` quit (Excess Flood) 2020-09-26T23:35:32Z badkins quit (Remote host closed the connection) 2020-09-26T23:36:02Z nikita` joined #scheme 2020-09-26T23:36:03Z nikita` quit (Excess Flood) 2020-09-26T23:36:08Z badkins joined #scheme 2020-09-26T23:38:57Z rickygee quit (Quit: leaving) 2020-09-26T23:40:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-26T23:40:51Z nikita` joined #scheme 2020-09-26T23:40:51Z nikita` quit (Excess Flood) 2020-09-26T23:46:25Z nikita` joined #scheme 2020-09-26T23:46:25Z nikita` quit (Excess Flood) 2020-09-26T23:46:55Z Zenton joined #scheme 2020-09-26T23:56:23Z xelxebar quit (Ping timeout: 240 seconds) 2020-09-26T23:57:10Z xelxebar joined #scheme 2020-09-26T23:59:59Z skapata quit (Remote host closed the connection) 2020-09-27T00:01:49Z nikita` joined #scheme 2020-09-27T00:01:49Z nikita` quit (Excess Flood) 2020-09-27T00:03:04Z aeth_ joined #scheme 2020-09-27T00:04:29Z aeth quit (Disconnected by services) 2020-09-27T00:04:33Z aeth_ is now known as aeth 2020-09-27T00:07:26Z nikita` joined #scheme 2020-09-27T00:07:26Z nikita` quit (Excess Flood) 2020-09-27T00:29:58Z phillbush quit (Ping timeout: 260 seconds) 2020-09-27T00:52:34Z TCZ quit (Quit: Leaving) 2020-09-27T00:59:28Z groovy quit (Read error: Connection reset by peer) 2020-09-27T00:59:50Z dnm quit (Ping timeout: 256 seconds) 2020-09-27T00:59:52Z groovy joined #scheme 2020-09-27T01:02:07Z lritter quit (Ping timeout: 240 seconds) 2020-09-27T01:02:43Z dnm joined #scheme 2020-09-27T01:03:02Z lritter joined #scheme 2020-09-27T01:11:53Z heredoc_ joined #scheme 2020-09-27T01:13:26Z even4void[m] quit (*.net *.split) 2020-09-27T01:13:29Z heredoc quit (*.net *.split) 2020-09-27T01:19:32Z lockywolf: Do people who like REPLs know about this result? https://arxiv.org/abs/2005.07678 2020-09-27T01:54:31Z cloveistaken joined #scheme 2020-09-27T02:13:13Z nikita` joined #scheme 2020-09-27T02:13:13Z nikita` quit (Excess Flood) 2020-09-27T02:13:18Z ex_nihilo: lockywolf: what does edit distance have to do with REPLs, or with liking REPLs? 2020-09-27T02:15:44Z lockywolf: ex_nihilo, it is used for thos "did you mean?" prompts 2020-09-27T02:15:48Z lockywolf: *those 2020-09-27T02:17:00Z lockywolf: (apply displayy "hello") -> unbound variable displayy , did you mean display? 2020-09-27T02:25:48Z mdhughes: If I was implementing DWIM, I'd just soundex the bad input and all the library words, and list the ones that match. Wouldn't even bother with edit distance or anything fancy. 2020-09-27T02:27:41Z Zipheir: Soundex sounds a lot fancier than enumerating words within a given edit distance. 2020-09-27T02:28:17Z mdhughes: It's not, it's a really stupid little filter that roughly maps English-sounding words. 2020-09-27T02:28:39Z mdhughes: https://en.wikipedia.org/wiki/Soundex 2020-09-27T02:29:28Z badkins joined #scheme 2020-09-27T02:34:21Z badkins quit (Ping timeout: 260 seconds) 2020-09-27T02:35:00Z Zipheir: Interesting. 2020-09-27T02:35:56Z Zipheir: I'd imagine edit distance might be better for correcting typos, since "dosplat" 2020-09-27T02:36:31Z Zipheir: Oops. ... since "dosplat" is close to "display" in edit distance, but maybe further in phonetic similarity. 2020-09-27T02:37:20Z Zipheir: And perhaps Schemers aren't using English pronunciation. 2020-09-27T02:39:50Z Zipheir: It would be funny to record Schemers from around the world pronouncing call-with-current-continuation. 2020-09-27T02:40:10Z lockywolf: All pronunciation apart from English must be banned 2020-09-27T02:40:46Z aeth: which English? English? Scottish? Irish? American? Canadian? South African? Australian? New Zealand? 2020-09-27T02:40:53Z jcowan: English has thousands of pronunciations 2020-09-27T02:40:54Z aeth: I mean, even in the US there are probably like 10 accents 2020-09-27T02:40:56Z lockywolf: Doesn't matter 2020-09-27T02:41:16Z badkins joined #scheme 2020-09-27T02:41:22Z mdhughes: Doesn't matter, it's just a "is this vaguely the same word", originally for categorizing variant-spelled last names. 2020-09-27T02:41:23Z lockywolf: Choose one at random and ban the rest 2020-09-27T02:41:31Z aeth: (really probably more like 10 accent groups, with a continuum depending on how you categorize things) 2020-09-27T02:41:42Z aeth: (even more in the UK since they've had more time to diverge) 2020-09-27T02:41:43Z jcowan: Anglophones would never accept that. 2020-09-27T02:42:20Z jcowan: We have no standard accent 2020-09-27T02:42:24Z lockywolf: That's why somebody from outside has to implement that 2020-09-27T02:42:30Z mdhughes: Most English variants are different in vowels, which soundex discards. British English and Cantonese English have some abusive treatment of trailing consonants. 2020-09-27T02:42:33Z lockywolf: RP :) 2020-09-27T02:43:01Z jcowan: THe language of a tiny minority of a tiny minority? For what? 2020-09-27T02:44:05Z aeth: Strangely enough, the two places where there's lots of work on AI have fairly distinctive accents for American English: Boston and San Francisco 2020-09-27T02:44:10Z lockywolf: It doesn't matter 2020-09-27T02:44:23Z lockywolf: The point is not to find a majority 2020-09-27T02:44:37Z aeth: (And if you don't think California has an accent, you're from California) 2020-09-27T02:45:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-27T02:45:56Z Zipheir: lockywolf: What's to be gained from standardizing Scheme pronunciation? 2020-09-27T02:46:12Z aeth: Zipheir: we can finally pronounce cdaddr at conferences and be understood 2020-09-27T02:46:21Z jcowan: LInguistics is the science of which more educated people are pig=ignorant than any other, I think. 2020-09-27T02:46:36Z Zipheir: aeth: We'll never be able to pronounce cdaddr at a conference and be understood. 2020-09-27T02:47:03Z aeth: cdaddr is cudadudur 2020-09-27T02:47:15Z lockywolf: Well, making voice input for REPLs would definitely become easier. 2020-09-27T02:47:28Z aeth: just insert u's between everything where there isn't an a and you can easily pronounce cxr 2020-09-27T02:47:32Z jcowan: It's just a matter of mastering vowel and consonant length [kdad:r] 2020-09-27T02:48:18Z jcowan: TO be sure, it may take some practice to hear the difference between cddddr and cdddddr 2020-09-27T02:48:24Z edgar-rft joined #scheme 2020-09-27T02:50:10Z ex_nihilo: Surely some words are meant to be neither spoken nor heard.... 2020-09-27T02:51:07Z jcowan: At the extremes, yes 2020-09-27T02:51:43Z Zipheir: ex_nihilo: If you want Ithkuil, you know where to find it. :) 2020-09-27T02:52:17Z jcowan laughs 2020-09-27T02:53:49Z mdhughes: I play Hnefatafl with Huitzilopochtli all the time. 2020-09-27T02:57:29Z ex_nihilo: Zipheir: funny; you can't even joke about Lisps without learning something ;) 2020-09-27T03:13:22Z nikita` joined #scheme 2020-09-27T03:13:23Z nikita` quit (Excess Flood) 2020-09-27T03:45:48Z nikita` joined #scheme 2020-09-27T03:45:48Z nikita` quit (Excess Flood) 2020-09-27T04:55:35Z DKordic quit 2020-09-27T05:03:49Z badkins joined #scheme 2020-09-27T05:08:36Z badkins quit (Ping timeout: 256 seconds) 2020-09-27T05:12:25Z badkins joined #scheme 2020-09-27T05:15:52Z gravicappa joined #scheme 2020-09-27T05:16:18Z badkins quit (Remote host closed the connection) 2020-09-27T05:16:26Z badkins joined #scheme 2020-09-27T05:39:12Z badkins quit (Remote host closed the connection) 2020-09-27T05:45:27Z ex_nihilo quit (Quit: Leaving) 2020-09-27T06:03:06Z raingloom quit (Ping timeout: 272 seconds) 2020-09-27T06:11:00Z nikita` joined #scheme 2020-09-27T06:12:59Z mmohammadi9812 joined #scheme 2020-09-27T06:16:46Z mmohammadi98129 joined #scheme 2020-09-27T06:17:58Z mmohammadi9812 quit (Ping timeout: 256 seconds) 2020-09-27T06:17:58Z mmohammadi98129 is now known as mmohammadi9812 2020-09-27T06:26:46Z lritter quit (Ping timeout: 246 seconds) 2020-09-27T06:31:00Z dbmikus quit (Ping timeout: 256 seconds) 2020-09-27T06:34:39Z mmohammadi9812 quit (Ping timeout: 258 seconds) 2020-09-27T07:05:20Z dbmikus joined #scheme 2020-09-27T07:08:46Z klovett_ quit (Remote host closed the connection) 2020-09-27T07:09:20Z klovett joined #scheme 2020-09-27T07:16:56Z X-Scale` joined #scheme 2020-09-27T07:17:55Z X-Scale quit (Ping timeout: 240 seconds) 2020-09-27T07:18:19Z X-Scale` is now known as X-Scale 2020-09-27T07:20:05Z amirouche quit (Ping timeout: 240 seconds) 2020-09-27T07:23:18Z mmohammadi98129 joined #scheme 2020-09-27T07:30:07Z rgherdt joined #scheme 2020-09-27T07:32:41Z mmohammadi98129 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-27T07:37:43Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-27T07:45:00Z edgar-rft quit (Quit: Leaving) 2020-09-27T07:49:59Z mmohammadi98129 joined #scheme 2020-09-27T07:57:59Z klovett quit (Remote host closed the connection) 2020-09-27T07:58:17Z klovett joined #scheme 2020-09-27T08:09:16Z hendursa1 joined #scheme 2020-09-27T08:11:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-27T08:12:27Z rgherdt quit (Remote host closed the connection) 2020-09-27T08:18:35Z bitwiz quit (Quit: Lost terminal) 2020-09-27T08:25:11Z mmohammadi98129 quit (Quit: Ping timeout (120 seconds)) 2020-09-27T08:26:06Z xelxebar quit (Remote host closed the connection) 2020-09-27T08:26:11Z mmohammadi98129 joined #scheme 2020-09-27T08:26:28Z xelxebar joined #scheme 2020-09-27T08:35:27Z even4void[m] joined #scheme 2020-09-27T08:45:38Z iltutmus quit (Quit: ZNC 1.7.4 - https://znc.in) 2020-09-27T08:45:47Z iltutmus joined #scheme 2020-09-27T08:46:11Z even4void joined #scheme 2020-09-27T08:49:53Z bitwiz joined #scheme 2020-09-27T08:53:03Z even4void quit (Remote host closed the connection) 2020-09-27T09:14:47Z amirouche joined #scheme 2020-09-27T09:26:35Z edgar-rft joined #scheme 2020-09-27T09:30:58Z mmohammadi98129 quit (Ping timeout: 256 seconds) 2020-09-27T09:39:24Z mmohammadi98129 joined #scheme 2020-09-27T09:44:58Z skapata joined #scheme 2020-09-27T09:45:45Z mirrorbird joined #scheme 2020-09-27T10:10:40Z jcowan quit (Read error: Connection reset by peer) 2020-09-27T10:11:05Z mmohammadi98129 quit (Ping timeout: 240 seconds) 2020-09-27T10:11:27Z ullbeking quit (Read error: Connection reset by peer) 2020-09-27T10:12:59Z ullbeking joined #scheme 2020-09-27T10:13:07Z jcowan joined #scheme 2020-09-27T10:14:47Z cemerick quit (Ping timeout: 260 seconds) 2020-09-27T10:15:27Z timwis quit (Ping timeout: 258 seconds) 2020-09-27T10:15:49Z timwis joined #scheme 2020-09-27T10:15:57Z cemerick joined #scheme 2020-09-27T10:19:54Z raingloom joined #scheme 2020-09-27T10:20:47Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-27T10:21:05Z mirrorbird quit (Ping timeout: 265 seconds) 2020-09-27T10:21:43Z mmohammadi98129 joined #scheme 2020-09-27T10:23:44Z daviid quit (Ping timeout: 256 seconds) 2020-09-27T10:34:18Z dmiles joined #scheme 2020-09-27T10:36:42Z samth quit (Ping timeout: 272 seconds) 2020-09-27T10:39:54Z samth joined #scheme 2020-09-27T10:42:19Z daviid joined #scheme 2020-09-27T10:42:39Z daviid is now known as Guest77937 2020-09-27T11:04:25Z raingloom quit (Ping timeout: 240 seconds) 2020-09-27T11:17:11Z mirrorbird joined #scheme 2020-09-27T11:20:45Z gravicappa joined #scheme 2020-09-27T11:25:40Z mmohammadi98129 quit (Ping timeout: 246 seconds) 2020-09-27T11:27:10Z TCZ joined #scheme 2020-09-27T11:28:55Z srandon111 joined #scheme 2020-09-27T11:30:34Z hugh_marera joined #scheme 2020-09-27T11:43:27Z mirrorbird quit (Ping timeout: 240 seconds) 2020-09-27T12:03:14Z edgar-rft quit (Quit: Leaving) 2020-09-27T12:05:12Z edgar-rft joined #scheme 2020-09-27T12:17:55Z badkins joined #scheme 2020-09-27T12:19:57Z TCZ quit (Quit: Leaving) 2020-09-27T12:22:40Z badkins quit (Ping timeout: 256 seconds) 2020-09-27T12:30:41Z mirrorbird joined #scheme 2020-09-27T12:30:50Z edgar-rft quit (Quit: Leaving) 2020-09-27T12:47:15Z badkins joined #scheme 2020-09-27T12:51:27Z badkins quit (Ping timeout: 240 seconds) 2020-09-27T12:52:32Z civodul joined #scheme 2020-09-27T12:55:40Z hugh_marera quit (Quit: hugh_marera) 2020-09-27T13:02:32Z badkins joined #scheme 2020-09-27T13:09:36Z ggole joined #scheme 2020-09-27T13:10:19Z badkins quit (Ping timeout: 246 seconds) 2020-09-27T13:12:33Z edgar-rft joined #scheme 2020-09-27T13:12:42Z badkins joined #scheme 2020-09-27T13:13:22Z hendursa1 quit (Quit: hendursa1) 2020-09-27T13:13:38Z hendursaga joined #scheme 2020-09-27T13:15:47Z mirrorbird quit (Ping timeout: 240 seconds) 2020-09-27T13:16:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-27T13:17:26Z mirrorbird joined #scheme 2020-09-27T13:32:26Z badkins joined #scheme 2020-09-27T13:37:05Z badkins quit (Ping timeout: 258 seconds) 2020-09-27T13:45:03Z mirrorbird quit (Ping timeout: 265 seconds) 2020-09-27T13:46:49Z edgar-rft quit (Quit: Leaving) 2020-09-27T13:56:12Z badkins joined #scheme 2020-09-27T14:04:44Z badkins quit (Ping timeout: 256 seconds) 2020-09-27T14:09:19Z TCZ joined #scheme 2020-09-27T14:09:42Z raingloom joined #scheme 2020-09-27T14:11:52Z srandon111 quit (Quit: leaving) 2020-09-27T14:33:41Z badkins joined #scheme 2020-09-27T14:38:25Z badkins quit (Ping timeout: 258 seconds) 2020-09-27T14:39:51Z badkins joined #scheme 2020-09-27T14:49:48Z raingloom quit (Ping timeout: 260 seconds) 2020-09-27T14:50:06Z mirrorbird joined #scheme 2020-09-27T14:57:26Z phillbush joined #scheme 2020-09-27T15:03:36Z ManDay joined #scheme 2020-09-27T15:05:01Z ManDay quit (Client Quit) 2020-09-27T15:15:51Z TCZ quit (Quit: Leaving) 2020-09-27T15:28:30Z gmaggior joined #scheme 2020-09-27T16:08:42Z mirrorbird quit (Ping timeout: 260 seconds) 2020-09-27T16:14:25Z mhmd[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-27T16:14:25Z _Dletta[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:14:25Z [d]__ quit (Quit: [d]__) 2020-09-27T16:14:25Z koo5[d]_ quit (Remote host closed the connection) 2020-09-27T16:14:25Z _aindilis[d] quit (Remote host closed the connection) 2020-09-27T16:14:25Z _Googleman250[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:14:25Z irc0[d]_ quit (Remote host closed the connection) 2020-09-27T16:14:25Z nyx[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-27T16:14:25Z _jacobpdq[d] quit (Remote host closed the connection) 2020-09-27T16:14:25Z _jeosol[d] quit (Remote host closed the connection) 2020-09-27T16:14:25Z arew[d]_ quit (Remote host closed the connection) 2020-09-27T16:14:25Z __jbalint[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:14:25Z __dmiles[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:14:25Z _stoopkid2[d] quit (Remote host closed the connection) 2020-09-27T16:14:39Z _dmiles[d] joined #scheme 2020-09-27T16:14:39Z [d]_ joined #scheme 2020-09-27T16:14:40Z nyx[d]_ joined #scheme 2020-09-27T16:14:40Z _jacobpdq[d] joined #scheme 2020-09-27T16:14:40Z _jbalint[d] joined #scheme 2020-09-27T16:14:45Z _Dletta[d] joined #scheme 2020-09-27T16:14:51Z koo5[d]_ joined #scheme 2020-09-27T16:14:56Z irc0[d]_ joined #scheme 2020-09-27T16:15:03Z _jeosol[d] joined #scheme 2020-09-27T16:22:15Z _stoopkid2[d] joined #scheme 2020-09-27T16:26:06Z nyx[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z koo5[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z _jeosol[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z _dmiles[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z _Dletta[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z _jbalint[d] quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z _jacobpdq[d] quit (Remote host closed the connection) 2020-09-27T16:26:06Z [d]_ quit (Quit: [d]_) 2020-09-27T16:26:06Z irc0[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-27T16:26:06Z _stoopkid2[d] quit (Read error: Connection reset by peer) 2020-09-27T16:26:30Z _dmiles[d] joined #scheme 2020-09-27T16:26:30Z [d]_ joined #scheme 2020-09-27T16:26:30Z _jacobpdq[d] joined #scheme 2020-09-27T16:26:30Z nyx[d]_ joined #scheme 2020-09-27T16:26:31Z _jbalint[d] joined #scheme 2020-09-27T16:26:37Z koo5[d]_ joined #scheme 2020-09-27T16:26:42Z irc0[d]_ joined #scheme 2020-09-27T16:26:47Z _jeosol[d] joined #scheme 2020-09-27T16:31:06Z _Dletta[d] joined #scheme 2020-09-27T16:40:16Z mirrorbird joined #scheme 2020-09-27T17:08:22Z _aindilis[d] joined #scheme 2020-09-27T17:09:27Z mirrorbird quit (Ping timeout: 240 seconds) 2020-09-27T17:10:12Z nullheroes quit (Quit: WeeChat 2.9) 2020-09-27T17:11:14Z hugh_marera joined #scheme 2020-09-27T17:22:02Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-27T17:22:31Z gravicappa joined #scheme 2020-09-27T17:23:41Z _stoopkid2[d] joined #scheme 2020-09-27T17:31:59Z mirrorbird joined #scheme 2020-09-27T17:35:37Z mhmd[d]_ joined #scheme 2020-09-27T17:41:13Z mirrorbird quit (Ping timeout: 246 seconds) 2020-09-27T17:42:57Z mmohammadi98129 joined #scheme 2020-09-27T17:50:29Z tristero joined #scheme 2020-09-27T17:53:46Z Fare joined #scheme 2020-09-27T17:56:11Z raingloom joined #scheme 2020-09-27T18:27:07Z gravicappa quit (Ping timeout: 240 seconds) 2020-09-27T19:02:14Z xelxebar quit (Remote host closed the connection) 2020-09-27T19:02:42Z xelxebar joined #scheme 2020-09-27T19:09:13Z skapata quit (Quit: Leaving) 2020-09-27T19:11:03Z skapata joined #scheme 2020-09-27T19:14:38Z even4void joined #scheme 2020-09-27T19:15:11Z even4void quit (Remote host closed the connection) 2020-09-27T19:33:53Z raingloom quit (Ping timeout: 260 seconds) 2020-09-27T19:47:27Z TCZ joined #scheme 2020-09-27T19:49:53Z bitmapper joined #scheme 2020-09-27T19:55:17Z dbmikus quit (Quit: WeeChat 2.9) 2020-09-27T19:55:46Z dbmikus joined #scheme 2020-09-27T20:42:27Z raingloom joined #scheme 2020-09-27T20:47:01Z ggole quit (Quit: Leaving) 2020-09-27T21:26:19Z TCZ quit (Quit: Leaving) 2020-09-27T21:32:05Z badkins quit (Remote host closed the connection) 2020-09-27T21:35:11Z badkins joined #scheme 2020-09-27T21:48:07Z badkins quit (Ping timeout: 240 seconds) 2020-09-27T21:48:30Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-27T21:51:08Z badkins joined #scheme 2020-09-27T21:58:35Z badkins quit (Ping timeout: 240 seconds) 2020-09-27T22:00:01Z TCZ joined #scheme 2020-09-27T22:09:44Z hugh_marera quit (Quit: hugh_marera) 2020-09-27T22:28:56Z phillbush quit (Remote host closed the connection) 2020-09-27T22:30:23Z madage quit (Ping timeout: 240 seconds) 2020-09-27T22:30:37Z marusich joined #scheme 2020-09-27T22:33:33Z amirouche quit (Ping timeout: 260 seconds) 2020-09-27T22:33:42Z madage joined #scheme 2020-09-27T22:47:08Z ex_nihilo joined #scheme 2020-09-27T23:07:59Z badkins joined #scheme 2020-09-27T23:12:54Z badkins quit (Ping timeout: 260 seconds) 2020-09-27T23:17:04Z amirouche joined #scheme 2020-09-27T23:28:11Z mmohammadi98129 quit (Ping timeout: 258 seconds) 2020-09-27T23:29:28Z edgar-rft joined #scheme 2020-09-27T23:32:07Z Fare quit (Ping timeout: 240 seconds) 2020-09-27T23:48:24Z badkins joined #scheme 2020-09-27T23:53:31Z Fare joined #scheme 2020-09-27T23:57:04Z badkins quit (Ping timeout: 256 seconds) 2020-09-28T00:02:16Z gmaggior quit (Quit: Leaving) 2020-09-28T00:14:49Z phillbush joined #scheme 2020-09-28T00:36:39Z TCZ quit (Quit: Leaving) 2020-09-28T00:52:28Z edgar-rft quit (Quit: Leaving) 2020-09-28T00:56:51Z badkins joined #scheme 2020-09-28T00:57:34Z aeth: Riastradh: How would you do function/procedure types in Scheme? 2020-09-28T01:01:20Z badkins quit (Ping timeout: 258 seconds) 2020-09-28T01:08:50Z edgar-rft joined #scheme 2020-09-28T01:24:18Z _Googleman250[d] joined #scheme 2020-09-28T01:48:53Z phillbush quit (Remote host closed the connection) 2020-09-28T01:49:56Z phillbush joined #scheme 2020-09-28T01:50:52Z phillbush quit (Remote host closed the connection) 2020-09-28T01:56:20Z lritter joined #scheme 2020-09-28T02:24:49Z ZombieChicken: mdhughes: Someone has a talf client in scheme? 2020-09-28T02:25:38Z mdhughes: Well, not yet, but that'd be a good project. It's probably more computable than chess. 2020-09-28T02:29:33Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-28T02:31:13Z ZombieChicken: It might be solvable given the relative size and simplicity of the game 2020-09-28T02:31:32Z ZombieChicken: that one 19x19 monster might be an issue, though 2020-09-28T02:33:48Z autumn[m]1: talf? (just curious) 2020-09-28T02:34:01Z ZombieChicken: Viking chess 2020-09-28T02:34:30Z ZombieChicken: hfentafl (sp?) is up on Wikipedia. 2020-09-28T02:35:06Z mdhughes: Hnefatafl, or *tafl for all the variants. 2020-09-28T02:35:16Z Riastradh: aeth: Wouldn't really be Scheme any more, but... I like Haskell's type system. 2020-09-28T02:35:55Z bitmapper joined #scheme 2020-09-28T02:36:08Z mdhughes: I got introduced to it in some German (but translated) videogame back in the '90s, and then got to playing it for real. Haven't actually done it in years now. 2020-09-28T02:36:46Z ZombieChicken: mdhughes: what size board is the irish variant? 9x9? 2020-09-28T02:37:09Z mdhughes: It's more tactically deep than Checkers or Backgammon, less than Chess or Go. 2020-09-28T02:37:48Z mdhughes: I haven't seen the Irish one in actual play, and any rules for it are completely fabricated. 2020-09-28T02:38:07Z ZombieChicken: Ha! Brandugh (The Irish variant) is 7x7, same as Ard Ri 2020-09-28T02:39:01Z ZombieChicken: Alea Evangelii (christinized name) is played on the intersections of an 18x18 grid (so 19x19?) 2020-09-28T02:42:38Z mdhughes: 17x17, off-by-one error 2020-09-28T02:42:44Z raingloom quit (Ping timeout: 265 seconds) 2020-09-28T02:43:20Z ZombieChicken: Perhaps. Not looking at the image of the drawing atm 2020-09-28T02:43:25Z mdhughes: Or it might be 18x18 on a 19x19 board. I played Copenhagen and Tablut. 2020-09-28T02:43:49Z ZombieChicken: brandubh apparently has a set of 'balanced' rules out 2020-09-28T02:44:49Z ggoes quit (Quit: WeeChat 2.3) 2020-09-28T02:44:52Z ZombieChicken: mdhughes: I thought it was the 19x19 grid of lines around the 18x18 squared they made up 2020-09-28T02:44:56Z ZombieChicken: like a go board 2020-09-28T02:45:34Z raingloom joined #scheme 2020-09-28T02:47:07Z ggoes joined #scheme 2020-09-28T02:50:13Z raingloom quit (Ping timeout: 260 seconds) 2020-09-28T02:50:20Z raingloom_ joined #scheme 2020-09-28T02:57:02Z ZombieChicken: mdhughes: if you havn't, you might give The Royal Game of Ur a shot. It's a pretty fun game itself 2020-09-28T02:57:27Z ZombieChicken: not sure if it is more or less complex gameplay-wise than a Tafl, but it's pretty fun 2020-09-28T03:07:16Z mdhughes: It seems very similar to Backgammon, but no bashing. 2020-09-28T03:07:54Z edgar-rft quit (Quit: Leaving) 2020-09-28T03:20:15Z badkins joined #scheme 2020-09-28T03:24:42Z badkins quit (Ping timeout: 258 seconds) 2020-09-28T03:28:56Z skapata quit (Quit: Leaving) 2020-09-28T03:29:27Z Fare quit (Ping timeout: 240 seconds) 2020-09-28T03:31:26Z badkins joined #scheme 2020-09-28T03:35:27Z badkins quit (Ping timeout: 240 seconds) 2020-09-28T03:53:14Z gravicappa joined #scheme 2020-09-28T04:09:33Z raingloom_ quit (Ping timeout: 260 seconds) 2020-09-28T04:15:22Z aeth: Riastradh: idk, I think Haskell might be too defined by laziness to be a direct inspiration 2020-09-28T04:25:24Z badkins joined #scheme 2020-09-28T04:30:02Z badkins quit (Ping timeout: 256 seconds) 2020-09-28T04:35:30Z edgar-rft joined #scheme 2020-09-28T04:38:31Z ggole joined #scheme 2020-09-28T04:54:34Z ex_nihilo quit (Quit: Leaving) 2020-09-28T05:04:36Z Riastradh: aeth: not the type system 2020-09-28T05:21:34Z c7d9 joined #scheme 2020-09-28T05:27:01Z ZombieChicken: mdhughes: RGoU? Backgammon was supposedly based on it. RGoU is only about 4-4.5k years old 2020-09-28T05:27:33Z aeth: "only" 2020-09-28T05:28:32Z ZombieChicken: Dug up from a graveyard in Ur. Played it with some friends. It's simple enough to pick up quickly, but there is enough skill to make it fun to play, and enough luck you won't feel like an idiot if you lose 2020-09-28T05:28:35Z aeth: if that includes dice, then that means that, surprisingly, dice predate coins by like 2500 years. 2020-09-28T05:29:00Z ZombieChicken: aeth: It did include dice. binary d4s, in fact 2020-09-28T05:29:26Z ZombieChicken: only game I know of where you can actually roll a 0 2020-09-28T05:29:28Z aeth: It's surprising to have dice before coins, even though coin flips are easier than dice (basically d2s). I mean, of course, coins aren't made just for coin flips (although in 100 years they might be) 2020-09-28T05:29:49Z ZombieChicken: Senet, which is Eqyptian, doesn't have 0, but a roll of 0 is treated as a 5 iirc 2020-09-28T05:29:53Z ZombieChicken: Senet is also roughly as old 2020-09-28T05:30:40Z ZombieChicken: aeth: I think the first die were sticks that were split in two; the flat face was one value, and the rounded another 2020-09-28T05:32:08Z aeth: When thinking about BCE years, I like to use this calendar instead so everything's positive. It really does put things in perspective. (Just add 10000). https://en.wikipedia.org/wiki/Holocene_calendar 2020-09-28T05:32:30Z aeth: So 2020 CE becomes 12020 HE and 5000 years ago is 7020 HE. 2020-09-28T05:32:33Z ZombieChicken: I ran across that sometime recently. It's nice, although it's wrong 2020-09-28T05:32:48Z ZombieChicken: which is stated in that page 2020-09-28T05:33:25Z aeth: Personally, I'd take being 300 years off over having a conversion system more complicated than "add a 1 in front" 2020-09-28T05:33:31Z ZombieChicken: Holocene-style year numbering and a proper lunisolar calendar and I'd almost be happy 2020-09-28T05:33:52Z aeth: The HE calendar means I can, say, take 1883 and turn it into 11883 without thinking, while at the same time putting BCE dates into perspective. 2020-09-28T05:34:44Z ZombieChicken: I'm the opposite; I'd rather it be a bit more complex, and be right 2020-09-28T05:35:08Z aeth: The problem is that 300 HE is an estimate, and we will get better estimates over time, while the year 0 needs to be constant 2020-09-28T05:36:01Z aeth: Besides, it's really just a rough proxy for "the start of human civilization" and it really does keep it in perspective just how slow the start of an exponential is. Over 5000 years of "nothing" 2020-09-28T05:36:49Z ZombieChicken: There was a lot in that 5k years 2020-09-28T05:36:56Z ZombieChicken: We still don't know how they built the pyramids 2020-09-28T05:37:25Z ZombieChicken: just finding out some of the weird cures from the middle ages work better than modern antibotics 2020-09-28T05:37:28Z aeth: Dice games being roughly "5000 years old" or from roughly 3000 BCE or whatever, that sounds *old*. But dice games being from roughly 7000 HE really makes you wonder either (1) what took them so long or (2) what games did they play before that we're missing? 2020-09-28T05:38:06Z ZombieChicken: aeth: Before that is was probably the "trying to not starve to death" game. Also hide-and-seek, wrestling, ect 2020-09-28T05:38:38Z ZombieChicken: These are old games, but we have no way to date, say, a scratching in a rockface 2020-09-28T05:38:50Z aeth: There's a lot of down time in agricultural societies. More than today, really. You just didn't have the luxury of today's games. 2020-09-28T05:38:58Z ZombieChicken: No telling how many possible game boards one might walk by in a stony area that just washed away 2020-09-28T05:39:56Z ZombieChicken: tbh, I'm fairly sure we aren't as advanced as we think we are 2020-09-28T05:40:10Z ZombieChicken: Humanity has forgotten soooo much over the milenia 2020-09-28T05:40:13Z aeth: There are certain conventions that developed over time, like coins, dice, cards, boards, boards with square tiles, etc. 2020-09-28T05:40:37Z aeth: All of those only had to be invented once, unless the Americas independently invented them, too 2020-09-28T05:40:45Z ZombieChicken: those spread along trade routes as much as anything 2020-09-28T05:41:05Z ZombieChicken: yeah. The New World makes things a bit more complex 2020-09-28T05:41:39Z ZombieChicken: iirc, the Maya (I think) have a game similar to one that developed in India. afaik, they had no contact way back when 2020-09-28T05:42:00Z aeth: Balls were probably some of the oldest toys, though, because you don't really have to make anything, you just need to find something that's round. 2020-09-28T05:42:19Z ZombieChicken: Round things in nature are stupidly hard to find, though 2020-09-28T05:42:40Z ZombieChicken: as is the case with any regular shaped object 2020-09-28T05:43:34Z ZombieChicken: bbiaf 2020-09-28T05:43:35Z ZombieChicken quit (Quit: WeeChat 2.8) 2020-09-28T05:44:52Z ZombieChicken joined #scheme 2020-09-28T05:44:56Z ZombieChicken: alrighty 2020-09-28T05:45:38Z ZombieChicken: first toy was likely a stick or something 2020-09-28T06:26:25Z badkins joined #scheme 2020-09-28T06:31:10Z badkins quit (Ping timeout: 272 seconds) 2020-09-28T06:31:30Z retropikzel joined #scheme 2020-09-28T06:39:37Z badkins joined #scheme 2020-09-28T06:44:37Z badkins quit (Ping timeout: 264 seconds) 2020-09-28T06:56:22Z greaser|q quit (Remote host closed the connection) 2020-09-28T06:59:30Z retropikzel left #scheme 2020-09-28T07:00:51Z mirrorbird joined #scheme 2020-09-28T07:28:57Z Guest77937 is now known as daviid 2020-09-28T07:43:13Z civodul joined #scheme 2020-09-28T07:54:19Z mdhughes: There was something weird going on with early Humans, because they had our brains, but shitty software that didn't develop new tools or art as fast as we do. 2020-09-28T07:55:24Z amirouche: they did not have reliable way to thumbs up a given piece of work ;) 2020-09-28T07:55:59Z mdhughes: I like Julian Jaynes' book, his evidence is real, but his explanation is almost certainly wrong. 2020-09-28T07:56:31Z mdhughes: They could "literally" dip their thumb in ochre and put thumbs up next to it. 2020-09-28T07:56:56Z aeth: mdhughes: writing helped a lot because now you don't need to be directly lectured to learn a concept 2020-09-28T07:57:13Z aeth: arabic numerals and algebra also helped a lot, but those came surprisingly late 2020-09-28T07:57:22Z aeth: notation matters. 2020-09-28T07:57:26Z mdhughes: Yeah, but this happened a few thousand years before writing, and then something really big happened a thousand years after. 2020-09-28T07:57:39Z amirouche: they were little common understanding back then, they were busy trying toxic mushrooms 2020-09-28T07:58:24Z mdhughes: Maybe. Worldwide drug trip teaches everyone to do more than bang rocks together. 2020-09-28T08:00:03Z hendursaga quit (Remote host closed the connection) 2020-09-28T08:00:23Z amirouche: https://functional.cafe/system/cache/media_attachments/files/104/926/594/041/455/574/original/f143ffd4f67d0d3b.jpg 2020-09-28T08:00:24Z rudybot: https://teensy.info/lPdszZ8mYZ 2020-09-28T08:01:16Z hendursaga joined #scheme 2020-09-28T08:08:47Z aeth quit (Ping timeout: 240 seconds) 2020-09-28T08:08:57Z hendursa1 joined #scheme 2020-09-28T08:10:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-28T08:10:50Z aeth joined #scheme 2020-09-28T08:12:29Z mirrorbird quit (Remote host closed the connection) 2020-09-28T08:12:46Z mirrorbird joined #scheme 2020-09-28T08:26:16Z wasamasa: amirouche: what's the policy on adding scheme documents to that github repo of yours 2020-09-28T08:26:42Z amirouche: wasamasa: which one? 2020-09-28T08:26:51Z wasamasa: the readscheme one 2020-09-28T08:26:53Z amirouche: wasamasa: the bibliography? 2020-09-28T08:27:14Z wasamasa: I've got an email today about yet another broken link on a wiki 2020-09-28T08:27:31Z amirouche: wasamasa: that one https://github.com/schemedoc/bibliography 2020-09-28T08:27:34Z amirouche: ? 2020-09-28T08:27:43Z wasamasa: and rather than relying on archive.org, it would be nicer to have them mirrored elsewhere 2020-09-28T08:27:53Z wasamasa: the bibliography might be a good place for that, no 2020-09-28T08:28:03Z amirouche: wasamasa: idk, so far we have only converted the historical bibliography to markdown, ask on github please :) 2020-09-28T08:28:11Z amirouche: yea 2020-09-28T08:30:06Z cpressey joined #scheme 2020-09-28T08:32:19Z gravicappa quit (Ping timeout: 246 seconds) 2020-09-28T08:40:24Z badkins joined #scheme 2020-09-28T08:44:45Z badkins quit (Ping timeout: 240 seconds) 2020-09-28T09:08:50Z aeth: no R7RS here? https://github.com/schemedoc/bibliography/blob/master/standards.md 2020-09-28T09:09:00Z aeth: I think the main location for the PDF these days is https://small.r7rs.org/attachment/r7rs.pdf 2020-09-28T09:09:06Z aeth: (it has moved once or twice) 2020-09-28T09:12:03Z madage quit (Ping timeout: 240 seconds) 2020-09-28T09:15:05Z amirouche quit (Ping timeout: 240 seconds) 2020-09-28T09:17:19Z madage joined #scheme 2020-09-28T09:36:00Z amirouche joined #scheme 2020-09-28T09:46:41Z even4void joined #scheme 2020-09-28T10:41:22Z badkins joined #scheme 2020-09-28T10:42:05Z TCZ joined #scheme 2020-09-28T10:44:44Z c7d9 quit (Remote host closed the connection) 2020-09-28T10:45:27Z badkins quit (Ping timeout: 240 seconds) 2020-09-28T10:50:02Z c7d9 joined #scheme 2020-09-28T10:52:50Z Fare joined #scheme 2020-09-28T10:53:43Z mirrorbird quit (Ping timeout: 246 seconds) 2020-09-28T11:04:57Z mirrorbird joined #scheme 2020-09-28T11:20:28Z daviid quit (Ping timeout: 256 seconds) 2020-09-28T11:34:32Z phillbush joined #scheme 2020-09-28T11:40:16Z lritter quit (Ping timeout: 246 seconds) 2020-09-28T11:43:06Z even4void quit (Remote host closed the connection) 2020-09-28T11:46:41Z c7d9 quit (Remote host closed the connection) 2020-09-28T11:51:56Z c7d9 joined #scheme 2020-09-28T11:56:53Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-28T11:59:33Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-28T12:15:28Z TCZ quit (Quit: Leaving) 2020-09-28T12:15:30Z gravicappa joined #scheme 2020-09-28T12:38:27Z hendursa1 quit (Quit: hendursa1) 2020-09-28T12:38:45Z hendursaga joined #scheme 2020-09-28T12:39:40Z jcowan: R7RS is at https://github.com/johnwcowan/r7rs-spec/blob/errata/rnrs/r7rs.pdf, or change that to r7rs-official.pdf if you want the version without errata applied. 2020-09-28T12:40:04Z jcowan: (the official version is still in the "errata" branch for stupidest reasons 2020-09-28T12:40:06Z jcowan: ) 2020-09-28T12:42:14Z badkins joined #scheme 2020-09-28T12:47:22Z badkins quit (Ping timeout: 272 seconds) 2020-09-28T12:58:35Z TCZ joined #scheme 2020-09-28T13:02:30Z ManDay joined #scheme 2020-09-28T13:08:15Z phillbush quit (Remote host closed the connection) 2020-09-28T13:14:47Z skapata joined #scheme 2020-09-28T13:22:28Z raingloom joined #scheme 2020-09-28T13:22:54Z cpressey joined #scheme 2020-09-28T13:29:36Z cpressey1 joined #scheme 2020-09-28T13:31:53Z gmaggior joined #scheme 2020-09-28T13:32:20Z cpressey quit (Ping timeout: 272 seconds) 2020-09-28T13:32:24Z cpressey1 is now known as cpressey 2020-09-28T13:37:51Z supercoven joined #scheme 2020-09-28T13:38:07Z civodul quit (Read error: Connection reset by peer) 2020-09-28T13:40:11Z civodul joined #scheme 2020-09-28T13:45:11Z supercoven quit (Max SendQ exceeded) 2020-09-28T13:45:25Z supercoven joined #scheme 2020-09-28T13:51:57Z edgar-rft quit (Quit: Leaving) 2020-09-28T14:15:18Z bitmapper joined #scheme 2020-09-28T14:15:45Z sp1ff quit (Read error: Connection reset by peer) 2020-09-28T14:16:44Z sp1ff joined #scheme 2020-09-28T14:23:53Z phwalkr joined #scheme 2020-09-28T14:27:40Z ManDay quit (Quit: WeeChat 2.9) 2020-09-28T14:30:15Z TCZ quit (Quit: Leaving) 2020-09-28T14:34:43Z m1dnight_ is now known as m1d 2020-09-28T14:34:52Z m1d is now known as m1dnight_ 2020-09-28T14:38:06Z TCZ joined #scheme 2020-09-28T14:38:15Z badkins joined #scheme 2020-09-28T14:50:15Z phwalkr quit (Ping timeout: 246 seconds) 2020-09-28T14:50:23Z phwalkr_ joined #scheme 2020-09-28T14:54:34Z phwalkr_ quit (Client Quit) 2020-09-28T15:01:44Z mmohammadi98129 joined #scheme 2020-09-28T15:21:04Z badkins quit (Remote host closed the connection) 2020-09-28T15:21:43Z badkins joined #scheme 2020-09-28T15:26:26Z badkins quit (Remote host closed the connection) 2020-09-28T15:26:36Z badkins joined #scheme 2020-09-28T15:32:38Z civodul quit (Read error: Connection reset by peer) 2020-09-28T15:33:08Z civodul joined #scheme 2020-09-28T15:52:19Z mmohammadi98129 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-28T15:53:35Z mmohammadi9812 joined #scheme 2020-09-28T15:56:03Z TCZ quit (Quit: Leaving) 2020-09-28T15:56:12Z civodul quit (Ping timeout: 244 seconds) 2020-09-28T15:57:50Z Tirifto joined #scheme 2020-09-28T16:04:57Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-28T16:05:55Z aeth quit (Ping timeout: 246 seconds) 2020-09-28T16:07:43Z Tirifto quit (Quit: Leaving.) 2020-09-28T16:07:45Z aeth joined #scheme 2020-09-28T16:23:03Z cantstanya quit (Ping timeout: 240 seconds) 2020-09-28T16:31:39Z civodul joined #scheme 2020-09-28T16:34:22Z badkins quit (Remote host closed the connection) 2020-09-28T16:34:56Z badkins joined #scheme 2020-09-28T16:40:26Z badkins quit (Ping timeout: 272 seconds) 2020-09-28T16:41:00Z badkins joined #scheme 2020-09-28T16:48:23Z ManDay joined #scheme 2020-09-28T16:53:43Z madage quit (Ping timeout: 240 seconds) 2020-09-28T16:54:15Z madage joined #scheme 2020-09-28T16:57:24Z mirrorbird quit (Ping timeout: 256 seconds) 2020-09-28T16:58:24Z phillbush joined #scheme 2020-09-28T17:00:48Z phillbush quit (Client Quit) 2020-09-28T17:13:08Z amirouche: wasamasa: no pull requests? 2020-09-28T17:13:17Z amirouche: y u no pr? >_< 2020-09-28T17:13:45Z wasamasa: because putting large binary files in git is ew 2020-09-28T17:14:08Z pinoaffe quit (Ping timeout: 260 seconds) 2020-09-28T17:14:59Z hugh_marera joined #scheme 2020-09-28T17:18:16Z badkins_ joined #scheme 2020-09-28T17:19:33Z hugh_marera quit (Client Quit) 2020-09-28T17:19:54Z hugh_marera joined #scheme 2020-09-28T17:20:38Z badkins quit (Ping timeout: 256 seconds) 2020-09-28T17:38:31Z ManDay quit (Quit: WeeChat 2.9) 2020-09-28T17:39:21Z theseb joined #scheme 2020-09-28T17:41:39Z badkins_ quit (Remote host closed the connection) 2020-09-28T17:42:11Z badkins joined #scheme 2020-09-28T17:44:36Z msirabella quit (Remote host closed the connection) 2020-09-28T17:44:52Z mjsir911 joined #scheme 2020-09-28T17:47:34Z badkins quit (Ping timeout: 272 seconds) 2020-09-28T17:54:55Z badkins joined #scheme 2020-09-28T17:59:38Z badkins quit (Ping timeout: 260 seconds) 2020-09-28T18:18:29Z badkins joined #scheme 2020-09-28T18:26:43Z theseb left #scheme 2020-09-28T18:28:52Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-28T18:29:44Z gravicappa joined #scheme 2020-09-28T18:38:18Z hugh_marera quit (Read error: Connection reset by peer) 2020-09-28T18:43:22Z amirouche quit (Ping timeout: 256 seconds) 2020-09-28T18:55:33Z cloveistaken: Howdy 2020-09-28T18:55:36Z cloveistaken: I'm new here 2020-09-28T18:55:40Z mmohammadi9812 quit (Ping timeout: 246 seconds) 2020-09-28T18:55:49Z cloveistaken: I'm trying to learn Scheme from the beginning 2020-09-28T18:56:24Z cloveistaken: Which one from /topic should I start with ? 2020-09-28T18:57:07Z wasamasa: it depends, have you picked an implementation yet? 2020-09-28T19:00:54Z sp1ff quit (Read error: Connection reset by peer) 2020-09-28T19:01:51Z sp1ff joined #scheme 2020-09-28T19:02:55Z cloveistaken: I didn't know Scheme has different implementations ? 2020-09-28T19:03:00Z cloveistaken: Enlightening me pls 2020-09-28T19:03:09Z wasamasa: same as any language with a standard 2020-09-28T19:03:15Z wasamasa: like C, JS, Java, ... 2020-09-28T19:03:55Z hugh_marera joined #scheme 2020-09-28T19:04:23Z wasamasa: scheme in a textbook might be abstract enough to be independent of a standard, but you won't be able to do anything real-world with it 2020-09-28T19:04:31Z cloveistaken: Yeah but usually you don't see people still using C99 now right ? 2020-09-28T19:04:35Z wasamasa: you do 2020-09-28T19:04:41Z wasamasa: you still do 2020-09-28T19:04:49Z cloveistaken: Well yeah you're right bad example 2020-09-28T19:05:01Z wasamasa: and unlike with the C standards there is not nearly as much compatibility :D 2020-09-28T19:05:46Z cloveistaken: Are they all under the same comittee or not ? 2020-09-28T19:05:58Z wasamasa: volunteers for that come and go 2020-09-28T19:06:09Z cloveistaken: Yeah I get that Scheme is not being used for a lot of things nowsday. I just want to learn it for fun 2020-09-28T19:06:18Z cloveistaken: So no Scheme Foundation ? 2020-09-28T19:06:21Z wasamasa: it's not exactly designed by committee, no 2020-09-28T19:06:40Z wasamasa: think of it as a band of academics and PLT enthusiasts with strong opinions 2020-09-28T19:06:44Z cloveistaken: Ah make sense the incompability 2020-09-28T19:06:51Z cloveistaken: What do people usually use ? 2020-09-28T19:06:58Z wasamasa: there is no such thing as "usually" 2020-09-28T19:07:43Z cloveistaken: So all over places ? Not even like Perl 5 vs Perl 6 ? 2020-09-28T19:08:00Z wasamasa: up to r5rs all decisions for the standard were done unanimously, r6rs became much bigger and more controversial than expected, r7rs is a compromise and split into a small (finished) and large (on-going) version 2020-09-28T19:08:25Z wasamasa: I use r5rs and r7rs-small for myself 2020-09-28T19:08:39Z cloveistaken: Perl 5 vs Perl 6 indeed 2020-09-28T19:08:48Z wasamasa: some people in here use r7rs only, others like r6rs, then there are some that pick their scheme going by the text book they're reading 2020-09-28T19:08:58Z cloveistaken: I did take a brief look at a book 2020-09-28T19:09:01Z wasamasa: or even build their own 2020-09-28T19:09:03Z cloveistaken: Little Schemer I think 2020-09-28T19:10:19Z wasamasa: some people like to believe r7rs-large is the future and contribute as many community standards to it as possible (including some outlandish things like a key-value store) 2020-09-28T19:10:38Z wasamasa: other people stick with their implementation and libraries exclusive to it and forfeit portable code in the process 2020-09-28T19:11:00Z cloveistaken: Future as in "being used a lot" or what ? 2020-09-28T19:11:10Z wasamasa: more like, surviving 2020-09-28T19:11:24Z wasamasa: none of this is "being used a lot" 2020-09-28T19:11:50Z cloveistaken: Why do Scheme need to keep evolving ? 2020-09-28T19:11:57Z wasamasa: everything changes 2020-09-28T19:12:02Z cloveistaken: If it's not being used a lot in production I mean 2020-09-28T19:13:11Z wasamasa: I suspect the portable scheme crowd really wants that dream of code reuse to happen :D 2020-09-28T19:14:06Z supercoven quit (Read error: Connection reset by peer) 2020-09-28T19:14:56Z cloveistaken: Just curious, do Scheme have some sort of a compiler ? 2020-09-28T19:15:07Z cloveistaken: You know, for portability 2020-09-28T19:16:08Z wasamasa: what do you mean? 2020-09-28T19:16:49Z cloveistaken: Like if you have a compiler that turn Scheme into native code, then you don't need to think much about reusable code right ? 2020-09-28T19:16:55Z wasamasa: wrong 2020-09-28T19:17:12Z marusich quit (Ping timeout: 260 seconds) 2020-09-28T19:17:16Z wasamasa: if the source code is written in the wrong standard and relies on some non-standard functionality, that won't help you 2020-09-28T19:17:41Z aeth: Most Lisps, including standard Scheme, exist independently of the interpreter/compiler concept except for old ones (or ones with intentionally archaic features) that can only really be implemented as interpreters. 2020-09-28T19:17:49Z aeth: However, I don't know of any Lisp with a stable ABI so compilers won't help you there. 2020-09-28T19:18:05Z aeth: Not having a stable ABI is a luxury over C... it allows you to have runtimes that are a lot more innovative. 2020-09-28T19:18:10Z wasamasa: I've heard there's this C thing with a stable ABI, I wish there were more languages like it 2020-09-28T19:18:16Z cloveistaken: Is that the problem that make Lisp and Scheme not very popular ? 2020-09-28T19:18:24Z wasamasa: even this C++ thing didn't get that part right 2020-09-28T19:18:40Z wasamasa: popularity isn't something you can pin down to a single factor 2020-09-28T19:18:53Z aeth: cloveistaken: No, it just means that you can't provide binaries without shipping the entire language runtime with the binaries. Otherwise, you need to provide the source. 2020-09-28T19:19:09Z aeth: (Generally speaking, of course. There are probably counterexamples.) 2020-09-28T19:19:12Z wasamasa: C++ is popular despite being a major pain in the ass 2020-09-28T19:19:27Z wasamasa: like having to compile all your components with the same toolchain 2020-09-28T19:19:45Z cloveistaken: I see 2020-09-28T19:19:46Z wasamasa: good luck mixing clang and gcc, I dare you 2020-09-28T19:20:19Z aeth: wasamasa: C++ is popular because it's still the most compatible language with C. It's probably not the best example for what makes languages popular because every other language had more of an uphill climb, including probably C itself. 2020-09-28T19:20:52Z aeth: In a sense, C++ was a (language) parasite that rode to popularity on the success of C... 2020-09-28T19:21:58Z aeth: There are some Schemes that try this compatibility with C approach (perhaps not to the same extreme), but it hasn't worked out for them if their goal was C++-level popularity. 2020-09-28T19:22:47Z phillbush joined #scheme 2020-09-28T19:22:55Z wasamasa: I wish I could find that one blog post again that explained some factors for language popularity 2020-09-28T19:23:29Z aeth: Even the authors of C++, Python, JavaScript, etc., probably are completely wrong about why their languages are popular. 2020-09-28T19:23:35Z Zipheir: Phase of the moon, cute mascot, Guido factor... 2020-09-28T19:23:44Z wasamasa: IIRC it was a list of being there at the right time, not looking to weird, having a killer app, the right amount of resources to get into it and a community 2020-09-28T19:23:57Z wasamasa: the first one being a funny way of spelling lucky 2020-09-28T19:24:05Z cloveistaken: If I have to guess Python is popular because it's easy for the math crowd to learn, JS is popular because Web monopoly ? 2020-09-28T19:24:20Z wasamasa: that's backwards reasoning 2020-09-28T19:24:40Z aeth: wasamasa: My guess is that it's entirely about "killer app". Almost every language in some extent is popular because it forces you to use it to access some platform. Sometimes exclusively (JS) sometimes as the only first class citizen (C in the early UNIX world). 2020-09-28T19:24:42Z wasamasa: *too weird 2020-09-28T19:24:47Z aeth: wasamasa: Java seems to be the main exception. 2020-09-28T19:24:55Z wasamasa: java had great marketing 2020-09-28T19:25:11Z wasamasa: see livescript getting renamed to javascript to ride on that 2020-09-28T19:25:22Z aeth: Yeah, but with Java, it's popular because your employer forces you to use it. Everything else is popular because your employers were forced to use it to access some platform. 2020-09-28T19:25:31Z Zipheir: cloveistaken: Python has very sketchy informal semantics, so it's not exactly a mathematician's language. Scheme actually does better there: much simpler semantics as well as syntax. 2020-09-28T19:25:47Z aeth: wasamasa: So I guess Java's the rare outlier that exists purely on marketing. 2020-09-28T19:26:01Z aeth: Although, of course, these days Java's still around because of Android. 2020-09-28T19:26:14Z aeth: Otherwise it'd probably be as "legacy" as COBOL 2020-09-28T19:26:17Z cloveistaken: Was Java popular before Oracle ? 2020-09-28T19:26:24Z Zipheir: Yes. 2020-09-28T19:26:26Z cloveistaken: Or only after Oracle bought Sun ? 2020-09-28T19:26:30Z aeth: Oracle has neglected Java, so, yes, Java was in a much better situation before Oracle. 2020-09-28T19:27:08Z aeth: Java has been so neglected that Microsoft's Java knockoff now is way ahead, at least from the perspective of an outsider to both languages. 2020-09-28T19:27:48Z Zipheir: C# = "MS Java knockoff", I'm guessing. 2020-09-28T19:28:01Z aeth: Most of the recent focus on the JVM has been around which JVM language to migrate to, e.g. Scala. 2020-09-28T19:28:23Z aeth: Zipheir: Yes, Microsoft's second Java knockoff after the first was legally too close to Java. 2020-09-28T19:28:45Z cloveistaken: lmao second Java knockoff 2020-09-28T19:29:10Z wasamasa: I never looked at J# back then 2020-09-28T19:29:17Z phillbush quit (Quit: Leaving) 2020-09-28T19:29:42Z phillbush joined #scheme 2020-09-28T19:30:09Z cloveistaken: I don't really see any languages that locked into Windows being super popular 2020-09-28T19:30:30Z aeth: I guess arguably, Python was like Java... popular without a "killer app". Of course, these days it's not true, and Python's thriving because of machine learning. Perhaps Python was initially popular because on Unix your alternatives were Perl or bash. 2020-09-28T19:30:42Z wasamasa: for windows programming there's several funny versions of C and C++ 2020-09-28T19:31:31Z aeth: cloveistaken: C# was super popular even before the current situation, where it seems to mostly run OK on Linux... just not in circles that are the same circles that Freenode cares about. 2020-09-28T19:32:13Z aeth: I'm under the impression that there are two kinds of enterprises: Java enterprises and Microsoft (C#) enterprises. 2020-09-28T19:32:20Z mirrorbird joined #scheme 2020-09-28T19:32:27Z aeth: Both probably use Windows, but the latter are very heavily dependent on whatever Microsoft releases. 2020-09-28T19:33:01Z jcowan: Linux in the enterprise is very very common now 2020-09-28T19:33:12Z aeth: jcowan: Yes, those are the Java enterprises. 2020-09-28T19:33:25Z aeth: Well, some of them. 2020-09-28T19:34:36Z aeth: [ Linux and Java ( Windows and Java ] Microsoft Windows and probably C# ) 2020-09-28T19:35:01Z aeth: Although it's not really Venn diagrammable because the ones that use Linux+Java probably use Windows for e.g. HR. 2020-09-28T19:35:35Z jcowan: As of last year, Linux is now more common than Windows Server on Azure, the Microsoft cloud. 2020-09-28T19:35:59Z aeth: I think almost every "enterprise" (any organization large enough, including universities) falls into one of these categories, even trendy ones like Google (Java). 2020-09-28T19:36:13Z cloveistaken: In the end marketing is the only thing that matters 2020-09-28T19:36:45Z Zipheir: aeth: I'll bet the first Enterprise had Java operating software. Hence the buggy transporters. 2020-09-28T19:37:52Z aeth: Zipheir: The first Enterprise would've really benefited from having a computer running Java... because it was in 1775. https://en.wikipedia.org/wiki/USS_Enterprise_(1775) 2020-09-28T19:38:04Z Zipheir: Hah, of course. 2020-09-28T19:38:25Z aeth: I mean, a digital computer. A human computer would have trouble stepping through all of the computations. 2020-09-28T19:38:49Z Zipheir: IIRC the 1775 incarnation was featured in the Star Trek: Enterprise opening sequence (which no one has ever watched, because of the awful rock song). 2020-09-28T19:39:41Z aeth: the opening sequence is the only thing I remember from Enterprise 2020-09-28T19:40:07Z Zipheir: cloveistaken: I doubt that any amount of marketing could make Fractran the language of the 2020s. 2020-09-28T19:40:27Z Zipheir: aeth: It is very good. On mute. 2020-09-28T19:48:00Z srandon111 joined #scheme 2020-09-28T19:52:45Z badkins quit (Remote host closed the connection) 2020-09-28T19:53:18Z badkins joined #scheme 2020-09-28T19:58:24Z badkins quit (Ping timeout: 256 seconds) 2020-09-28T19:59:41Z aeth: Anyway, all of this is sidetracking from the original subject: Java is basically a Scheme. 2020-09-28T20:00:24Z cloveistaken: What do you mean ? 2020-09-28T20:01:45Z aeth: It's a joke. "$language is basically a Scheme" is a meme at this point. 2020-09-28T20:02:14Z badkins joined #scheme 2020-09-28T20:04:13Z cloveistaken: Where is the origin ? 2020-09-28T20:05:43Z aeth: Just go to Wikipedia and look at the "Influenced by" for just about any programming language and "Scheme" is probably there. 2020-09-28T20:06:27Z aeth: Well, either Scheme or Lisp, and possibly both 2020-09-28T20:09:13Z cloveistaken: Wow you're actually not joking 2020-09-28T20:09:28Z cloveistaken: It's Lisp and Scheme all the way down 2020-09-28T20:09:47Z phwalkr joined #scheme 2020-09-28T20:11:40Z autumn[m]1: cptc 2020-09-28T20:11:43Z aeth: The first recent(ish) language I've gone to where this isn't true is C# 2020-09-28T20:13:23Z mirrorbird quit (Remote host closed the connection) 2020-09-28T20:13:46Z cloveistaken: Scheme distance for languages when ? 2020-09-28T20:13:48Z mirrorbird joined #scheme 2020-09-28T20:14:06Z autumn[m]1: ... ugh, sorry. Another keyboard malfunction. 2020-09-28T20:14:21Z autumn[m]1: As though I wasn't already uninteresting enough, haha. 2020-09-28T20:18:27Z amirouche joined #scheme 2020-09-28T20:28:59Z gwatt: aeth: you can edit the wikipedia page to make that true! 2020-09-28T20:32:07Z amirouche: cloveistaken: scheme is distance is zero or one :) 2020-09-28T20:32:35Z aeth: gwatt: If the standard is "has GC" or "has a lambda" then I think even C++'s page should be edited! 2020-09-28T20:34:10Z gwatt: probably also "has AST based macros" 2020-09-28T20:34:59Z badkins quit (Remote host closed the connection) 2020-09-28T20:35:32Z badkins joined #scheme 2020-09-28T20:38:59Z badkins quit (Remote host closed the connection) 2020-09-28T20:39:09Z badkins_ joined #scheme 2020-09-28T20:40:46Z badkins_ quit (Remote host closed the connection) 2020-09-28T20:41:30Z badkins joined #scheme 2020-09-28T20:45:46Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-28T20:46:13Z badkins quit (Ping timeout: 258 seconds) 2020-09-28T20:47:48Z cloveistaken: Not so fun fact 2020-09-28T20:47:55Z cloveistaken: Most of the intro text from https://www.schemers.org/Documents/#intro-texts 2020-09-28T20:48:16Z cloveistaken: Are before 2005, and most of links are dead as well 2020-09-28T20:48:25Z cloveistaken: I'm so sad 2020-09-28T20:48:48Z Fare quit (Ping timeout: 260 seconds) 2020-09-28T20:48:49Z ggole quit (Quit: Leaving) 2020-09-28T20:48:59Z amirouche: quiet a few old french schemer :) 2020-09-28T20:49:30Z badkins joined #scheme 2020-09-28T20:53:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-28T20:55:50Z Fare joined #scheme 2020-09-28T21:05:03Z _aindilis[d] quit (Excess Flood) 2020-09-28T21:05:06Z pinoaffe joined #scheme 2020-09-28T21:05:15Z aindilis[d] joined #scheme 2020-09-28T21:08:17Z mirrorbird quit (Remote host closed the connection) 2020-09-28T21:08:38Z mirrorbird joined #scheme 2020-09-28T21:09:00Z cloveistaken: I found a book that mention MzScheme, but its home page said that now it's Racket 2020-09-28T21:09:30Z cloveistaken: The one on htdp.org also uses Racket to teach Scheme 2020-09-28T21:09:39Z cloveistaken: Is Racket a modern Scheme or what ? 2020-09-28T21:10:04Z wasamasa: racket has evolved beyond scheme 2020-09-28T21:10:12Z wasamasa: it's a platform for building languages now 2020-09-28T21:10:25Z wasamasa: most of which look like scheme 2020-09-28T21:11:27Z wasamasa: so when you say racket, do you mean that platform or one of the languages built on it with the same name? 2020-09-28T21:13:57Z cloveistaken: Quote from mzscheme page "PLT Scheme is now Racket" 2020-09-28T21:14:22Z cloveistaken: The htdp.org one uses DrRacket but not the language Racket itself I believe 2020-09-28T21:18:24Z Zipheir: Racket is a whole package for experimenting with languages. R6RS Scheme is easily available in Racket, though. 2020-09-28T21:22:03Z hugh_marera quit (Quit: hugh_marera) 2020-09-28T21:22:51Z amirouche: I do not the see the point of a programming language for building programming languages. 2020-09-28T21:23:06Z Zipheir: Some of us are working on https://en.wikibooks.org/wiki/Scheme_Programming if you need an intro. 2020-09-28T21:23:13Z Zipheir: cloveistaken ^^ 2020-09-28T21:23:27Z Zipheir: It still needs a lot of work. 2020-09-28T21:23:48Z amirouche: cloveistaken: what are you looking for? A book to learn scheme? a crash course? code to read? 2020-09-28T21:28:52Z Zipheir: What's wrong with a language for writing languages? 2020-09-28T21:30:01Z Zipheir: And what would that look like, anyway? META II? 2020-09-28T21:30:51Z cloveistaken: Hmm I'm looking for a quick crash course to get familiar with the syntax and such 2020-09-28T21:31:13Z cloveistaken: I don't think I would need a lot of deep explaining 2020-09-28T21:31:28Z aeth: cloveistaken: the links are dead, but they're mostly just relocated, e.g. SICP is now at https://mitpress.mit.edu/sites/default/files/sicp/index.html complete with the full text 2020-09-28T21:31:38Z cloveistaken: Yeah I'm reading SICP now 2020-09-28T21:31:46Z aeth: (that was the first link, and it was a dead link) 2020-09-28T21:31:54Z cloveistaken: The assignment is so weird 2020-09-28T21:32:06Z cloveistaken: It's in .ps format, not .pdf or .html 2020-09-28T21:32:44Z cloveistaken: SICP looks like the opposite of a crash course but hey at least it's a good source 2020-09-28T21:32:56Z aeth: cloveistaken: Racket is mostly a superset of (R6RS) Scheme, with the distinction that in Racket, cons pairs are immutable and you have to specifically request mutable versions, while in Scheme the opposite is true (if there are immutable versions). 2020-09-28T21:33:21Z aeth: (Well, I doubt it's a superset of R6RS's version of Scheme, but it's a superset of Scheme with an R6RS flavor, with that one caveat) 2020-09-28T21:33:33Z aeth: Most Scheme should work in Racket unmodified unless they rely on set-car!/set-cdr!/etc. 2020-09-28T21:39:33Z cloveistaken: Yeah but using another language interpreter feels weird 2020-09-28T21:40:13Z cloveistaken: For now I'm going to try to follow the SICP course 2020-09-28T21:40:20Z cloveistaken: With mit-scheme 2020-09-28T21:43:45Z greaser|q joined #scheme 2020-09-28T21:51:18Z marusich joined #scheme 2020-09-28T22:01:21Z marusich quit (Quit: Leaving) 2020-09-28T22:02:42Z wasamasa: well, let's hope all that algebra isn't going to turn you off 2020-09-28T22:05:30Z autumn[m]1: I was scared off either by Newton's method (was it that?) or by the change-counting problem. 2020-09-28T22:06:04Z autumn[m]1: Which I couldn't figure out the solution to that they left as an exercise for the reader 2020-09-28T22:15:59Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-28T22:16:07Z phwalkr quit 2020-09-28T22:24:06Z Riastradh quit (Remote host closed the connection) 2020-09-28T22:28:48Z amirouche: cloveistaken: https://github.com/arew-scheme/arew-scheme/blob/main/manuscript/tutorial.md 2020-09-28T22:31:51Z Zipheir: Wasn't there a person in here a year or so back who was obsessed with the idea that they needed calculus to do SICP? 2020-09-28T22:33:54Z cloveistaken: The algebra thing is cool I'm a math major as well 2020-09-28T22:34:13Z cloveistaken: amirouche: Thanks for the cheatsheet, very helpful 2020-09-28T22:34:41Z Riastradh joined #scheme 2020-09-28T22:38:58Z Zipheir: cloveistaken: The Little Schemer is also great. It's a nice alternative if you get bogged down in SICP. 2020-09-28T22:39:32Z Zipheir: Both books use a subset of Scheme, so outside reading (e.g. TSPL and RnRS) is recommended. 2020-09-28T22:43:29Z phillbush quit (Remote host closed the connection) 2020-09-28T22:43:52Z phillbush joined #scheme 2020-09-28T22:44:09Z cloveistaken: Yeah I have briefly rushed through it 2020-09-28T22:44:27Z cloveistaken: Nice book but too much hand holding 2020-09-28T22:44:43Z cloveistaken: And it doesn't tell me how to install scheme 2020-09-28T22:44:52Z cloveistaken: Like cmon 2020-09-28T22:45:34Z Zipheir: It's rather more general. 2020-09-28T22:46:08Z Riastradh: I'm not really sure The Little Schemer is even intended to be read with a computer anywhere in the vicinity. 2020-09-28T22:46:31Z Riastradh: I think it's meant to be read with a peanut butter and jelly sandwich in your other hand, and maybe pen and paper. 2020-09-28T22:46:36Z Zipheir: Indeed. 2020-09-28T22:46:48Z Zipheir: And I think that is wonderful. 2020-09-28T22:47:07Z Zipheir: Ditto SICP. I think I learned more from SICP when I started doing the exercises longhand. 2020-09-28T22:47:45Z phillbush quit (Client Quit) 2020-09-28T22:50:48Z Zipheir: SICP isn't subtle in making the point that computation is as much about computers as geometry is about dividing up land parcels. 2020-09-28T22:52:18Z cloveistaken: Do you just read the book and doing the exercises/assignments, or you also watch the videos too ? 2020-09-28T22:52:46Z Zipheir: I like the lectures a lot. 2020-09-28T22:54:13Z Zipheir: Where else can you see someone write an entire Scheme interpreter on a single (long) blackboard? 2020-09-28T22:54:35Z Zipheir: While wearing a fez, no less. 2020-09-28T22:58:26Z mirrorbird quit (Ping timeout: 256 seconds) 2020-09-28T22:59:01Z cloveistaken: What a blast from the past "You can finger a particular name at some location, or just finger the location (e.g, finger @mit.edu) to get general information" 2020-09-28T22:59:19Z cloveistaken: lol they even recommend students to finger @whitehouse.gov 2020-09-28T23:01:27Z wasamasa: it's kind of hard to tell you how to install scheme considering there's like over a hundred implementations of it 2020-09-28T23:03:09Z wasamasa: and what if the book tells you how a dead implementation is installed, how is that going to help you? 2020-09-28T23:03:53Z wasamasa: I found that the case with Programming In Scheme (1987) 2020-09-28T23:04:24Z Zipheir: You ignore those parts and look up the current situation. 2020-09-28T23:04:26Z wasamasa: I'd need to find a working tape copy of that and an IBM PC emulator to recreate the GUI examples :D 2020-09-28T23:04:51Z Zipheir: Programming In Scheme is a fun book! 2020-09-28T23:04:55Z wasamasa: instead I used some common sense to port their graphics examples over to CHICKEN 2020-09-28T23:04:57Z wasamasa: it was fun 2020-09-28T23:05:02Z Riastradh: just uucp it from the vax11/70 at ken!its!symbolics.com onto your tape, what's the problem? 2020-09-28T23:06:59Z wasamasa: https://depp.brause.cc/programming-in-scheme/circle-squared/ 2020-09-28T23:10:27Z Fare quit (Ping timeout: 240 seconds) 2020-09-28T23:11:46Z Zipheir: "There is a host in New York City / That dials me up to get UUCP / And sometimes when I'm dialing, calling / Or batching up the email I say / Oh, so this is what they need / They need a way to talk to sendmail ..." --not Paul Simon 2020-09-28T23:14:38Z cloveistaken: I think I hit the first incompatability already 2020-09-28T23:14:43Z cloveistaken: What is the princ function ? 2020-09-28T23:14:53Z wasamasa: it's a thing in CL and elisp 2020-09-28T23:15:18Z wasamasa: IIRC The Little Schemer allows you to do the exercises in CL 2020-09-28T23:15:37Z cloveistaken: Little Schemer does note L and S for differences 2020-09-28T23:15:42Z wasamasa: if that's it, ignore those CL-specific notes then 2020-09-28T23:15:51Z cloveistaken: How do I print in Scheme then ? 2020-09-28T23:16:01Z wasamasa: display 2020-09-28T23:16:23Z wasamasa: display is to princ what write is to prin1 2020-09-28T23:16:30Z cloveistaken: gotcha 2020-09-28T23:17:57Z cloveistaken: Btw does Scheme do any sort of type checking ? 2020-09-28T23:18:28Z wasamasa: it's a strongly and dynamically typed language 2020-09-28T23:19:30Z badkins joined #scheme 2020-09-28T23:19:43Z Zipheir: "There is a host in New York City / That dials me up to get UUCP / And sometimes when I'm dialing, calling / Or batching up the email I say / Oh, so this is what they need / They need a way to talk to sendmail ..." --not Paul Simon 2020-09-28T23:19:44Z lritter joined #scheme 2020-09-28T23:19:56Z Zipheir: Oops, cut and paste disease. 2020-09-28T23:20:09Z Zipheir: cloveistaken: Which edition of Little Schemer? 2020-09-28T23:22:22Z cloveistaken: 4th 2020-09-28T23:22:35Z cloveistaken: But the princ thingy is not from there, it's from an assignment of SICP 2020-09-28T23:22:40Z cloveistaken: Btw 2020-09-28T23:22:50Z cloveistaken: read-from-keyboard is also not scheme right ? 2020-09-28T23:22:57Z Zipheir: No. 2020-09-28T23:23:14Z Zipheir: read-line is probably what you want. 2020-09-28T23:23:52Z Zipheir: I don't think SICP has any notion of ports. 2020-09-28T23:23:58Z nullheroes joined #scheme 2020-09-28T23:24:45Z cloveistaken: Where do you see all the primitives ? 2020-09-28T23:25:09Z cloveistaken: In r{5,6,7}rs ? 2020-09-28T23:25:11Z wasamasa: implementation-dependent 2020-09-28T23:25:23Z cloveistaken: Ah yes of course 2020-09-28T23:25:26Z wasamasa: read the standard for what the standard provides 2020-09-28T23:25:27Z Zipheir: cloveistaken: https://github.com/johnwcowan/r7rs-spec/blob/errata/spec/r7rs.pdf 2020-09-28T23:25:39Z daviid joined #scheme 2020-09-28T23:25:42Z wasamasa: everything else like printing a list of primitives is up to the implementation 2020-09-28T23:25:58Z wasamasa: introspection for example has been left out intentionally 2020-09-28T23:26:41Z Zipheir: R6RS is HTMLized (http://www.r6rs.org/final/html/r6rs-lib/r6rs-lib-Z-H-1.html), as is R5 (https://schemers.org/Documents/Standards/R5RS/HTML/) 2020-09-28T23:29:03Z cloveistaken: Honestly I don't feel like dig through the language spec to find out which one is implementation-dependent 2020-09-28T23:29:10Z cloveistaken: Luckily there aren't a lot of primitives 2020-09-28T23:29:16Z cloveistaken: Right ? 2020-09-28T23:30:00Z wasamasa: the standards are comprehensible and tiny 2020-09-28T23:30:16Z cloveistaken: Oh is that so ? 2020-09-28T23:30:27Z wasamasa: r5rs is 50 pages, r6rs is 200, r7rs-small is 70 pages, r7rs-large who knows 2020-09-28T23:31:25Z cloveistaken: That's shorter than $language style guide 2020-09-28T23:31:45Z wasamasa: if you want a style guide: https://mumble.net/~campbell/scheme/style.txt 2020-09-28T23:32:17Z wasamasa: I've got to admit though, size of the standard is far from everything 2020-09-28T23:32:37Z wasamasa: SML is similar, but it's like greek to me, with all that mathematical language 2020-09-28T23:36:00Z gmaggior quit (Quit: Leaving) 2020-09-28T23:41:42Z Zipheir: wasamasa: Read The Little MLer! 2020-09-28T23:42:21Z Zipheir: cloveistaken: I think it's also beneficial to get to know srfi.schemers.org 2020-09-28T23:42:32Z wasamasa: might be a good idea 2020-09-28T23:43:10Z wasamasa: so far I wrote only this: https://depp.brause.cc/mal-candidates/sml/ 2020-09-28T23:46:51Z Zipheir: I like SML a lot. It reminds me very much of Scheme with pattern-matching and static typing. And its strict-by-default semantics turned out to be a win over Haskell, in some ways. 2020-09-28T23:49:12Z Riastradh: wasamasa: c'mon, that's not fair, like half of the letters in it are latin 2020-09-28T23:49:57Z edgar-rft joined #scheme 2020-09-28T23:51:40Z srandon111 quit (Quit: leaving) 2020-09-28T23:52:33Z acarrico quit (Ping timeout: 260 seconds) 2020-09-29T00:03:50Z cloveistaken: For some reasons Scheme to me feels so much like OCaml with different ordering 2020-09-29T00:10:57Z wasamasa: ocaml is real-world SML 2020-09-29T00:13:49Z cloveistaken: Sugar included SML 2020-09-29T00:14:12Z tristero quit (Ping timeout: 265 seconds) 2020-09-29T00:20:37Z aeth: Is everything an expression in ML? If so, that's probably why they feel similar. 2020-09-29T00:21:12Z aeth: It really changes things when you're relying on internal implicit return values instead of either setting an intermediate variable or moving it into a separate function for its return value 2020-09-29T00:21:32Z aeth: COND is probably the best example. You can easily translate COND into other languages, but in the process you're probably doing one of those two workarounds to if/then/else not being an expression. 2020-09-29T00:23:06Z aeth: I'm looking over some code samples and it looks like OCaml has everything as an expression with implicit return values, but I don't really know the syntax 2020-09-29T00:24:56Z aeth: In an alternate universe, maybe I would have settled on OCaml as my primary language, but not being multicore even in 2020 is a pretty major flaw, at least as of February. https://news.ycombinator.com/item?id=22443428 2020-09-29T00:26:53Z acarrico joined #scheme 2020-09-29T00:30:00Z Fare joined #scheme 2020-09-29T00:31:22Z badkins quit (Remote host closed the connection) 2020-09-29T00:50:53Z phillbush joined #scheme 2020-09-29T00:51:15Z phillbush quit (Remote host closed the connection) 2020-09-29T00:57:07Z Fare quit (Ping timeout: 240 seconds) 2020-09-29T00:58:11Z lritter quit (Ping timeout: 240 seconds) 2020-09-29T00:59:10Z lritter joined #scheme 2020-09-29T01:15:33Z klovett quit (Remote host closed the connection) 2020-09-29T01:16:15Z klovett joined #scheme 2020-09-29T01:22:46Z Fare joined #scheme 2020-09-29T01:28:32Z mdhughes: I played with ocaml back in early '00s, but it's really ugly, and making end-user software on it was difficult. 2020-09-29T01:28:46Z mdhughes: But most Schemes don't have real CPU threads, either. 2020-09-29T01:30:32Z mdhughes: Daily I miss Objective-C threading, especially with GCD (block-based native scheduling) 2020-09-29T01:35:37Z jcowan: mdhughes: What do you mean by "real CPU threads"? Hyperthreads? 2020-09-29T01:41:43Z mdhughes: Real as in a hardware core, whether that's hyperthread or not. 2020-09-29T01:42:16Z mdhughes: I have a wimpy 4-core and if all 4 aren't red, I'm wasting 75% of what power it has. 2020-09-29T01:42:39Z mdhughes: Well, 50% given that Safari's probably eating 25% at all times. 2020-09-29T01:49:11Z Zipheir: Scheme could also use some higher-level concurrency abstraction than SRFI 18. 2020-09-29T02:00:42Z mdhughes: I'm usually OK with just having a main thread, and worker threads that use mutexes to post results safely. But there's a lot of other threaded agent models that are very poorly supported. 2020-09-29T02:06:15Z Zipheir: CHICKEN has a "gochan" (CSP-style concurrency) egg which seems to work well. Since it's CHICKEN, though, it's probably all call/cc under the hood. 2020-09-29T02:10:57Z aeth: jcowan: OS threads instead of green threads. 2020-09-29T02:11:23Z jcowan: Yes, it is 2020-09-29T02:12:16Z jcowan: I should probably make another ImplementationContrasts page saying who's got what kind of threads 2020-09-29T02:12:54Z mdhughes: Yes, please. 2020-09-29T02:13:09Z mdhughes: And at least a short list of their operations. 2020-09-29T02:13:14Z aeth: I guess continuations make OS threads harder 2020-09-29T02:13:28Z aeth: I guess they're thread-local? 2020-09-29T02:14:51Z jcowan: Even on green threads, invoking an escape procedure from a different thread may or may not work. 2020-09-29T02:16:36Z _Googleman250[d] quit (Quit: Offline for 24h0m0s) 2020-09-29T02:19:45Z drakonis quit (Quit: ZNC 1.8.1 - https://znc.in) 2020-09-29T02:20:12Z Zipheir: aeth: call/cc is *very* powerful. 2020-09-29T02:20:58Z Zipheir: aeth: There's an argument for restricting that power in the presence of threads or any other kind of parallel computing. 2020-09-29T02:30:37Z phillbush joined #scheme 2020-09-29T02:41:03Z tryte quit (Ping timeout: 240 seconds) 2020-09-29T02:44:32Z mirrorbird joined #scheme 2020-09-29T02:48:07Z Fare quit (Ping timeout: 260 seconds) 2020-09-29T02:52:22Z ex_nihilo joined #scheme 2020-09-29T02:52:29Z tryte joined #scheme 2020-09-29T02:58:00Z klovett quit (Remote host closed the connection) 2020-09-29T02:58:07Z phillbush quit (Remote host closed the connection) 2020-09-29T02:58:16Z klovett joined #scheme 2020-09-29T03:19:45Z whiteline_ joined #scheme 2020-09-29T03:21:01Z whiteline quit (Read error: Connection reset by peer) 2020-09-29T03:25:11Z drakonis joined #scheme 2020-09-29T03:31:01Z mirrorbird quit (Ping timeout: 258 seconds) 2020-09-29T03:47:56Z raingloom quit (Ping timeout: 260 seconds) 2020-09-29T03:57:59Z gravicappa joined #scheme 2020-09-29T04:16:47Z ex_nihilo quit (Read error: Connection reset by peer) 2020-09-29T04:17:00Z ex_nihilo joined #scheme 2020-09-29T04:25:57Z c7d9 quit (Remote host closed the connection) 2020-09-29T04:26:23Z c7d9 joined #scheme 2020-09-29T04:28:29Z Blukunfando joined #scheme 2020-09-29T04:36:16Z drakonis is now known as drakonis- 2020-09-29T04:57:01Z drakonis joined #scheme 2020-09-29T04:59:25Z ex_nihilo quit (Quit: Leaving) 2020-09-29T04:59:32Z mmohammadi9812 joined #scheme 2020-09-29T05:03:39Z skapata quit (Remote host closed the connection) 2020-09-29T05:14:30Z drakonis- quit (Quit: WeeChat 2.9) 2020-09-29T05:31:30Z xelxebar quit (Remote host closed the connection) 2020-09-29T05:31:49Z xelxebar joined #scheme 2020-09-29T05:56:20Z klovett quit (Remote host closed the connection) 2020-09-29T05:56:54Z klovett joined #scheme 2020-09-29T06:00:18Z supercoven joined #scheme 2020-09-29T06:06:53Z supercoven quit (Max SendQ exceeded) 2020-09-29T06:07:08Z supercoven joined #scheme 2020-09-29T06:13:38Z supercoven quit (Max SendQ exceeded) 2020-09-29T06:13:57Z supercoven joined #scheme 2020-09-29T07:02:38Z civodul joined #scheme 2020-09-29T07:16:00Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-29T07:21:12Z lritter quit (Ping timeout: 260 seconds) 2020-09-29T07:32:42Z xelxebar quit (Remote host closed the connection) 2020-09-29T07:33:09Z xelxebar joined #scheme 2020-09-29T07:44:03Z ZombieChicken quit (Quit: WeeChat 2.9) 2020-09-29T07:46:50Z jobol joined #scheme 2020-09-29T07:58:52Z m1dnight_ is now known as m1d 2020-09-29T08:03:01Z m1d is now known as m1dnight_ 2020-09-29T08:04:48Z pinoaffe quit (Quit: killed) 2020-09-29T08:09:08Z hendursa1 joined #scheme 2020-09-29T08:09:09Z m1dnight_ is now known as m1d 2020-09-29T08:09:16Z m1d is now known as m1dnight_ 2020-09-29T08:11:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-29T08:24:11Z daviid quit (Ping timeout: 240 seconds) 2020-09-29T08:28:08Z pinoaffe joined #scheme 2020-09-29T08:29:07Z mmohammadi9812 joined #scheme 2020-09-29T08:32:28Z badkins joined #scheme 2020-09-29T08:37:25Z badkins quit (Ping timeout: 264 seconds) 2020-09-29T08:37:49Z Fare joined #scheme 2020-09-29T08:49:14Z cpressey joined #scheme 2020-09-29T09:21:18Z supercoven_ joined #scheme 2020-09-29T09:21:19Z supercoven_ quit (Max SendQ exceeded) 2020-09-29T09:21:27Z notzmv` joined #scheme 2020-09-29T09:21:33Z supercoven_ joined #scheme 2020-09-29T09:24:24Z notzmv quit (Ping timeout: 260 seconds) 2020-09-29T09:24:52Z supercoven quit (Ping timeout: 260 seconds) 2020-09-29T09:27:58Z supercoven_ quit (Max SendQ exceeded) 2020-09-29T09:28:13Z supercoven joined #scheme 2020-09-29T09:28:14Z supercoven quit (Max SendQ exceeded) 2020-09-29T09:32:19Z mirrorbird joined #scheme 2020-09-29T09:36:27Z TCZ joined #scheme 2020-09-29T09:39:12Z phillbush joined #scheme 2020-09-29T10:14:01Z deesix quit (Ping timeout: 264 seconds) 2020-09-29T10:16:56Z mirrorbird quit (Remote host closed the connection) 2020-09-29T10:17:22Z mirrorbird joined #scheme 2020-09-29T10:25:50Z sz0 joined #scheme 2020-09-29T10:28:32Z phillbush quit (Remote host closed the connection) 2020-09-29T10:29:16Z notzmv` is now known as notzmv 2020-09-29T10:29:27Z notzmv quit (Changing host) 2020-09-29T10:29:27Z notzmv joined #scheme 2020-09-29T10:30:56Z phillbush joined #scheme 2020-09-29T10:31:05Z mirrorbird quit (Read error: Connection reset by peer) 2020-09-29T10:31:22Z mirrorbird joined #scheme 2020-09-29T10:31:32Z deesix joined #scheme 2020-09-29T10:33:27Z badkins joined #scheme 2020-09-29T10:38:11Z badkins quit (Ping timeout: 265 seconds) 2020-09-29T10:41:22Z skapata joined #scheme 2020-09-29T10:50:12Z wasamasa quit (Quit: ZNC - https://znc.in) 2020-09-29T10:51:24Z wasamasa joined #scheme 2020-09-29T10:54:33Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-29T10:56:06Z ggole joined #scheme 2020-09-29T11:00:46Z DKordic joined #scheme 2020-09-29T11:01:56Z Blukunfando quit (Ping timeout: 260 seconds) 2020-09-29T11:07:29Z mirrorbird quit (Ping timeout: 260 seconds) 2020-09-29T11:17:32Z phwalkr joined #scheme 2020-09-29T11:57:35Z ManDay joined #scheme 2020-09-29T12:03:59Z cpressey quit (Quit: Lunch) 2020-09-29T12:12:06Z ManDay quit (Ping timeout: 272 seconds) 2020-09-29T12:16:22Z TCZ quit (Quit: Leaving) 2020-09-29T12:22:22Z phillbush quit (Remote host closed the connection) 2020-09-29T12:23:23Z phillbush joined #scheme 2020-09-29T12:31:59Z ManDay joined #scheme 2020-09-29T12:34:08Z badkins joined #scheme 2020-09-29T12:38:11Z badkins quit (Ping timeout: 240 seconds) 2020-09-29T12:45:11Z sz0 quit (Quit: Connection closed for inactivity) 2020-09-29T12:54:00Z TCZ joined #scheme 2020-09-29T12:56:45Z raingloom joined #scheme 2020-09-29T12:58:00Z klovett quit (Remote host closed the connection) 2020-09-29T12:58:16Z klovett joined #scheme 2020-09-29T12:58:30Z hendursa1 quit (Quit: hendursa1) 2020-09-29T12:58:47Z hendursaga joined #scheme 2020-09-29T13:11:41Z CasAM[d]_ joined #scheme 2020-09-29T13:50:56Z badkins joined #scheme 2020-09-29T13:54:42Z phillbush quit (Remote host closed the connection) 2020-09-29T13:55:07Z phillbush joined #scheme 2020-09-29T13:56:03Z phillbush quit (Remote host closed the connection) 2020-09-29T14:00:23Z ManDay quit (Quit: WeeChat 2.9) 2020-09-29T14:13:28Z klovett quit (Remote host closed the connection) 2020-09-29T14:13:35Z cpressey joined #scheme 2020-09-29T14:14:20Z klovett joined #scheme 2020-09-29T14:43:50Z ggoes quit (Quit: WeeChat 2.3) 2020-09-29T14:44:03Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-29T14:44:10Z ggoes joined #scheme 2020-09-29T14:45:15Z erkin: Huh, there's no SRFI for serialisation. 2020-09-29T14:45:28Z erkin: SRFI-10 seems to be recommended but... well... 2020-09-29T14:47:55Z wasamasa: it's a can of worms 2020-09-29T14:48:36Z C-Keen: srfi-38 maybe too 2020-09-29T14:57:59Z klovett quit (Remote host closed the connection) 2020-09-29T14:58:18Z klovett joined #scheme 2020-09-29T15:00:25Z tristero joined #scheme 2020-09-29T15:05:31Z Riastradh: why's everything gotta be a srfi 2020-09-29T15:05:59Z gwatt: what's the alternative? 2020-09-29T15:06:56Z gwatt: Just publishing libraries that Do The Thing? 2020-09-29T15:07:04Z Riastradh: yes? 2020-09-29T15:07:24Z wasamasa: I guess snow and akku aren't nearly as omnipresent as srfis 2020-09-29T15:07:56Z Riastradh: Are SRFIs omnipresent? 2020-09-29T15:08:11Z wasamasa: yes, everyone knows about them being a thing 2020-09-29T15:08:12Z gwatt: Aren't the srfi's also used as RFCs during the RNRS process? 2020-09-29T15:08:26Z wasamasa: the same cannot be said about package managers 2020-09-29T15:08:47Z erkin: We kinda need SRFIs over libraries because libraries need some sort of cross-compatibility promises to rely on. 2020-09-29T15:09:00Z erkin: SLIB was a nice polyfill in this respect. 2020-09-29T15:09:33Z gwatt: theoretically if you're conforming to the standard, portability between schemes is not a problem 2020-09-29T15:09:53Z erkin: Even R6RS is way too meager on its own. 2020-09-29T15:10:10Z erkin: It's very tedious to write purely standard code. 2020-09-29T15:11:18Z Riastradh: Why is the approach to immediately reach for a SRFI to cover _everything_, instead of identifying the parts of a library you want that are actually meaningfully dependent on the Scheme implementation once you've actually built a useful library? 2020-09-29T15:12:14Z erkin: Hmm 2020-09-29T15:12:22Z erkin: That's a good question actually. 2020-09-29T15:12:26Z Riastradh: It's like saying, 2020-09-29T15:12:55Z erkin: I suppose it makes sense to avoid SRFIs unless it needs to reach into the guts of the implementation to work. 2020-09-29T15:12:59Z Riastradh: `Hmm, I wish I had a C++ library to read and write JSON in order to get the job done that I'm trying to do right now. Maybe I will write a petition to the ISO C++ standard committee to include it in the next C++ standard.' 2020-09-29T15:13:11Z wasamasa: I wonder, are there python PEPs that implement a KV store or web server 2020-09-29T15:13:21Z erkin: And everything else can be implementation-agnostic libraries as long as people do use said libraries. 2020-09-29T15:13:48Z wasamasa: the C++ standards committee did think about standardizing something cairo-like 2020-09-29T15:14:01Z wasamasa: so I'm not sure whether I'd riff on them :D 2020-09-29T15:15:26Z Riastradh: wasamasa: That's still pretty far from `everyone who hangs out in #c++ suggests solving every library problem by writing a letter to the ISO standard committee with a proposal for an addendum to the standard in the next few years'. 2020-09-29T15:15:37Z wasamasa: true 2020-09-29T15:16:22Z wasamasa: ah, yes, there is the WSGI PEP 2020-09-29T15:16:52Z erkin: Though I wouldn't equate SRFIs with standards. Most SRFIs are generally unsupported. 2020-09-29T15:17:04Z Riastradh: Pretty sure even in Python the community seldom thinks `let's write a PEP' rather than `let's write some code' day-to-day. 2020-09-29T15:17:20Z erkin: I consider SRFIs to be "if you're going to implement this functionality, do it this way so that it will be compatible with others' implementation" 2020-09-29T15:17:28Z wasamasa: and some PEPs about improvements to the standard library for web things 2020-09-29T15:18:26Z wasamasa: and there's a database API specification 2020-09-29T15:18:34Z Riastradh: It strikes me as a self-inflicted kneecapping, both because it's a terrible medium for sharing and maintaining code, and because it imposes a feeling of helplessness -- `welp, can't get this task done until we go through months of SRFI process'. 2020-09-29T15:18:49Z wasamasa: yeah, that I'd like to see standardized, not something hyper-specific like a KV store or a web server doing hello world 2020-09-29T15:19:28Z wasamasa: the KV store and the web server implementing these interfaces would follow later 2020-09-29T15:19:56Z erkin: Maybe you're right. But this particular suggestion was led by someone saying "huh, there's no standard way to serialise records in Scheme, I guess I find a way to do it myself" 2020-09-29T15:20:04Z Riastradh: I don't much like DB-API (for sqlite3 I use apsw in Python) but it makes sense to gather in a room the folks who wrote and use mysql, pgsql, sqlite3, &c., bindings, and find a common way for SQL-based applications to be wired up to any SQL database. 2020-09-29T15:20:18Z erkin: I gotta find* 2020-09-29T15:21:42Z Riastradh: Similar with WSGI -- there are probably a bunch of different HTTP front ends in Python, and a bunch of different applications that serve HTTP requests, and it would be nice if they were interchangeable parts if there's very little that functionally connects the request handlers to the front end other than arbitrary cosmetics of an API. 2020-09-29T15:21:57Z amirouche: OP was asking for a SRFI that does serialization, not whether to go write one.. but otherwise, I may agree not eveerything is good fit for srfi, still the process is interesting. 2020-09-29T15:22:37Z erkin: It seems that most Schemers that solve complex problems don't bother to decouple the solution into a library for others to use. 2020-09-29T15:22:46Z erkin: So libraries are rather scarce. 2020-09-29T15:23:02Z _anniepoo[d] joined #scheme 2020-09-29T15:23:05Z wasamasa: doesn't help there's a small amount of potential library users 2020-09-29T15:23:14Z erkin: True 2020-09-29T15:23:35Z erkin: I like that Akku and Snow are making it easier for people to find and use libraries. 2020-09-29T15:23:38Z wasamasa: I've seen one so far for my implementation of natural sorting :D 2020-09-29T15:24:00Z erkin: It's like we're on the opposite end of leftpadism. 2020-09-29T15:24:31Z erkin: What with the stereotype of a Scheme hacker carrying around their 300 line preamble file of helper procedures and macros to every project they create. 2020-09-29T15:24:42Z wasamasa: it's not that bad 2020-09-29T15:24:56Z wasamasa: but yes, I've seen a few codebases with very weird styles 2020-09-29T15:24:56Z erkin: I'm somewhat exaggerating for comedic effect. 2020-09-29T15:25:02Z erkin: But you get the point 2020-09-29T15:25:11Z wasamasa: like one that has a haskell prelude somewhere 2020-09-29T15:26:25Z erkin: Haha 2020-09-29T15:27:47Z erkin: I still appreciate that the Scheme ecosystem, tiny as it may be, is much saner than most others'. 2020-09-29T15:28:23Z erkin: I say this after wrestling with a Java pipeline clusterfuck today. 2020-09-29T15:30:45Z erkin: Also for a community of this size, the Scheme community is super responsive and kind. Newbie questions on StackOverflow and /r/scheme quickly get patient answers. 2020-09-29T15:30:54Z edgar-rft quit (Quit: Leaving) 2020-09-29T15:33:56Z bitmapper joined #scheme 2020-09-29T15:44:37Z raingloom quit (Ping timeout: 265 seconds) 2020-09-29T15:44:47Z badkins quit (Remote host closed the connection) 2020-09-29T15:45:25Z badkins joined #scheme 2020-09-29T15:50:25Z badkins quit (Ping timeout: 240 seconds) 2020-09-29T15:50:28Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-29T15:52:51Z mdhughes: wasamasa: Python uses pickle for serialization, shelve for KV store. Or any of thousands of databases in PIP. 2020-09-29T15:53:01Z Riastradh: (pickle is bad) 2020-09-29T15:53:32Z Helios_ joined #scheme 2020-09-29T15:53:57Z mdhughes: 300-line preamble? Mine's like 1400, plus 323 in graphics (and needs more), and 417 in test (and needs more). 2020-09-29T15:54:36Z mdhughes: (I need to split my main lib into 3 or 4, I don't need all of that in every program) 2020-09-29T15:55:21Z mdhughes: Basically any time I make a useful general-purpose function, it gets a test and goes into the lib. 2020-09-29T15:58:00Z badkins joined #scheme 2020-09-29T16:00:50Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-29T16:04:16Z hugh_marera joined #scheme 2020-09-29T16:14:52Z jcowan: Python has a dominant implementation, in the sense that other implementations are considered buggy or semi-broken if they aren't compatible with it. So if you write a library to run on CPython, it will with high probability run everywhere else, and most people don't even care about non-CPython implementations. 2020-09-29T16:15:01Z jcowan: This is not the case with Scheme. 2020-09-29T16:15:18Z Riastradh: This is also not the case with C or C++. 2020-09-29T16:15:54Z jcowan: Quite so, and you'll notice that they operate on a supplicatory model: "Please, please, put this feature into the Standard so I can use it!" 2020-09-29T16:16:04Z Riastradh: Anyway, I'm not saying that SRFI- or PEP- or ISO-like processes are always wrong; I'm saying that it strikes me as wrong to always reach for them. 2020-09-29T16:16:35Z jcowan: There are a number of libraries I'd like to write that wouldn't be SRFIesque at all, but arse longa, vita brevis. 2020-09-29T16:16:40Z TCZ quit (Quit: Leaving) 2020-09-29T16:16:58Z Riastradh: the posterior is long and the life is short? 2020-09-29T16:17:13Z jcowan: Just so. 2020-09-29T16:18:06Z jcowan: R7RS-large matters a lot to me, and I don't know how much time I have left. (Nor does anyone, of course, but my odds don't look so good.) 2020-09-29T16:20:12Z jobol quit (Quit: Leaving) 2020-09-29T16:21:33Z phillbush joined #scheme 2020-09-29T16:21:57Z mdhughes: A lot of PIP works just fine on non-CPython impls, as long as it doesn't have native libraries. 2020-09-29T16:23:13Z daviid joined #scheme 2020-09-29T16:23:33Z daviid is now known as Guest14680 2020-09-29T16:36:26Z hugh_marera quit (Quit: hugh_marera) 2020-09-29T16:36:27Z phillbush quit (Remote host closed the connection) 2020-09-29T16:38:01Z phillbush joined #scheme 2020-09-29T16:45:45Z phillbush quit (Quit: Leaving) 2020-09-29T16:46:29Z TCZ joined #scheme 2020-09-29T16:51:38Z badkins quit (Remote host closed the connection) 2020-09-29T16:52:09Z badkins joined #scheme 2020-09-29T16:54:48Z TCZ quit (Quit: Leaving) 2020-09-29T16:56:53Z badkins quit (Ping timeout: 260 seconds) 2020-09-29T17:01:53Z mirrorbird joined #scheme 2020-09-29T17:14:31Z tristero quit (Quit: WeeChat 2.9) 2020-09-29T17:18:12Z civodul joined #scheme 2020-09-29T17:19:33Z badkins joined #scheme 2020-09-29T17:29:55Z evhan quit (Ping timeout: 272 seconds) 2020-09-29T17:30:11Z elflng quit (Read error: No route to host) 2020-09-29T17:30:40Z elflng joined #scheme 2020-09-29T17:36:59Z rann quit (Ping timeout: 240 seconds) 2020-09-29T17:37:07Z nikita` quit (Ping timeout: 240 seconds) 2020-09-29T17:37:08Z d_run quit (Ping timeout: 260 seconds) 2020-09-29T17:37:12Z Balooga quit (Ping timeout: 260 seconds) 2020-09-29T17:37:27Z dnm quit (Ping timeout: 240 seconds) 2020-09-29T17:37:27Z groovy quit (Ping timeout: 240 seconds) 2020-09-29T17:37:38Z conjunctive quit (Ping timeout: 272 seconds) 2020-09-29T17:37:47Z samth quit (Ping timeout: 240 seconds) 2020-09-29T17:37:47Z cemerick quit (Ping timeout: 240 seconds) 2020-09-29T17:38:05Z bchar quit (Ping timeout: 240 seconds) 2020-09-29T17:38:08Z physpi quit (Ping timeout: 260 seconds) 2020-09-29T17:38:18Z timwis quit (Ping timeout: 260 seconds) 2020-09-29T17:38:18Z travv0 quit (Ping timeout: 260 seconds) 2020-09-29T17:38:18Z rickbutton quit (Ping timeout: 260 seconds) 2020-09-29T17:38:34Z kilimanjaro quit (Ping timeout: 258 seconds) 2020-09-29T17:38:34Z stephe quit (Ping timeout: 258 seconds) 2020-09-29T17:38:47Z mats quit (Ping timeout: 272 seconds) 2020-09-29T17:38:47Z jcowan quit (Ping timeout: 240 seconds) 2020-09-29T17:38:54Z Boarders quit (Ping timeout: 260 seconds) 2020-09-29T17:38:57Z ullbeking quit (Ping timeout: 258 seconds) 2020-09-29T17:39:02Z Blukunfando joined #scheme 2020-09-29T17:39:25Z bitmapper quit (Ping timeout: 272 seconds) 2020-09-29T17:41:19Z mats joined #scheme 2020-09-29T17:47:58Z gf3_ quit (Ping timeout: 256 seconds) 2020-09-29T17:48:27Z timwis joined #scheme 2020-09-29T17:48:33Z travv0 joined #scheme 2020-09-29T17:48:56Z cemerick joined #scheme 2020-09-29T17:49:17Z stephe joined #scheme 2020-09-29T17:49:22Z conjunctive joined #scheme 2020-09-29T17:49:25Z Boarders joined #scheme 2020-09-29T17:49:34Z nikita` joined #scheme 2020-09-29T17:49:40Z gf3_ joined #scheme 2020-09-29T17:49:56Z bchar joined #scheme 2020-09-29T17:50:09Z jcowan joined #scheme 2020-09-29T17:50:11Z rann joined #scheme 2020-09-29T17:54:38Z d_run joined #scheme 2020-09-29T17:57:45Z rickbutton joined #scheme 2020-09-29T17:58:39Z bitmapper joined #scheme 2020-09-29T17:58:42Z ullbeking joined #scheme 2020-09-29T17:58:51Z edgar-rft joined #scheme 2020-09-29T18:00:03Z physpi joined #scheme 2020-09-29T18:00:48Z groovy joined #scheme 2020-09-29T18:01:36Z ggole quit (Quit: Leaving) 2020-09-29T18:05:22Z samth joined #scheme 2020-09-29T18:11:17Z dnm joined #scheme 2020-09-29T18:11:21Z Balooga joined #scheme 2020-09-29T18:14:45Z Guest14680 is now known as daviid 2020-09-29T18:26:00Z kilimanjaro joined #scheme 2020-09-29T18:32:19Z raingloom joined #scheme 2020-09-29T18:43:20Z even4void joined #scheme 2020-09-29T18:45:46Z gmaggior joined #scheme 2020-09-29T18:47:22Z whiteline_ quit (Remote host closed the connection) 2020-09-29T18:47:47Z whiteline_ joined #scheme 2020-09-29T18:48:45Z rgherdt joined #scheme 2020-09-29T18:55:25Z gravicappa quit (Ping timeout: 264 seconds) 2020-09-29T18:57:10Z gravicappa joined #scheme 2020-09-29T18:58:28Z Riastradh: OK, complex log and log1p are better, and expm1 is _mostly_ better, but it's still bad on r + i*t where r ~ 0 and e^{-r} ~ cos t. 2020-09-29T18:58:44Z Riastradh: rudybot: eval (log 1.5e308+1.5e308i) 2020-09-29T18:58:45Z rudybot: Riastradh: ; Value: +inf.0+0.7853981633974483i 2020-09-29T18:58:54Z edgar-rft quit (Quit: Leaving) 2020-09-29T18:59:14Z Riastradh: Wrong, should be 709.9482473405542+.7853981633974483i. 2020-09-29T18:59:58Z phwalkr quit 2020-09-29T19:00:52Z gwatt: rudybot: eval (log 1.5e308) 2020-09-29T19:00:55Z rudybot: gwatt: your sandbox is ready 2020-09-29T19:00:58Z rudybot: gwatt: ; Value: 709.6016737502742 2020-09-29T19:01:32Z Riastradh: The problem is that rudybot is computing the real part as (log (magnitude 1.5e308+1.5e308i)), and (magnitude 1.5e308+1.5e308i) does overflow. 2020-09-29T19:02:36Z gwatt: should that always overflow? Or is that unique to rudybot's scheme? 2020-09-29T19:03:08Z Riastradh: Always in binary64. 2020-09-29T19:04:07Z civodul quit (Remote host closed the connection) 2020-09-29T19:04:23Z gwatt: should log be doing (+ (log real-part) (log imag-part)) ? 2020-09-29T19:04:34Z Riastradh: ...no, this is the complex logarithm. 2020-09-29T19:04:36Z civodul joined #scheme 2020-09-29T19:04:44Z Riastradh: log does not distribute over addition. 2020-09-29T19:04:46Z mmohammadi9812 joined #scheme 2020-09-29T19:05:05Z Riastradh: Mathematically, (log z) = (make-rectangular (log (magnitude z)) (angle z)). 2020-09-29T19:06:04Z Riastradh: (magnitude 1.5e308+1.5e308i) is mathematically sqrt(2)*1.5e308 > 2e308, but 2e308 itself overflows -- the largest positive floating-point number is 1.7976931348623157e308. 2020-09-29T19:06:09Z TCZ joined #scheme 2020-09-29T19:06:47Z rann_ joined #scheme 2020-09-29T19:06:56Z d_run quit (Ping timeout: 272 seconds) 2020-09-29T19:07:44Z rann quit (Ping timeout: 260 seconds) 2020-09-29T19:07:45Z rann_ is now known as rann 2020-09-29T19:07:58Z Riastradh: Fortunately, you can rewrite log|z| = log(sqrt(x^2 + y^2)) = (1/2) log(x^2 (1 + y^2/x^2)) = log x + (1/2) log(1 + y^2/x^2). Since the order of x and y doesn't matter to the real function, you can conditionally swap them so that |y| <= |x|, in which case 0 <= y^2/x^2 <= 1 so it doesn't overflow. 2020-09-29T19:08:28Z Riastradh: rudybot: eval (+ (log 1.5e308) (* 0.5 (log 2))) 2020-09-29T19:08:28Z rudybot: Riastradh: ; Value: 709.9482473405542 2020-09-29T19:08:49Z d_run joined #scheme 2020-09-29T19:08:56Z Riastradh: That's the real part of the correct answer. 2020-09-29T19:09:18Z Riastradh: Of course you don't want to compute log(1 + y^2/x^2) by doing (log (+ 1 (square (/ y x)))); you need to use log1p instead. 2020-09-29T19:10:05Z gwatt: what is log1p? 2020-09-29T19:10:43Z gwatt: log for small values, says google 2020-09-29T19:11:17Z Riastradh: (log1p x) computes log(1 + x) 2020-09-29T19:12:27Z Riastradh: It does not do this by computing log(fl(1 + x)), where fl(u) denotes the floating-point number nearest to u, because if fl(1 + x) is near zero, then even if it has only a tiny relative error, log can amplify that relative error into an arbitrarily large relative error. 2020-09-29T19:12:34Z Riastradh: er 2020-09-29T19:12:45Z Riastradh: if fl(1 + x) is near one, not near zero, i.e. if x is near zero 2020-09-29T19:13:17Z Riastradh: For example: 2020-09-29T19:13:22Z Riastradh: (log1p 1.234e-15) 2020-09-29T19:13:22Z Riastradh: ;Value: 1.2339999999999991e-15 2020-09-29T19:13:22Z Riastradh: (log (+ 1 1.234e-15)) 2020-09-29T19:13:22Z Riastradh: ;Value: 1.332267629550187e-15 2020-09-29T19:13:42Z Riastradh: The first line is correct; in the second line, almost all the digits are wrong. 2020-09-29T19:13:59Z Riastradh: The reason is that although in 2020-09-29T19:13:59Z Riastradh: (+ 1 1.234e-15) 2020-09-29T19:14:00Z Riastradh: ;Value: 1.0000000000000013 2020-09-29T19:15:20Z Riastradh: the relative error is quite small (less than one part in 10^15), meaning that when we asked for 1 + 1.234e-15, we actually got (1 + 1.234e-15)*(1 + d) where |d| < 1e-15, 2020-09-29T19:16:19Z even4void quit (Ping timeout: 272 seconds) 2020-09-29T19:18:59Z Riastradh: when we then compute log((1 + 1.234e-15)*(1 + d)), we get log(1 + 1.234e-15) + log(1 + d), and, well, log(1 + 1.234e-15) and log(1 + d) are pretty close, so we get about 1.07* what we were expecting. 2020-09-29T19:19:41Z Riastradh: So by asking log to compute something _just very slightly different_ from what we wanted to compute, it gives an answer in which _almost all the digits are wrong_. 2020-09-29T19:20:24Z Riastradh: log1p avoids this problem, because the mathematical function log(1 + x) does not inherently amplify errors when x is near zero -- it's just that _log_ amplifies errors when its input is near 1. 2020-09-29T19:34:16Z whiteline_ quit (Read error: Connection reset by peer) 2020-09-29T19:34:34Z whiteline joined #scheme 2020-09-29T19:43:50Z gwatt: How does log1p handle that? 2020-09-29T19:46:08Z Riastradh: Well, there's nothing magic about log or log1p -- they both compute mathematical functions, usually with polynomial (or sometimes rational) approximations under the hood; they're just two different functions. 2020-09-29T19:48:20Z Riastradh: Internally, log is usually actually defined in terms of a limited log1p approximation -- for x = 2^e * (1 + f), where e is the floating-point exponent and f is the fractional part of the floating-point significand, you can break log(x) down into log(2^e * (1 + f)) = 2*log(2) + log(1 + f). 2020-09-29T19:52:12Z Fare quit (Ping timeout: 260 seconds) 2020-09-29T19:53:21Z Riastradh: Here f lies in [0,1), so you only need to compute log(1 + f) for a narrow range of f. You can then apply further tricks like writing log(1 + f) in terms of the Taylor expansion of an even function, like s |---> (log(1 + s) - log(1 - s))/s, with s = f/(2 + f); using an even function means you only need to compute powers of s^2, which rapidly converge to zero since 0 <= s <= f <= 1. 2020-09-29T19:55:48Z Riastradh: (log1p x) internally breaks x down using a different argument reduction, and then probably uses the same Taylor expansion as log used internally. 2020-09-29T19:57:34Z Riastradh: That is, log1p finds approximations to e and f such that 1 + x = 2^e * (1 + f), and then computes e*log(2) + log(1 + f) as before. 2020-09-29T20:01:05Z Riastradh: All that said, it's important to distinguish: 2020-09-29T20:01:58Z Riastradh: - the error in an _implementation_ of a function (e.g., in IEEE 754 binary64, all basic functions (+, -, *, /, sqrt) are guaranteed to be implemented with relative error at most 2^-53) 2020-09-29T20:02:02Z Riastradh: from 2020-09-29T20:03:00Z Riastradh: - the condition number of the _function_, which roughly tells you the factor by which it will amplify errors you made in choosing its input, and is independent of how the function is implemented. 2020-09-29T20:04:14Z Riastradh: The condition number is a property of the function (specifically: for a function f, the condition number of f at a point x is x*f'(x)/f(x)), and has nothing to do with floating-point; it tells you what parts of the function's domain are dangerous whether you're using floating-point, fixed-point, scaled-logarithm-index, unum/posit, or any other kind of arithmetic. 2020-09-29T20:07:45Z Riastradh: For log, the condition number is infinite at 1: if you want to compute log at x near 1, but you actually ask to compute it at x*(1 + e), there is no bound to how many digits of the answer might be wrong in log(x*(1 + e)) as an approximation to log(x). 2020-09-29T20:08:03Z Riastradh: (even if e is tiny like 1e-16) 2020-09-29T20:10:36Z theseb joined #scheme 2020-09-29T20:12:38Z jcowan: mdhughes: Sure, I know that. The point is that CPython can change in whatever what the Central Committee (successor to the BDFL) wants it to, and all other Pythons must keep up. No Scheme can chnage the direction of all Schemes in such a fashion. 2020-09-29T20:16:24Z evhan joined #scheme 2020-09-29T20:16:38Z aeth: That's mostly related to one Python being much more popular than other Pythons. That could happen with Schemes, it just so happens that three are roughly as popular as each other (Racket, Chicken, Guile). 2020-09-29T20:17:38Z aeth: (And, arguably, Racket is a case of the most popular Scheme implementation deciding to go in its own direction, anyway, via renaming itself from being a "Scheme".) 2020-09-29T20:18:29Z notzmv` joined #scheme 2020-09-29T20:19:37Z Riastradh: jcowan: FYI, I refactored complex log, log1p, and expm1, and fixed some edge cases around overflow and exact cases: https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/runtime/arith.scm?id=a14f7c83750b184da3b1ad6662b7e2b2d658d478#n1529 and https://git.savannah.gnu.org/cgit/mit-scheme.git/tree/src/runtime/arith.scm?id=a14f7c83750b184da3b1ad6662b7e2b2d658d478#n2117 are the relevant piles of code. 2020-09-29T20:19:38Z rudybot: https://teensy.info/ZfeO8q2Qlu 2020-09-29T20:19:38Z rudybot: https://teensy.info/J11uezUg9F 2020-09-29T20:20:15Z jcowan: Thanks. 2020-09-29T20:20:22Z aeth: Hmm, actually, I guess one Scheme couldn't really dominate the "Scheme" library ecosystem because there isn't really an expectation of portable Scheme libraries in the first place. 2020-09-29T20:21:12Z jcowan: Correct. In any case, my account was not historical but conceptual. 2020-09-29T20:21:23Z notzmv quit (Ping timeout: 240 seconds) 2020-09-29T20:21:34Z Riastradh: (still not satisfied with expm1, but I haven't had any brilliant ideas beyond computing log and cos in extended-precision arithmetic, except for the brilliant idea that Dekker's algorithm for doubling floating-point precision should have been called double-Decker arithmetic, and why am I the first person to think of that) 2020-09-29T20:21:43Z jcowan: For a long time the C implementation on BSD was *the* C compiler. 2020-09-29T20:21:46Z Riastradh: double-Dekker, I mean 2020-09-29T20:22:07Z jcowan defenestrates Riastradh forthwith 2020-09-29T20:22:52Z mirrorbird quit (Quit: Leaving) 2020-09-29T20:27:15Z Fare joined #scheme 2020-09-29T20:30:08Z theseb quit (Quit: Leaving) 2020-09-29T20:39:23Z jcowan: Does anyone know where the Scheme exception system got its "return from the handler returns to the caller" design from? In Scheme, if a procedure declines to handle the condition, it has to reraise. Yet in CL it is the exact opposite: a handler declines by returning and uses a nonlocal goto (possibly packaged as a restart) to get back to the caller. 2020-09-29T20:39:56Z jcowan: AFAICT, the Scheme rules first appear in a scheme-mail by Richard Kelsey in 1996. 2020-09-29T20:41:27Z Riastradh: Scheme48, probably. 2020-09-29T20:41:31Z Riastradh: MIT Scheme has the CL semantics you described. 2020-09-29T20:41:55Z Riastradh: In Scheme48, exceptions are used to implement fancy arithmetic in `software' via `hardware traps' (VM exceptions). 2020-09-29T20:44:20Z Riastradh: I suspect this was novel to Scheme48. I don't think T had much of an exception system. 2020-09-29T20:44:36Z jcowan: Thanks. I figured you'd be able to put your finger on it. 2020-09-29T20:44:54Z yesudeep joined #scheme 2020-09-29T20:46:27Z Fare quit (Ping timeout: 240 seconds) 2020-09-29T20:50:03Z badkins quit (Remote host closed the connection) 2020-09-29T20:50:36Z badkins joined #scheme 2020-09-29T20:55:29Z mmohammadi9812 quit (Quit: I quit (╯°□°)╯︵ ┻━┻) 2020-09-29T20:55:31Z badkins quit (Ping timeout: 260 seconds) 2020-09-29T20:57:27Z Riastradh: That said, MIT Scheme has a default handler, which for non-error conditions just returns. 2020-09-29T20:57:34Z Riastradh: This is how, e.g., (warn "foo") works in MIT Scheme. 2020-09-29T20:57:34Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-29T20:59:03Z even4void joined #scheme 2020-09-29T20:59:33Z even4void quit (Remote host closed the connection) 2020-09-29T21:01:27Z rgherdt quit (Ping timeout: 272 seconds) 2020-09-29T21:03:46Z jcowan: Sure. The `warn` I wrote for R6RS does a raise, and if the raise returns, prints something on stderr and returns to its caller. 2020-09-29T21:04:00Z jcowan: Which means I do not have to mess with the default handler to make it work. 2020-09-29T21:04:09Z jcowan: Of course, that 2020-09-29T21:04:41Z jcowan: 's just a single possibility out of many, and in particular is not as useful as explicit restarts. 2020-09-29T21:05:53Z jcowan: Alas, the "Incomplete S48 Manual" exhibits its incompleteness in its discussion of exception handlers. But if you want to write an exception handler, it's critical that you know which way it goes. (If you get it wrong, a shim is possible but paimful.) 2020-09-29T21:07:03Z Riastradh: I think my old s48 reference manual might have gone into the details that Jonathan and Richard didn't really want to expose. 2020-09-29T21:08:10Z jcowan nods 2020-09-29T21:08:24Z jcowan: That's not exactly a detail, though, unless exception handling is a detail. 2020-09-29T21:08:52Z mhmd[d]_ quit (Quit: Offline for 24h0m0s) 2020-09-29T21:15:11Z yesudeep quit (Remote host closed the connection) 2020-09-29T21:15:26Z yesudeep joined #scheme 2020-09-29T21:21:03Z Riastradh: I think jar has never really been happy with most languages' concepts of `exception handling', so yes, I'm pretty sure they did consider it an implementation detail not fit for public consumption. 2020-09-29T21:24:52Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-29T21:25:17Z Fare joined #scheme 2020-09-29T21:28:25Z TCZ quit (Quit: Leaving) 2020-09-29T21:31:33Z __anb joined #scheme 2020-09-29T21:44:08Z gmaggior quit (Quit: Leaving) 2020-09-29T21:49:10Z TCZ joined #scheme 2020-09-29T21:50:25Z yesudeep quit (Remote host closed the connection) 2020-09-29T21:50:41Z yesudeep joined #scheme 2020-09-29T21:52:07Z conjunctive quit (Ping timeout: 240 seconds) 2020-09-29T21:52:08Z mats quit (Ping timeout: 244 seconds) 2020-09-29T21:52:27Z gf3_ quit (Ping timeout: 240 seconds) 2020-09-29T21:52:27Z travv0 quit (Ping timeout: 240 seconds) 2020-09-29T21:52:39Z groovy quit (Ping timeout: 244 seconds) 2020-09-29T21:52:45Z stephe quit (Ping timeout: 272 seconds) 2020-09-29T21:52:47Z timwis quit (Ping timeout: 240 seconds) 2020-09-29T21:53:10Z ullbeking quit (Ping timeout: 244 seconds) 2020-09-29T21:53:13Z bchar quit (Ping timeout: 260 seconds) 2020-09-29T21:53:13Z nikita` quit (Ping timeout: 260 seconds) 2020-09-29T21:53:13Z Duns_Scrotus quit (Ping timeout: 260 seconds) 2020-09-29T21:53:18Z Balooga quit (Ping timeout: 246 seconds) 2020-09-29T21:53:23Z duncanm quit (Ping timeout: 272 seconds) 2020-09-29T21:53:32Z rann quit (Ping timeout: 260 seconds) 2020-09-29T21:53:32Z bitmapper quit (Ping timeout: 260 seconds) 2020-09-29T21:53:41Z physpi quit (Ping timeout: 244 seconds) 2020-09-29T21:53:47Z Boarders quit (Ping timeout: 240 seconds) 2020-09-29T21:53:48Z jcowan quit (Ping timeout: 260 seconds) 2020-09-29T21:53:48Z kwmiebach quit (Ping timeout: 260 seconds) 2020-09-29T21:54:07Z dnm quit (Ping timeout: 260 seconds) 2020-09-29T21:54:07Z rickbutton quit (Ping timeout: 260 seconds) 2020-09-29T21:54:39Z cemerick quit (Ping timeout: 272 seconds) 2020-09-29T21:54:42Z d_run quit (Ping timeout: 260 seconds) 2020-09-29T21:55:25Z dnm joined #scheme 2020-09-29T21:55:39Z duncanm joined #scheme 2020-09-29T21:55:39Z rudybot: la la la 2020-09-29T21:55:40Z rann joined #scheme 2020-09-29T21:55:45Z conjunctive joined #scheme 2020-09-29T21:55:47Z gf3_ joined #scheme 2020-09-29T21:55:49Z kwmiebach joined #scheme 2020-09-29T21:55:53Z mats joined #scheme 2020-09-29T21:55:56Z travv0 joined #scheme 2020-09-29T21:56:02Z jcowan joined #scheme 2020-09-29T21:56:03Z stephe joined #scheme 2020-09-29T21:56:05Z physpi joined #scheme 2020-09-29T21:56:05Z bitmapper joined #scheme 2020-09-29T21:56:09Z rickbutton joined #scheme 2020-09-29T21:56:11Z timwis joined #scheme 2020-09-29T21:56:17Z ullbeking joined #scheme 2020-09-29T21:56:18Z Duns_Scrotus joined #scheme 2020-09-29T21:56:28Z Balooga joined #scheme 2020-09-29T21:56:43Z Boarders joined #scheme 2020-09-29T21:56:52Z nikita` joined #scheme 2020-09-29T21:57:07Z groovy joined #scheme 2020-09-29T21:57:13Z cemerick joined #scheme 2020-09-29T21:57:31Z d_run joined #scheme 2020-09-29T22:01:06Z bchar joined #scheme 2020-09-29T22:12:53Z jcowan: Okay, fair enough. 2020-09-29T22:16:49Z notzmv` is now known as notzmv 2020-09-29T22:16:57Z notzmv quit (Changing host) 2020-09-29T22:16:57Z notzmv joined #scheme 2020-09-29T22:32:26Z badkins joined #scheme 2020-09-29T22:32:45Z autumn[m]1: why does rudybot sing la la la anyways? 2020-09-29T22:34:27Z Fare quit (Ping timeout: 240 seconds) 2020-09-29T22:49:42Z Fare joined #scheme 2020-09-29T22:55:43Z jcowan: The idea is that he puts his fingers in his ears and sings "La la la" to show that he's not listening. At least i think so. 2020-09-29T23:01:10Z yesudeep quit (Ping timeout: 256 seconds) 2020-09-29T23:02:21Z aeth: we could just ask 2020-09-29T23:02:22Z aeth: rudybot: why do you sing la la la? 2020-09-29T23:02:22Z rudybot: aeth: why does rudybot sing la la la anyways? 2020-09-29T23:05:38Z aeth: I should have expected that. 2020-09-29T23:10:32Z Fare quit (Ping timeout: 260 seconds) 2020-09-29T23:10:39Z Zipheir: rudybot: FREEBIRD! 2020-09-29T23:10:39Z rudybot: Zipheir: eh? Try "rudybot: help". 2020-09-29T23:11:02Z aeth: rudybot: help! 2020-09-29T23:11:03Z rudybot: aeth: I rely extensively on multiple terminals from vim+tmux.. so I think this will help the transition.. 2020-09-29T23:11:17Z autumn[m]1: rudybot: help 2020-09-29T23:11:17Z rudybot: autumn[m]1: bug ..., fom ..., hopeless ..., falsy ..., bad-eval ..., later "tell" ..., help [], version, quote, source, url, g ..., sentientp, seen ..., where's ..., uptime, t8 ..., snotback, botsnack, init [], eval ..., give ..., apropos ..., desc , doc , swat 2020-09-29T23:11:52Z autumn[m]1: rudybot: sentientp 2020-09-29T23:11:53Z rudybot: autumn[m]1: Any day now 2020-09-29T23:11:58Z autumn[m]1: D: 2020-09-29T23:12:20Z aeth: I hope when the strong AI takes over, it has a sense of humor and starts speaking as rudybot for a while. 2020-09-29T23:16:25Z Fare joined #scheme 2020-09-29T23:21:37Z Fare quit (Ping timeout: 260 seconds) 2020-09-29T23:25:53Z badkins quit (Remote host closed the connection) 2020-09-29T23:26:24Z badkins joined #scheme 2020-09-29T23:31:22Z badkins quit (Ping timeout: 256 seconds) 2020-09-29T23:42:02Z dmc00 joined #scheme 2020-09-29T23:43:24Z phillbush joined #scheme 2020-09-29T23:54:08Z badkins joined #scheme 2020-09-29T23:54:08Z skapata quit (Read error: Connection reset by peer) 2020-09-29T23:56:40Z _Googleman250[d] joined #scheme 2020-09-30T00:00:00Z Fare joined #scheme 2020-09-30T00:12:54Z mirrorbird joined #scheme 2020-09-30T00:20:32Z Fare quit (Ping timeout: 260 seconds) 2020-09-30T00:57:36Z TCZ quit (Quit: Leaving) 2020-09-30T01:00:55Z evdubs quit (Remote host closed the connection) 2020-09-30T01:01:18Z evdubs joined #scheme 2020-09-30T01:09:46Z lritter joined #scheme 2020-09-30T01:19:50Z badkins quit (Remote host closed the connection) 2020-09-30T01:20:22Z badkins joined #scheme 2020-09-30T01:22:59Z even4void[m] quit (Ping timeout: 244 seconds) 2020-09-30T01:23:22Z autumn[m]1 quit (Ping timeout: 244 seconds) 2020-09-30T01:23:24Z Ericson2314 quit (Ping timeout: 244 seconds) 2020-09-30T01:23:56Z siraben quit (Ping timeout: 240 seconds) 2020-09-30T01:24:35Z badkins quit (Ping timeout: 240 seconds) 2020-09-30T01:26:22Z autumn[m]1 joined #scheme 2020-09-30T01:28:05Z siraben joined #scheme 2020-09-30T01:34:42Z even4void[m] joined #scheme 2020-09-30T01:34:56Z Ericson2314 joined #scheme 2020-09-30T01:43:04Z lritter quit (Quit: Leaving) 2020-09-30T02:01:52Z lritter joined #scheme 2020-09-30T02:14:57Z bchar quit (*.net *.split) 2020-09-30T02:14:57Z cemerick quit (*.net *.split) 2020-09-30T02:14:57Z groovy quit (*.net *.split) 2020-09-30T02:14:57Z Boarders quit (*.net *.split) 2020-09-30T02:14:58Z mats quit (*.net *.split) 2020-09-30T02:14:58Z rann quit (*.net *.split) 2020-09-30T02:14:58Z greaser|q quit (*.net *.split) 2020-09-30T02:14:58Z mjsir911 quit (*.net *.split) 2020-09-30T02:14:59Z dbmikus quit (*.net *.split) 2020-09-30T02:14:59Z _stoopkid2[d] quit (*.net *.split) 2020-09-30T02:14:59Z irc0[d]_ quit (*.net *.split) 2020-09-30T02:14:59Z _jacobpdq[d] quit (*.net *.split) 2020-09-30T02:14:59Z iltutmus quit (*.net *.split) 2020-09-30T02:14:59Z Zenton quit (*.net *.split) 2020-09-30T02:14:59Z rotty quit (*.net *.split) 2020-09-30T02:14:59Z balkamos quit (*.net *.split) 2020-09-30T02:15:07Z greaser|q joined #scheme 2020-09-30T02:15:09Z __jacobpdq[d] joined #scheme 2020-09-30T02:15:09Z __stoopkid2[d] joined #scheme 2020-09-30T02:15:09Z irc0[d]__ joined #scheme 2020-09-30T02:15:12Z rann joined #scheme 2020-09-30T02:15:14Z iltutmus joined #scheme 2020-09-30T02:15:15Z mjsir911 joined #scheme 2020-09-30T02:15:18Z cemerick joined #scheme 2020-09-30T02:15:20Z bchar joined #scheme 2020-09-30T02:15:21Z rotty joined #scheme 2020-09-30T02:15:25Z groovy joined #scheme 2020-09-30T02:15:31Z Boarders joined #scheme 2020-09-30T02:15:38Z mats joined #scheme 2020-09-30T02:15:49Z dbmikus joined #scheme 2020-09-30T02:17:20Z mirrorbird quit (Quit: Leaving) 2020-09-30T02:17:37Z dmc00 quit (Ping timeout: 246 seconds) 2020-09-30T02:20:12Z Zenton joined #scheme 2020-09-30T02:20:12Z balkamos joined #scheme 2020-09-30T02:20:50Z phillbush quit (Remote host closed the connection) 2020-09-30T02:48:54Z erkin quit (Ping timeout: 256 seconds) 2020-09-30T02:49:16Z erkin joined #scheme 2020-09-30T03:03:05Z ineiros quit (Ping timeout: 240 seconds) 2020-09-30T03:10:23Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-30T03:12:19Z hendursaga joined #scheme 2020-09-30T03:21:44Z badkins joined #scheme 2020-09-30T03:26:07Z badkins quit (Ping timeout: 260 seconds) 2020-09-30T03:28:23Z ineiros joined #scheme 2020-09-30T03:52:42Z ex_nihilo joined #scheme 2020-09-30T03:55:43Z edgar-rft joined #scheme 2020-09-30T04:01:15Z Helios_ quit (Quit: leaving) 2020-09-30T04:15:57Z gravicappa joined #scheme 2020-09-30T04:54:40Z mmohammadi9812 joined #scheme 2020-09-30T04:58:40Z ex_nihilo quit (Quit: Leaving) 2020-09-30T05:00:52Z Fare joined #scheme 2020-09-30T05:07:22Z raingloom quit (Ping timeout: 246 seconds) 2020-09-30T05:09:57Z klovett quit (Remote host closed the connection) 2020-09-30T05:10:36Z klovett joined #scheme 2020-09-30T05:18:00Z hive-mind quit (Ping timeout: 256 seconds) 2020-09-30T05:22:50Z badkins joined #scheme 2020-09-30T05:27:49Z badkins quit (Ping timeout: 264 seconds) 2020-09-30T05:43:12Z ZombieChicken joined #scheme 2020-09-30T06:26:30Z gravicappa quit (Ping timeout: 272 seconds) 2020-09-30T06:32:33Z ArneBab_ quit (Quit: No Ping reply in 180 seconds.) 2020-09-30T06:33:56Z ArneBab joined #scheme 2020-09-30T07:01:07Z mhmd[d]_ joined #scheme 2020-09-30T07:06:55Z Fare quit (Ping timeout: 240 seconds) 2020-09-30T07:10:21Z bitmapper quit (Quit: Connection closed for inactivity) 2020-09-30T07:17:15Z ccl-logbot joined #scheme 2020-09-30T07:17:15Z 2020-09-30T07:17:15Z names: ccl-logbot Fare stux|wor- mhmd[d]_ ArneBab ZombieChicken klovett edgar-rft ineiros hendursaga erkin cdadr Blkt eMBee ozzloy DeeEff_ danielkoning gabot xi davl lpsmith DerGuteMoritz dpk fiddlerwoaroof jackhill lad Ekho m1dnight_ bandali foof snits eagleflo cmatei add^_ cibs kbtr yumh Kooda belmarca vultyre dozzie mroh hyiltiz bsima uplime stux16777216Away ecraven SirDayBat weinholt aos wigust tdammers grobe0ba rubic kjak r3x5 fgudin_ nisstyre bashbjorn 2020-09-30T07:17:15Z names: yosafbridge r0kc4t C-Keen jxy pounce turbofail dTal ravndal Oxyd jboy emacsomancer clog aoh rudybot titanbiscuit friscosam casaca mario-goulart z0d poga dan64 lavaflow LeoNerd fizzie pflanze gwatt ft xlei lockywolf choas nevermind joast englishm Gnuxie[m] mbakke dieggsy Yardanico drot brown121407 nckx Khisanth tessier pukkamustard[m] fadein terrorjack sm2n epony sdu averell _apg elly cpape` h11 copec cky webshinra midre ramin malaclyps ByronJohnson amoe 2020-09-30T07:17:15Z names: ec gnomon alicemaz_ kori ohama mdhughes mrkotfw Zipheir lloda mr_ab mr_ab9 `micro DGASAU terpri sudden heredoc_ cloveistaken X-Scale bitwiz dmiles _dmiles[d] [d]_ nyx[d]_ _jbalint[d] koo5[d]_ _jeosol[d] _Dletta[d] aeth madage sp1ff amirouche aindilis[d] Riastradh nullheroes acarrico tryte c7d9 drakonis xelxebar pinoaffe deesix wasamasa DKordic CasAM[d]_ ggoes _anniepoo[d] daviid elflng Blukunfando samth kilimanjaro whiteline evhan notzmv __anb dnm duncanm 2020-09-30T07:17:15Z names: conjunctive gf3_ kwmiebach travv0 jcowan stephe physpi rickbutton timwis ullbeking Duns_Scrotus Balooga nikita` d_run _Googleman250[d] evdubs autumn[m]1 siraben even4void[m] Ericson2314 lritter greaser|q __jacobpdq[d] __stoopkid2[d] irc0[d]__ rann iltutmus mjsir911 cemerick bchar rotty groovy Boarders mats dbmikus Zenton balkamos 2020-09-30T07:22:16Z ccl-logbot joined #scheme 2020-09-30T07:22:16Z 2020-09-30T07:22:16Z names: ccl-logbot Fare stux|wor- mhmd[d]_ ArneBab ZombieChicken klovett edgar-rft ineiros hendursaga erkin balkamos Zenton dbmikus mats Boarders groovy rotty bchar cemerick mjsir911 iltutmus rann irc0[d]__ __stoopkid2[d] __jacobpdq[d] greaser|q lritter Ericson2314 even4void[m] siraben autumn[m]1 evdubs _Googleman250[d] d_run nikita` Balooga Duns_Scrotus ullbeking timwis rickbutton physpi stephe jcowan travv0 kwmiebach gf3_ conjunctive duncanm dnm __anb notzmv 2020-09-30T07:22:16Z names: evhan whiteline kilimanjaro samth Blukunfando elflng daviid _anniepoo[d] ggoes CasAM[d]_ DKordic wasamasa deesix pinoaffe xelxebar drakonis c7d9 tryte acarrico nullheroes Riastradh aindilis[d] amirouche sp1ff madage aeth _Dletta[d] _jeosol[d] koo5[d]_ _jbalint[d] nyx[d]_ [d]_ _dmiles[d] dmiles bitwiz X-Scale cloveistaken heredoc_ sudden terpri DGASAU `micro mr_ab9 mr_ab lloda Zipheir mrkotfw mdhughes ohama kori alicemaz_ gnomon ec amoe ByronJohnson 2020-09-30T07:22:16Z names: malaclyps ramin midre webshinra cky copec h11 cpape` elly _apg averell sdu epony sm2n terrorjack fadein pukkamustard[m] tessier Khisanth nckx brown121407 drot Yardanico dieggsy mbakke Gnuxie[m] englishm joast nevermind choas lockywolf xlei ft gwatt pflanze fizzie LeoNerd lavaflow dan64 poga z0d mario-goulart casaca friscosam titanbiscuit rudybot aoh clog emacsomancer jboy Oxyd ravndal dTal turbofail pounce jxy C-Keen r0kc4t yosafbridge bashbjorn nisstyre 2020-09-30T07:22:16Z names: fgudin_ r3x5 kjak rubic grobe0ba tdammers wigust aos weinholt SirDayBat ecraven stux16777216Away uplime bsima hyiltiz mroh dozzie vultyre belmarca Kooda yumh kbtr cibs add^_ cmatei eagleflo snits foof bandali m1dnight_ Ekho lad jackhill fiddlerwoaroof dpk DerGuteMoritz lpsmith davl xi gabot danielkoning cdadr Blkt eMBee ozzloy DeeEff_ 2020-09-30T07:23:41Z badkins joined #scheme 2020-09-30T07:27:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-30T07:30:12Z hive-mind joined #scheme 2020-09-30T07:44:45Z Fare quit (Ping timeout: 244 seconds) 2020-09-30T07:53:06Z c7d9 quit (Remote host closed the connection) 2020-09-30T07:57:28Z daviid quit (Ping timeout: 246 seconds) 2020-09-30T07:58:22Z c7d9 joined #scheme 2020-09-30T08:06:11Z gravicappa joined #scheme 2020-09-30T08:07:47Z notzmv` joined #scheme 2020-09-30T08:08:52Z hendursa1 joined #scheme 2020-09-30T08:10:43Z hendursaga quit (Ping timeout: 240 seconds) 2020-09-30T08:11:02Z notzmv quit (Ping timeout: 258 seconds) 2020-09-30T08:26:14Z cpressey joined #scheme 2020-09-30T08:27:34Z rgherdt joined #scheme 2020-09-30T08:35:50Z civodul joined #scheme 2020-09-30T09:24:26Z badkins joined #scheme 2020-09-30T09:25:44Z cpressey quit (Ping timeout: 272 seconds) 2020-09-30T09:28:00Z cpressey joined #scheme 2020-09-30T09:29:24Z badkins quit (Ping timeout: 265 seconds) 2020-09-30T09:40:01Z ccl-logbot joined #scheme 2020-09-30T09:40:01Z 2020-09-30T09:40:01Z names: ccl-logbot cpressey civodul rgherdt hendursa1 notzmv` gravicappa c7d9 hive-mind stux|wor- mhmd[d]_ ArneBab ZombieChicken klovett edgar-rft ineiros erkin cdadr Blkt eMBee ozzloy DeeEff_ danielkoning gabot xi davl lpsmith DerGuteMoritz dpk fiddlerwoaroof jackhill lad Ekho m1dnight_ bandali foof snits eagleflo cmatei add^_ cibs kbtr yumh Kooda belmarca vultyre dozzie mroh hyiltiz bsima uplime stux16777216Away ecraven SirDayBat weinholt aos wigust tdammers 2020-09-30T09:40:01Z names: grobe0ba rubic kjak r3x5 fgudin_ nisstyre bashbjorn yosafbridge r0kc4t C-Keen jxy pounce turbofail dTal ravndal Oxyd jboy emacsomancer clog aoh rudybot titanbiscuit friscosam casaca mario-goulart z0d poga dan64 lavaflow LeoNerd fizzie pflanze gwatt ft xlei lockywolf choas nevermind joast englishm Gnuxie[m] mbakke dieggsy Yardanico drot brown121407 nckx Khisanth tessier pukkamustard[m] fadein terrorjack sm2n epony sdu averell _apg elly cpape` h11 copec cky 2020-09-30T09:40:01Z names: webshinra midre ramin malaclyps ByronJohnson amoe ec gnomon alicemaz_ kori ohama mdhughes mrkotfw Zipheir lloda mr_ab mr_ab9 `micro DGASAU terpri sudden heredoc_ cloveistaken X-Scale bitwiz dmiles _dmiles[d] [d]_ nyx[d]_ _jbalint[d] koo5[d]_ _jeosol[d] _Dletta[d] aeth madage sp1ff amirouche aindilis[d] Riastradh nullheroes acarrico tryte drakonis xelxebar pinoaffe deesix wasamasa DKordic CasAM[d]_ ggoes _anniepoo[d] elflng Blukunfando samth kilimanjaro 2020-09-30T09:40:01Z names: whiteline evhan __anb dnm duncanm conjunctive gf3_ kwmiebach travv0 jcowan stephe physpi rickbutton timwis ullbeking Duns_Scrotus Balooga nikita` d_run _Googleman250[d] evdubs autumn[m]1 siraben even4void[m] Ericson2314 lritter greaser|q __jacobpdq[d] __stoopkid2[d] irc0[d]__ rann iltutmus mjsir911 cemerick bchar rotty groovy Boarders mats dbmikus Zenton balkamos 2020-09-30T10:12:18Z phillbush joined #scheme 2020-09-30T10:42:22Z skapata joined #scheme 2020-09-30T11:08:56Z webshinra quit (Remote host closed the connection) 2020-09-30T11:10:06Z TCZ joined #scheme 2020-09-30T11:12:20Z Fare joined #scheme 2020-09-30T11:12:36Z webshinra joined #scheme 2020-09-30T11:14:36Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-30T11:18:12Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-30T11:25:31Z badkins joined #scheme 2020-09-30T11:26:19Z lritter quit (Ping timeout: 244 seconds) 2020-09-30T11:29:59Z badkins quit (Ping timeout: 258 seconds) 2020-09-30T11:34:51Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-30T11:56:54Z gravicappa joined #scheme 2020-09-30T12:01:57Z ggole joined #scheme 2020-09-30T12:19:52Z cpressey joined #scheme 2020-09-30T12:28:16Z phillbush quit (Quit: Leaving) 2020-09-30T12:41:52Z elflng quit (Ping timeout: 256 seconds) 2020-09-30T12:58:01Z klovett quit (Remote host closed the connection) 2020-09-30T12:58:17Z klovett joined #scheme 2020-09-30T13:02:10Z elflng joined #scheme 2020-09-30T13:07:39Z badkins joined #scheme 2020-09-30T13:44:25Z raingloom joined #scheme 2020-09-30T14:10:28Z badkins quit (Remote host closed the connection) 2020-09-30T14:21:30Z notzmv`` joined #scheme 2020-09-30T14:24:43Z notzmv` quit (Ping timeout: 265 seconds) 2020-09-30T14:26:44Z civodul joined #scheme 2020-09-30T14:31:37Z badkins joined #scheme 2020-09-30T14:41:31Z mirrorbird joined #scheme 2020-09-30T15:00:03Z TCZ quit (Quit: Leaving) 2020-09-30T15:03:25Z badkins quit (Remote host closed the connection) 2020-09-30T15:03:59Z badkins joined #scheme 2020-09-30T15:08:06Z TCZ joined #scheme 2020-09-30T15:09:00Z badkins quit (Ping timeout: 272 seconds) 2020-09-30T15:09:46Z badkins joined #scheme 2020-09-30T15:12:11Z Fare quit (Ping timeout: 244 seconds) 2020-09-30T15:16:42Z rgherdt quit (Read error: Connection reset by peer) 2020-09-30T15:17:01Z rgherdt joined #scheme 2020-09-30T15:24:11Z daviid joined #scheme 2020-09-30T15:25:43Z edgar-rft quit (Quit: Leaving) 2020-09-30T15:26:48Z daviid quit (Read error: Connection reset by peer) 2020-09-30T15:27:02Z _anniepoo[d] quit (Quit: Offline for 24h0m0s) 2020-09-30T15:27:16Z Fare joined #scheme 2020-09-30T15:33:07Z Fare quit (Ping timeout: 240 seconds) 2020-09-30T15:41:09Z raingloom quit (Ping timeout: 260 seconds) 2020-09-30T15:45:19Z notzmv`` is now known as notzmv 2020-09-30T15:45:27Z notzmv quit (Changing host) 2020-09-30T15:45:27Z notzmv joined #scheme 2020-09-30T15:45:31Z Fare joined #scheme 2020-09-30T15:49:36Z badkins quit (Remote host closed the connection) 2020-09-30T15:50:12Z badkins joined #scheme 2020-09-30T15:51:53Z badkins quit (Remote host closed the connection) 2020-09-30T15:52:02Z badkins joined #scheme 2020-09-30T16:03:12Z Fare quit (Ping timeout: 260 seconds) 2020-09-30T16:04:26Z Fare joined #scheme 2020-09-30T16:06:37Z cpressey quit (Quit: WeeChat 1.9.1) 2020-09-30T16:10:22Z xlei quit (Quit: ZNC - https://znc.in) 2020-09-30T16:12:17Z phillbush joined #scheme 2020-09-30T16:17:20Z aeth quit (Ping timeout: 265 seconds) 2020-09-30T16:18:57Z aeth joined #scheme 2020-09-30T16:23:17Z badkins quit (Remote host closed the connection) 2020-09-30T16:23:52Z badkins joined #scheme 2020-09-30T16:29:13Z badkins quit (Ping timeout: 260 seconds) 2020-09-30T16:35:50Z bitmapper joined #scheme 2020-09-30T16:37:37Z TCZ quit (Quit: Leaving) 2020-09-30T16:39:54Z badkins joined #scheme 2020-09-30T16:40:52Z rgherdt quit (Remote host closed the connection) 2020-09-30T16:44:42Z badkins quit (Ping timeout: 258 seconds) 2020-09-30T16:55:43Z daviid joined #scheme 2020-09-30T16:56:02Z badkins joined #scheme 2020-09-30T17:01:24Z hugh_marera joined #scheme 2020-09-30T17:03:14Z xlei joined #scheme 2020-09-30T17:11:03Z alwalo joined #scheme 2020-09-30T17:11:15Z alwalo quit (Remote host closed the connection) 2020-09-30T17:12:11Z motersen joined #scheme 2020-09-30T17:14:50Z X-Scale` joined #scheme 2020-09-30T17:16:28Z X-Scale quit (Ping timeout: 256 seconds) 2020-09-30T17:16:29Z X-Scale` is now known as X-Scale 2020-09-30T17:16:47Z Fare quit (Ping timeout: 240 seconds) 2020-09-30T17:24:23Z badkins quit (Remote host closed the connection) 2020-09-30T17:30:27Z evdubs_ joined #scheme 2020-09-30T17:30:34Z Fare joined #scheme 2020-09-30T17:34:47Z evdubs quit (Ping timeout: 260 seconds) 2020-09-30T18:05:52Z ggole quit (Quit: Leaving) 2020-09-30T18:06:52Z raingloom joined #scheme 2020-09-30T18:15:45Z gravicappa quit (Ping timeout: 265 seconds) 2020-09-30T18:17:19Z gravicappa joined #scheme 2020-09-30T18:17:40Z hugh_marera quit (Quit: hugh_marera) 2020-09-30T18:17:58Z hugh_marera joined #scheme 2020-09-30T18:30:49Z nckx quit (Ping timeout: 264 seconds) 2020-09-30T18:34:32Z mirrorbird quit (Remote host closed the connection) 2020-09-30T18:39:55Z TCZ joined #scheme 2020-09-30T18:41:42Z gmaggior joined #scheme 2020-09-30T18:44:13Z kori quit (Ping timeout: 272 seconds) 2020-09-30T18:46:14Z c7d9 quit (Ping timeout: 256 seconds) 2020-09-30T18:57:58Z phwalkr joined #scheme 2020-09-30T19:08:28Z nckx joined #scheme 2020-09-30T19:12:17Z mirrorbird joined #scheme 2020-09-30T19:12:31Z badkins joined #scheme 2020-09-30T19:20:38Z gravicappa quit (Ping timeout: 256 seconds) 2020-09-30T19:41:14Z badkins quit (Remote host closed the connection) 2020-09-30T19:42:00Z badkins joined #scheme 2020-09-30T19:42:43Z gmaggior quit (Ping timeout: 246 seconds) 2020-09-30T19:46:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-30T19:50:53Z badkins joined #scheme 2020-09-30T19:52:44Z mirrorbird quit (Ping timeout: 244 seconds) 2020-09-30T19:54:49Z gmaggior joined #scheme 2020-09-30T20:11:46Z mirrorbird joined #scheme 2020-09-30T20:29:12Z badkins quit (Remote host closed the connection) 2020-09-30T20:29:44Z badkins joined #scheme 2020-09-30T20:37:58Z badkins quit (Remote host closed the connection) 2020-09-30T20:38:07Z badkins joined #scheme 2020-09-30T20:38:58Z badkins quit (Remote host closed the connection) 2020-09-30T20:39:33Z badkins joined #scheme 2020-09-30T20:40:40Z mirrorbird quit (Quit: Leaving) 2020-09-30T20:46:47Z badkins quit (Ping timeout: 240 seconds) 2020-09-30T20:48:27Z motersen quit (Ping timeout: 240 seconds) 2020-09-30T20:49:47Z mirrorbird joined #scheme 2020-09-30T21:00:23Z phillbush quit (Ping timeout: 260 seconds) 2020-09-30T21:08:17Z badkins joined #scheme 2020-09-30T21:13:00Z badkins quit (Ping timeout: 256 seconds) 2020-09-30T21:36:10Z TCZ quit (Quit: Leaving) 2020-09-30T21:37:08Z Fare quit (Ping timeout: 260 seconds) 2020-09-30T21:37:58Z Fare joined #scheme 2020-09-30T21:48:28Z phwalkr quit 2020-09-30T21:58:13Z kori joined #scheme 2020-09-30T22:01:53Z jobol joined #scheme 2020-09-30T22:05:27Z hugh_marera quit (Ping timeout: 240 seconds) 2020-09-30T22:07:55Z englishm quit (Ping timeout: 240 seconds) 2020-09-30T22:09:26Z hugh_marera joined #scheme 2020-09-30T22:09:57Z englishm joined #scheme 2020-09-30T22:11:07Z civodul quit (Quit: ERC (IRC client for Emacs 27.1)) 2020-09-30T22:12:04Z phillbush joined #scheme 2020-09-30T22:13:55Z mirrorbird quit (Quit: Leaving) 2020-09-30T22:15:43Z madage quit (Ping timeout: 240 seconds) 2020-09-30T22:25:15Z kori quit (Ping timeout: 272 seconds) 2020-09-30T22:28:42Z madage joined #scheme 2020-09-30T22:36:05Z jobol quit (Quit: Leaving) 2020-09-30T22:38:08Z Blukunfando quit (Remote host closed the connection) 2020-09-30T22:44:47Z kori joined #scheme 2020-09-30T22:44:47Z kori quit (Changing host) 2020-09-30T22:44:47Z kori joined #scheme 2020-09-30T22:45:32Z mirrorbird joined #scheme 2020-09-30T22:46:28Z X-Scale` joined #scheme 2020-09-30T22:46:47Z raingloom quit (Ping timeout: 240 seconds) 2020-09-30T22:48:53Z X-Scale quit (Ping timeout: 260 seconds) 2020-09-30T22:48:54Z X-Scale` is now known as X-Scale 2020-09-30T22:49:59Z raingloom joined #scheme 2020-09-30T22:51:17Z badkins joined #scheme 2020-09-30T22:55:42Z phillbush quit (Remote host closed the connection) 2020-09-30T22:56:24Z badkins quit (Ping timeout: 272 seconds) 2020-09-30T22:59:54Z hugh_marera quit (Quit: hugh_marera) 2020-09-30T23:07:52Z badkins joined #scheme 2020-09-30T23:12:55Z Fare quit (Ping timeout: 240 seconds) 2020-09-30T23:13:58Z badkins quit (Ping timeout: 260 seconds) 2020-09-30T23:22:00Z Fare joined #scheme 2020-09-30T23:22:26Z badkins joined #scheme 2020-09-30T23:23:27Z kori quit (Read error: Connection reset by peer) 2020-09-30T23:26:53Z badkins quit (Ping timeout: 260 seconds) 2020-09-30T23:30:27Z hendursa1 quit (Quit: hendursa1) 2020-09-30T23:30:44Z hendursaga joined #scheme 2020-09-30T23:31:52Z Steeve joined #scheme 2020-09-30T23:34:02Z gmaggior quit (Quit: Leaving) 2020-09-30T23:44:38Z Steeve quit (Quit: end) 2020-09-30T23:45:00Z kori joined #scheme 2020-09-30T23:45:36Z Steeve joined #scheme 2020-09-30T23:52:12Z mirrorbird quit (Quit: Leaving) 2020-09-30T23:52:33Z whiteline quit (Ping timeout: 260 seconds) 2020-09-30T23:56:20Z badkins joined #scheme