[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Scheme-reports] Draft 3 Comments: Chapter 4

Am 27.07.2011 18:54, schrieb John Cowan:
> Keyword arguments can be done in R5RS without extra machinery, provided you
> are willing to export them as identifiers:  see KeywordsArcfide.

This is a nice trick indeed, but does suffer from some subtle 
complications. Consider the usage example on KeywordArgumentsArcfide:

   (define/optional (blah a b c (x: 0) (y: 7))
     (list a b c x: y:))

What if you don't want to call "list", but another procedure which 
itself accepts "x:" and "y:" keyword arguments? As both keywords and 
symbols share the same namespace, there is no way to refer to "x: the 
keyword" separately from "x: the local parameter variable" other than 
renaming the former or creating an alias for the latter, which makes the 
approach pretty unpractical. A separate keyword namespace wouldn't have 
these problems.

However this is clearly a WG2 topic, so it probably doesn't make much 
sense to discuss that now.


Scheme-reports mailing list