Re: Alternative formulations of keywords
John Cowan 12 Apr 2006 02:54 UTC
Marc Feeley scripsit:
> But doesn't this require that all named parameters be supplied? So
> it does not help with named optional parameters.
No, it merely requires the existence of a run-time object that
uniquely represents "unsupplied value".
> The error checking is also very poor.
I don't understand this point.
> BTW: Who is forcer?
Jorgen Schaefer.
> Are you saying that the programmer writes
>
> (foo 'bar foo: 32 bar: 54)
>
> and the compiler transforms this to
>
> (foo 'bar (list (cons 'foo: 32) (cons 'bar: 54)))
No, to a literal, not a run-time constructor.
> This seems to be an implementation of named optional parameters, so
> it is unclear to me what you are criticizing in the specification of
> the SRFI. However I should say that a compile time handling of
> keywords will not work in general. Think of:
>
> (foo 'bar (f 11) 32 (b 22) 54)
>
> where f returns foo: and b returns bar: . A general implementation
> of SRFI 89 must parse the list of parameters at run time because some
> of the keywords may be computed.
What are the use cases for computed keywords?
--
All Gaul is divided into three parts: the part John Cowan
that cooks with lard and goose fat, the part http://ccil.org/~cowan
that cooks with olive oil, and the part that xxxxxx@ccil.org
cooks with butter. -- David Chessler