guile-devel
[Top][All Lists]
Advanced

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

Re: Handling deprecated features


From: Neil Jerram
Subject: Re: Handling deprecated features
Date: 02 May 2001 22:24:02 +0100
User-agent: Gnus/5.0808 (Gnus v5.8.8) Emacs/20.7

>>>>> "Marius" == Marius Vollmer <address@hidden> writes:

    Marius> Neil Jerram <address@hidden> writes:
    >> 1) I'm not sure about using an environment variable to
    >> customize the behaviour.  Currently, we already have two
    >> mechanisms for this kind of control: (i) command line options
    >> and (ii) the (xxx-options) interfaces.  Why should we add a
    >> third form of customization rather than use one of the existing
    >> mechanisms?

    Marius> Good point.  I thought of an environment variable first
    Marius> because I think they are the easiest for people to control
    Marius> when they are using some application program that hides
    Marius> Guile in its innards.  Not all Guile using applications
    Marius> might accept the standard command line arguments, or read
    Marius> "~/.guile".  Changing the code to insert an appropriate
    Marius> `(xxx-options)' call is likely not feasible either.

    Marius> Thus, I think a environment variable is good for people
    Marius> who just want Guile to shut up. [...]

OK, I think this is a good argument.  But in this case, please can we
have a consistent relationship between environment variables and the
(xxx-options) interfaces?  For example, one possibility would be for
all the options interfaces to initialize themselves at init time
according to the values of corresponding environment variables:

    (let ((val (getenv "GUILE_XXX_OPTIONS")))
      (if val
          (xxx-options-interface val)))

(It would be better for GUILE_XXX_OPTIONS to be able to specify a
delta to the compile time defaults for xxx-options, but I haven't
thought about a syntax for that yet.  The thing that I really *don't*
want to see is a proliferation of different and unrelated means of
configuration.)

    >> ;;; `xxx' is deprecated and will disappear in a future version
    >> of ;;; Guile; please use `yyy' instead.
    >> 
    >> and
    >> 
    >> ;;; `xxx' will be removed in the next Guile release; please use
    >> ;;; `yyy' instead.
    >> 
    >> I wonder if anyone else thinks this last distinction would be
    >> useful?

    Marius> I don't know.  I would rather not worry about this too
    Marius> much.  I think I'll first implement the basic stuff
    Marius> outlines so far, and we can then see how to improve it
    Marius> later.

OK - agreed.

        Neil




reply via email to

[Prev in Thread] Current Thread [Next in Thread]