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

Re: [Scheme-reports] the features function

Per Bothner scripsit:

> Kawa has an open-ended set of feature identifiers, in that
> class-exists:CLASSNAME is true if the java class CLASSNAME exists
> in the compile-time environment.  This functionality has similar uses
> as the new library clause, and could perhaps be replaced by the latter.
> Still, it is unclear if an implementation with a feature-set pattern
> like class-exists:CLASSNAME is strictly conformant.  Perhaps I could
> just say class-exists:CLASSNAME is not a feature-name, but a
> different kind of extension to cond-expand.

I think so.  If you provide R7RS cond-expand, you could have features,
library names wrapped in (library ...), and class names wrapped in
(class ...), for example.

> What are the use cases for the features function, except perhaps
> informational, for humans?

The uses of CL *features* seem to be debugging, logging, and similar
orthogonal aspects.  It's also possible that the features list could
change at run time due to a change in the program's environment.

With techies, I've generally found              John Cowan
If your arguments lose the first round          http://www.ccil.org/~cowan
    Make it rhyme, make it scan                 cowan@x
    Then you generally can
Make the same stupid point seem profound!           --Jonathan Robie

Scheme-reports mailing list