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: difficulty of writing translators



> I believe the current guile maintainer is opposed to adding variable
> tracing to Guile on the Scheme level. (IMO wrongly, because variable
> traces can be used to create a really nice magical interface for
> global configuration parameters. They'd look just like variables (you
> could directly access or set! them), but the app could react
> appropriately to changes in its parameters. I think traces are one of
> the best ideas in Tcl.)

Yes, I'm opposed to adding variable tracing to Guile at the Scheme
level.

People need to have some sense of which code could be run in response
to a particular action; if setting a variable causes new font metrics
to be downloaded (for example), or some other huge and complicated
action, then that principle is kind of broken.

If an operation is going to do something weird and expensive, it
should be syntactically apparent; it could look like a function call,
for example.

I don't see a major advantage to writing:

    (set! parameter value)          and             parameter

instead of 

    (set-parameter! value)          and             (parameter)

especially since it's clear that the latter might do significant
work.  The payoff isn't worth the ugliness it adds to the language.