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: Suggestion: New Guile mailing list


Keith Wright <kwright@tiac.net> writes:

> mdj> Personally, I'd prefer to discuss things on the other list, since
>  I'd like to put more time into writing code instead of talking.
> 
> Coding is Good.  I don't know why the time required for discussion
> should depend upon the list

The fact is that it does.  Discussions were more concentrated when
they were pursued on the developer's list.  I guess this is because it
has fewer and more initiated participants.

But now we've agreed that we'll continue to discuss implementation
issues on the guile list.

>  I don't much care about O-O extensions to Scheme, because I think
> it works fine without them, and because they are a subject of much
> obscure argument with no theorem at the end.  I do care about Guile,
> and would hate to see it crufted up.

We'll minimize extra cruft.  However, object orientation is an
important and useful programming paradigm, so it is clearly worth the
sacrifice of a few extra bytes in libguile.

> mdj> I would very much like Guile to be a Scheme interpreter + useful
>  libraries.  I'm much more afraid of language bloat than of code bloat.
> mdj> I'd also like the Guile language (whatever that will finally be)
>  to be easy to compile to efficient code.
> mdj> I don't think the new set! syntax is useful enough to motivate
>  the added complexity to the language and the new constraints for new
>  Guile interpreters and compilers.
> 
> I am agreeing with all this.  Did the discussion finally result in
> consensus on a plan that meets these goals? ...

Not exactly.  We found a way to limit the effect of generalized
locations on the language.  The new set! will only influence set!
itself and will add a new procedure type.  The rest of the interpreter
is unaffected.  It will also be possible to compile to efficient code.

> mdj> It's a bit sad that I'm the only one that previously tried to protect
> the simplicity of the language.
> 
> ... Or did the advocates of complicated cruft beat you down?

Yes - I have this weakness that good arguments sometimes works on me. ;-)

> kwright> (1) Whatever it is, don't call [setf!] SET!,
>    that name is taken by RnRS.

When the new module system arrives and Guile is factorized, there will
be an RnRS module.  That will contain a "pure" `set!'.  The default
user environment in Guile will however include additional modules
which will export the extended `set!'.  The module system facilities
should make it possible to use the pure `set!' if that is the user's
wish.

Since the new `set!' is a natural generalization of the "pure" `set!'
it is natural to give it the same name.

What we get with the new `set!' is a useful and natural generalization
of `set!'  at low cost of implementation with few restrictions on the
interpreter and compiler and which is possible to compile to efficient
code.

/mdj