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: application init files


Jim Blandy <jimb@red-bean.com> writes:

> I agree with Tim; I think the real power of Guile is
> 1) allowing the user to put real code in your config files
> 2) allowing the user to write callbacks the application can invoke, to
>    customize the application's behavior
> 3) Making the core data structures and algorithms of the application
>    available as Scheme data types and functions, so the user can
>    orchestrate the application's behavior with Scheme.
> 
> Providing a better syntax for init files is fine, but Guile is a bit
> of an overkill for that.

I certainly agree with your points, but assuming that Guile becomes a
standard method of "customizing" applications (in leu of less flexible
dot file standards or environmental variables), it seems appropriate
to have some standard way of using it to configure what previously
had been done with dot files.

One stray idea I had was for a "general purpose" configuration editor,
that would use an "application profile" to configure any given application.
The application profile would include all of the "published variables" --
at least the ones that would make sense to configure in an editor.
The profile would define the layout (for organization inside the editor);
dependencies (so items can be ghosted when not applicable); default(s)
of all the variables; and any other pertinent information.  These profiles 
would (of course) be guile scripts.

The obvious problem, is that the editor would demand a certain amount
of simplicity in order for it to work.  But I would be happy if something
like this existed just to configure basic things.  It would be nice if such 
an editor could also determine when a certain variable is beyond the
capabilities of the editor to change (because it's being set dynamically or 
something).  And then it could do something clever like open a text editor 
at the first occurance of the variable in the initializing file, if you 
wanted it to..

Cheers,

--
James Dean Palmer
Crossroads Graphics Editor
Computer Engineering Undergrad @ Texas A&M
email : jpalmer@agnews.tamu.edu
www   : http://agnews.tamu.edu/~jpalmer