Gush

Gordon Matzigkeit (gord@trick.fig.org)
14 Aug 1998 10:40:54 -0600

--Multipart_Fri_Aug_14_10:40:54_1998-1
Content-Type: text/plain; charset=US-ASCII

Hi!

As many of you may have seen on gnu.announce and
comp.os.linux.announce, I've begun work on Gush, the GNU User's SHell.

I've attached the Gush announcement, in case somebody hasn't seen it
yet. I'd like it if you added a link from the Guile pages to
http://www.gnu.org/software/gush/gush.html.

I'm really excited about this project. I think that Gush is a great
framework for solving basically all the problematic things about
Guile:

1) Guile scripts which are compliant with the Gush `app' specification
load quickly under Gush, because the interpreter doesn't need to be
reinitialized.

2) Gush is defining a standard way to write translators from other
languages to Guile Scheme.

3) When Gush's libffi support is complete, there will be no reason to
write applications that don't have a Scheme ``master world'': you'll
be able to put all your C code into shared libraries using libtool,
write Scheme wrappers, and dlopen the libs at runtime.

All these things will take the emphasis off of SCM and libguile, which
is IMHO a Good Thing.

Gush is developing the environment for the above features to happen,
so if you're interested, please join our mailing list (send mail to
gnu-gush-subscribe@fig.org). Gush already has the complete
functionality of the standard `guile' interpreter, plus a rudimentary
shell syntax.

The next release will have full `app' support, and the beginnings of
libffi support.

I hope to see libguile get smaller and smaller as primitives just
become Scheme wrappers for other library functions (such as readline).
Then, that will make room for alternative Guile interpreter
implementations such as RScheme, and take the pressure off of you
folks.

Anyway, have fun,

-- 
 Gordon Matzigkeit <gord@fig.org> //\ I'm a FIG (http://www.fig.org/)
    Lovers of freedom, unite!     \// I use GNU (http://www.gnu.org/)

--Multipart_Fri_Aug_14_10:40:54_1998-1 Content-Type: application/octet-stream Content-Disposition: attachment; filename="README.alpha" Content-Transfer-Encoding: 7bit

Hi, everybody!

I am pleased to announce the first alpha-testing release of Gush, the GNU User's SHell. Gush uses Guile to be a highly dynamic, extensible shell. Please see http://www.gnu.org/software/gush/gush.html for more information.

Gush was just born nine days ago, but it has spent about nine months in gestation. As of today, Gush is mainly ``a packaged set of hopes and promises,'' as a friend of mine so lucidly put it. ;)

I'm only releasing this so that more people can get involved in its development. I want to attract people who are familiar with Unix shell internals and/or Scheme programming. Bash developers are first on my list, but other programmers are welcome: I want Gush to support many different shell syntaxes (csh, zsh, etc).

My dream with this package is to have a high-performance, tightly integrated Unix-compatible command shell that supports multiple scripting languages (such as Perl, Python, Scheme, etc). I have many concrete ideas for how to achieve this goal.

Up until now, I have not spent much time talking with other hackers, but now I need your help. I want to make peaceful contact with the core developers of every interpreter that exists out there. The goal is to have Guile (and therefore Gush) support many different language syntaxes.

The Guile vision is not about forcing developers to use Scheme, it's about giving them the ability to add their favorite language to a tightly integrated core, and then use it. Then, the *user* can choose what language they prefer, rather than being forced into the one the developer likes best. This concept is similar to using ``themes'' in a window toolkit.

Scheme was Guile's first language. I enjoy writing shell scripts, so I say ``let there be Gush!''

Gordon Matzigkeit <gord@fig.org> 1998-08-11

--Multipart_Fri_Aug_14_10:40:54_1998-1 Content-Type: text/plain; charset=US-ASCII

Copyright (C) 1998 FIG.org; the creator offers you this gift and wants it to remain free. See http://www.fig.org/freedom.html for details. This work may be copied, modified and distributed under the GNU General Public License (GPL). See http://www.gnu.org/copyleft/gpl.html.

--Multipart_Fri_Aug_14_10:40:54_1998-1--