This is the mail archive of the guile@cygnus.com mailing list for the guile project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: user-options




(crawling out from under crushing hosage briefly)

sds@goems.com writes:
> >>>> In message <wspv9hy6zl.fsf@orcus.priv.at>
> >>>> On the subject of "Re: user-options"
> >>>> Sent on 18 Dec 1998 13:22:54 +0100
> >>>> Honorable Robert Bihlmeyer <robbe@orcus.priv.at> writes:
>  >> 
>  >> >>>>> On 16 Dec 1998 16:43:36 -0500
>  >> >>>>> Sam Steingold <sds@goems.com> said:
>  >> 
>  >>  Sam> The getter is likely to be the same as var, so it's not needed
>  >>  Sam> either.
>  >> 
>  >> It can't be in scheme, can it? Sam, could it be that you smoke too
>  >> much of that unhealthy CL stuff <ggg>?
> 
> CL rulez.  Extremists who disagree will be shot.
> 

Yep, he's clearly been smoking too much CL :-)

> let me repeat my point (it would be nice if you looked at my previous
> message and told me what was confusing there :)
> 
> `user-options' is a list of symbols.
> I take one of them, `FOO', and look at it's value
>         (symbol-binding #f 'FOO)
> if it's a procedure, I decide that a value of a user option can't be a
> procedure [this is a weak point, but let me repeat: a user option is
> something the user will be typing in at a prompt. you don't expect him
> to type a `lambda', do you?  if he can, he is using `scwmrepl' anyway],
> so this must be what Robbe called "a complex variable", so I assume that
> the getter is (FOO) and the setter is (SET-FOO! user-input).
> 

Yes, user-settable variables can have procedures as values, for example

winops.scm: move-opaquely?, resize-opaquely?
style.scm: default-style-condition-handler
auto-raise.scm: default-auto-raise-focus-proc, default-auto-raise-unfocus-proc
winlist.scm: window-list-proc

I think most of these can be set meaningfully by the user by, e.g.,
typing in the name of a procedure that's a valid and useful value.

There are also some user-settable vars that may have a procedure as a
value at some times but not others.

 - Maciej