Reawakening keywords
John Cowan
(23 Apr 2020 21:16 UTC)
|
Re: Reawakening keywords
Alex Shinn
(23 Apr 2020 22:51 UTC)
|
Re: Reawakening keywords
John Cowan
(23 Apr 2020 23:35 UTC)
|
Re: Reawakening keywords
Alex Shinn
(24 Apr 2020 00:04 UTC)
|
Re: Reawakening keywords
John Cowan
(24 Apr 2020 00:45 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 06:15 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 06:44 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 06:46 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 06:52 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 07:10 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 07:27 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 07:43 UTC)
|
Re: Reawakening keywords Lassi Kortela (24 Apr 2020 08:00 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 08:26 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 08:34 UTC)
|
Re: Reawakening keywords
Amirouche Boubekki
(24 Apr 2020 06:54 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 07:04 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 07:13 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 07:36 UTC)
|
Re: Reawakening keywords
Lassi Kortela
(24 Apr 2020 06:39 UTC)
|
Re: Reawakening keywords
Arthur A. Gleckler
(24 Apr 2020 15:07 UTC)
|
Re: Reawakening keywords
John Cowan
(25 Apr 2020 00:07 UTC)
|
Re: Reawakening keywords
Arthur A. Gleckler
(25 Apr 2020 00:12 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(25 Apr 2020 07:51 UTC)
|
Re: Reawakening keywords
John Cowan
(25 Apr 2020 16:04 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(25 Apr 2020 16:40 UTC)
|
Re: Reawakening keywords
John Cowan
(25 Apr 2020 18:10 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(25 Apr 2020 18:25 UTC)
|
Re: Reawakening keywords
John Cowan
(25 Apr 2020 22:02 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(02 May 2020 19:33 UTC)
|
Re: Reawakening keywords
Marc Nieper-Wißkirchen
(24 Apr 2020 06:10 UTC)
|
> My point is that if `open-process' and `uri-decode-string' are native, > unportable procedures there is no need to call them in a portable way. There is, from within a `cond-expand`. Currently it's not possible to call implementations' native keyword procedures from a cond-expand since the lack of portable read syntax would make it impossible to load the file in many Schemes. 177 allows writing call/kw using only symbols, which makes it possible to call native keyword procedures with standard read syntax. That's one of the major wins IMHO. > If, on the other hand, they are rewritten following some portable > specification (e.g. some procedure in SRFI 170), they don't have to be > implemented using some native, non-portable keyword system. The usual wisdom in software development is that it takes years for a big system to be fully upgraded. By contrast, 177 could be used today to call any native keyword procedure in any implementation, at no cost to people who don't want to use 177. > I don't want to say that this SRFI is useless. No worries, I'm not offended by strong criticism. Whatever gets the best technical result. There are justified rationales that 177 is useless or harmful, and I respect that opinion. I agree with the internal logic of those rationales but not with their premises. I'm open to changing my mind about the premises if there are especially convincing arguments. > I would, however, like > to see that whatever simple "native keyword system" R7RS-large chooses > for other SRFIs is also covered by SRFI 177 so that the rest of > R7RS-large does not necessarily have to refer to SRFI 177. For > example, I would like to be able to write something simple like > `(make-hash-table (make-eq-comparator) 'initial-size 1000)' without > the need of any `call/kw'. This discussion has tipped me over to favor bending the rules of the R7RS-large charter so that keywords (if they are adopted in the standard) would be added to the native procedure call syntax. It's clear that the `call/kw` prefix is considered too heavy to be part of a standard language, and shorter prefixes like `kw` or `:` seem to me a bit like "squirming in the hook" to avoid a problem that is ultimately inevitable :) The unfortunate thing is that if R7RS-large procedure call syntax is extended, we have the Kawa/Racket direction and the CL-style direction to go in. Reconciling those would not be easy.