----------------------------------------------------------------------


GNU's Bulletin						    June, 1991


        The GNU's Bulletin is the semi-annual newsletter of the
   Free Software Foundation, bringing you news about the GNU Project.


Free Software Foundation, Inc.                Telephone: (617) 876-3296
675 Massachusetts Avenue          Electronic mail: gnu@prep.ai.mit.edu
Cambridge, MA 02139  USA



Contents
--------

     GNU's Who
     What Is the Free Software Foundation?
     What Is Copyleft?
     A Small Way to Help Free Software
     GNUs Flashes
     Free Software Support
     Copyrighted Programming Languages
     AT&T Threatens Users of X Windows
     Project Gutenberg
     GNU Project Status Report
     GNU in Japan
     GNU Wish List
     Help Keep Government Software Free
     GNU Software Available Now
     GNU Documentation
     How to Get GNU Software
     Free Software for Microcomputers
     Free Software Foundation Order Form
     Thank GNUs



GNU's Who
*********

Michael Bushnell is working on the GNU operating system and maintains
GNU `tar'.  Jim Blandy is preparing Emacs 19, and Joseph Arceneaux is
implementing active regions for a future release.  Roland McGrath is
polishing the C library and maintains GNU `make' as well as the Emacs 19
Lisp library.

Jay Fenlason continues with the GNU spreadsheet, Oleo, and maintains
`sed' and the GNU assembler.  Brian Fox is maintaining various programs
that he has written, including the `readline' library, the `makeinfo'
and `info' programs, BASH, and GNU `finger'.

Kathy Hargreaves and Karl Berry are making fonts, developing various
utilities for dealing with them, and also working on Ghostscript.  Mike
Haertel, who has been working on a C interpreter and on various "bin"
utilities, is going to graduate school this fall.  Per Bothner has taken
over maintenance of the "bin" utilities.  Amy Gorin is writing the
manual for `tar'.  Sandra Loosemore is writing the C Runtime Library
manual.

S. Opus Goldstein continues to run the business end of FSF.  Miria
Brigid is answering phone calls, handling correspondence, and making
distribution tapes.  Robert J.  Chassell, our Treasurer, is working on
his introduction to programming in Emacs Lisp, in addition to his many
other Foundation duties.  Noah Friedman is our system administrator.

Richard Stallman continues as a volunteer who does countless tasks,
including refining the C compiler, Emacs, etc., and their documentation.
Walter Poxon coordinates volunteer work.  Finally, volunteer Len Tower
remains our electronic JOAT (jack-of-all-trades), handling mailing lists
and gnUSENET, information requests, et al.



GNU's Bulletin
--------------

Copyright (C) 1991 Free Software Foundation, Inc.

Written by: Noah Friedman, Robert J. Chassell, Richard Stallman,
     and Leonard H. Tower Jr.

Illustrations: Etienne Suvasa

Japanese Edition: Mieko Hikichi and Nobuyuki Hikichi

     Permission is granted to anyone to make or distribute verbatim
     copies of this document as received, in any medium, provided that
     the copyright notice and permission notice are preserved, and that
     the distributor grants the recipient permission for further
     redistribution as permitted by this notice.



What Is the Free Software Foundation?
*************************************

The Free Software Foundation is dedicated to eliminating restrictions on
copying, redistribution, understanding, and modification of computer
programs.  We do this by promoting the development and use of free
software in all areas of computer use.  Specifically, we are putting
together a complete integrated software system named "GNU" (GNU's Not
Unix) that will be upwardly compatible with Unix.  Some large parts of
this system are already working, and we are distributing them now.

The word "free" in our name refers to two specific freedoms: first, the
freedom to copy a program and give it away to your friends and
co-workers; second, the freedom to change a program as you wish, by
having full access to source code.  Furthermore, you can study the
source and learn how such programs are written.  You may then be able to
port it, improve it, and share your changes with others.

Other organizations distribute whatever free software happens to be
available.  By contrast, FSF concentrates on development of new free
software, working towards a GNU system complete enough to eliminate the
need to purchase a proprietary system.

Besides developing GNU, the Foundation has several secondary functions:
producing tapes and printed manuals for GNU software, carrying out
distribution, and accepting gifts to support GNU development.  We are
tax exempt; you can deduct donations to us on your tax returns.  Our
development effort is funded from both donations and distribution fees.
Note that the distribution fees purchase just the service of
distribution: you never have to pay anyone license fees to use GNU
software, and you always have the freedom to make your copy from a
friend's computer at no charge (provided your friend is willing).

The Foundation also maintains a Service Directory, see "Free Software
Support" below for details.

After we create our programs, we continually update and improve them.
We release between 2 and 20 updates a year for each program.  Doing this
while developing new programs takes a lot of work, so any donations of
pertinent source code and documentation, machines, labor, or money are
always appreciated.

The board of the Foundation is: Richard Stallman, President; Robert J.
Chassell, Treasurer; Gerald J. Sussman, Harold Abelson, and Leonard H.
Tower Jr., Directors.

     *"As we enjoy great advantages from the inventions of others, we
     should be glad of an opportunity to serve others by any invention
     of ours."*

     -Benjamin Franklin



What Is Copyleft?
*****************

In the previous section entitled "What Is the Free Software Foundation?"
we state that "you never have to pay anyone license fees to use GNU
software, and you always have the freedom to make your copy from a
friend's computer at no charge."  What exactly do we mean by this, and
how do we make sure that it stays true?

The simplest way to make a program free is to put it in the public
domain.  Then people who get it from sharers can share it with others.
But this also allows bad citizens to do what they like to do: sell
binary-only versions under typical don't-share-with-your-neighbor
licenses.  They would thus enjoy the benefits of the freeness of the
original program while withholding these benefits from the users.  It
could easily come about that most users get the program this way, and
our goal of making the program free for *all* users would have been
undermined.

To prevent this from happening, we don't normally place GNU programs in
the public domain.  Instead, we protect them by what we call
"copylefts".  A copyleft is a legal instrument that makes everybody free
to copy a program as long as the person getting the copy gets with it
the freedom to distribute further copies, and the freedom to modify
their copy (which means that they must get access to the source code).
Typical software companies use copyrights to take away these freedoms;
now software sharers use copylefts to preserve these freedoms.

The copyleft used by the GNU Project is made from a combination of a
copyright notice and the "GNU General Public License".  The copyright
notice is the usual kind.  The General Public License is a copying
license which basically says that you have the freedoms we want you to
have and that you can't take these freedoms away from anyone else.  (The
actual document consists of several pages of rather complicated legalbol
that our lawyer said we needed.)  The complete license is included in
all GNU source code distributions and many manuals.  We will send you a
copy on request.

We encourage others to copyleft their programs using the General Public
License; basically programs only need to include a few sentences stating
that the license applies to them.  Specifics on using the License
accompany it, so refer there for details.



A Small Way to Help Free Software
*********************************

If you find that GNU software has been helpful to you; in particular, if
you have benefited from having sources freely available, please help
support the spread of free software by telling others.  For example, you
might say in published papers and internal project reports:

     "We were able to modify the fubar utility to serve our particular
     needs because it is free software.  As a result, we were able to
     finish the XYZ project six months earlier."

Let users, management and friends know!  And send us a copy.  Thanks!



GNUs Flashes
************

   * New library license

     We recently published a new alternative Library General Public
     License to cover certain GNU libraries.  This license permits
     linking the libraries into proprietary executables on certain
     conditions.

     The new library license actually represents a strategic retreat.
     We would prefer to insist as much as possible that programs based
     on GNU software must themselves be free.  However, in the case of
     libraries, we found that insisting they be used only in free
     software tended to discourage use of the libraries, rather than
     encourage free applications.

     So, while we hope the new library license will help promote the
     development of free libraries, we regret that it was necessary.

     Version 2 of the ordinary General Public License was released along
     with the Library license.  The changes are mostly clarifications,
     but there are new provisions to deal with the effect of software
     patents.  These provisions make it possible to limit the
     distribution of a particular program to countries where no patents
     apply.

   * Kernel

     We have decided to use the Mach message-passing kernel being
     developed at CMU.  The latest version of Mach is a microkernel that
     contains no AT&T code.  (A microkernel provides no high-level
     functionality, such as file systems and signals.)  Earlier, nonfree
     version of Mach were covered by export restrictions, but there are
     no restrictions now.

     Mike Bushnell is writing a set of servers to run on top of Mach to
     provide a full GNU OS.  It is far from finished (see "GNU Status
     Report").

   * Improved binary file interface

     Cygnus Support has written BFD, a set of routines for reading and
     writing binary files.  Using the BFD library, GDB version 4, and
     eventually both binutils and GAS, will read and write a variety of
     object file and library formats, and will read assorted core file
     formats, such as a.out, b.out (i960), and various kinds of COFF.

   * `g++'

     Version 1.39.1 of GNU C`++' is now available.  The only major
     change is that this version outputs debugging info which is again
     consistent with what GDB version 3.5 expects.  It is the same that
     version 1.37.x emits.  Version 1.40 will be released soon.

   * C Library

     The GNU C library is in a limited distribution alpha test release.
     We hope to have a beta test available soon.  The library is POSIX.1
     compliant and has most of the functions specified in POSIX.2 draft
     11.  It is upward compatible with the 4.3 BSD C library and
     includes many System V functions, plus GNU extensions.

   * Fortran front end for GCC

     A Fortran front end for GCC, written by Craig Burley, is very
     nearly finished.  He is integrating and making changes to the back
     end to finish the compiler itself.  Current plans (and the current
     compiler) call for using the same library functions used by `f2c',
     allowing `f2c'-compiled and `gf77'-compiled subprograms to be
     linked together and run.  (Please do not ask for more information
     on Fortran until we announce its release.)

   * A Russian Connection?

     The GNU Project seems to have grown a branch in Russia.  Computer
     exporter Anwar Fancy plans to sell thousands of computers in the
     Soviet Union, and hopes that the GNU system will make this more
     feasible by saving the purchasers multi-user Unix license fees.  He
     has hired ten programmers in Moscow, and is now equipping them with
     Unix systems, so that they can work on parts of the GNU system.
     The software is to be donated to FSF.  Their first project may be a
     desktop system.



Free Software Support
*********************

The Free Software Foundation develops and distributes freely available
software.  Our goal is to help computer users as a community.  We
envision a world in which software is freely redistributable.  This
means software will be sold at a competitive market price rather than a
monopolistically established price; often it will be given away.  We see
programmers as providing a service, much as doctors and lawyers now
do---both medical knowledge and the law are freely redistributable
entities for which the practitioners charge a distribution and service
fee.

We maintain a list of people who offer support and other consulting
services, called the GNU Service Directory.  It is in the file
`etc/SERVICE' in the GNU Emacs distribution and `SERVICE' in the GCC
distribution.  Contact us if you would like a copy or wish to be listed
in it.

If you find a deficiency in any GNU software, we want to know.  We have
many Internet mailing lists for announcements, bug reports, and
questions.  They are also gatewayed into USENET news as the `gnu.*'
newsgroups.

If you have no Internet access, you can receive mail and USENET news via
UUCP.  Contact either a local UUCP site, or UUNET (which can set up a
UUCP connection at a modest rate) at `info@uunet.uu.net':

     UUNET Communications Services,
     3110 Fairview Park Drive - Suite 570,
     Falls Church, VA  22042
     Phone: (703) 876-5050

When we receive a bug report, we will usually try to fix the problem in
order to make the software better.  While our bug fixes may seem like
individual assistance, they are not.  Our task is so large that we must
focus on that which helps the community as a whole, such as developing
and maintaining software and documentation.  We do not have the
resources to help individuals.  If your bug report does not evoke a
solution from us, you may still get one from the many other users who
read our bug report mailing lists.  Otherwise, use the Service
Directory.

So, please do not ask us to help you install the software or figure out
how to use it---but do tell us how an installation script does not work
or where the documentation is unclear.



Copyrighted Programming Languages
*********************************

by Richard Stallman

The GNU project has produced one of the best C compilers now in
existence.  The reason I decided to write a C compiler, rather than
designing a new, completely clean language, is that C is the language
users' programs are written in.  For a Unix-like system, a compiler for
C is absolutely essential.

If a new language becomes equally essential for a useful computer
system, will we be allowed to write a compiler for it?  Not if we want
people in Europe to use the compiler.  On May 15, the European Community
adopted a new directive for software copyright.  It establishes not only
copyrighted user interfaces, but also copyrighted protocols, copyrighted
data formats, and copyrighted programming languages.

Here is what the law says about interfaces:

     Whereas for avoidance of doubt it has to be made clear that only
     the expression of a computer program is protected and that ideas
     and principles which underlie any elements of a program, including
     those which underlie its interfaces, are not protected by copyright
     under this directive;

Nothing prevents the details of an interface---as opposed to the
underlying ideas---from being copyrighted.

The Legal Affairs Committee of the European Parliament recommended
adding these words to solve this problem for certain kinds of
interfaces:

     Whereas, these unprotectible items include, for example, protocols
     for communication, rules for exchanging or mutually using
     information that has been exchanged, formats for data, and the
     syntax and semantics of a programming language;

This amendment was rejected after serious debate in which the
conservative party particularly opposed it.  The importance given to the
question shows that it was regarded as a substantive change---that
Parliament believes the law as written permits copyright on the
protocols, formats, and languages.

The principal supporters of these broad and dangerous monopolies were a
few large computer companies: IBM, Digital, Apple, and Siemens.  (Only
one of them is a European company.)  Many smaller companies formed the
European Committee for Interoperable Systems to lobby against interface
monopolies, but had little success.

What about the United States?

Ashton-Tate is once again pushing its case for a copyright on the
programming language used in DBase.  Last winter, the judge ruled that
the copyright on DBase was invalid because Ashton-Tate had failed to
inform the copyright office that part of the program was copied from an
earlier, public domain program written at JPL.  It turns out that the
"part" in question was the programming language---not part of the
program at all!

Later, the judge reversed his own decision.  The case is now proceeding.

The latest version of the System V Interface Definition claims that the
interface is copyrighted.  Adobe says the Postscript language is
copyrighted.  You can bet that IBM, Digital, and Apple are telling
Congress loud and clear that programming languages should be
copyrighted.  And they will point to the European law as proof this is
sound policy.

So, the next time you adopt a new language, will we be allowed to add
support for it in the GNU compiler?  Not in Europe, and probably not in
the US either.

Since surveys show most programmers disapprove of these restrictions,
most likely you do too.  The question is whether you want to do anything
about it.  You can speak up and have an effect on the decision, or you
can do nothing and let IBM, Digital, and Apple do all the talking.

The FSF is doing what it can.  We joined the League for Programming
Freedom as an institutional member, as seven companies have also done.
Some of the FSF staff number among the 600 individual League members.
But, it takes more than 600 people to win this battle.  So, the next
step is up to you.

>From the League membership form:

     The League for Programming Freedom is a grass-roots organization of
     professors, students, businessmen, programmers and users dedicated
     to bringing back the freedom to write programs.  The League is not
     opposed to the legal system that Congress intended---copyright on
     individual programs.  Our aim is to reverse the recent changes made
     by judges in response to special interests.

     Membership dues in the League are $42 per year for programmers,
     managers and professionals; $10.50 for students; $21 for others.

     If you have any questions, please write to the League, phone (617)
     243-4091, or send Internet mail to `league@prep.ai.mit.edu'.

To join, please send a check and the following information to: League
for Programming Freedom, 1 Kendall Square #143, P.O. Box 9171,
Cambridge, MA 02139

   * Your name and phone numbers (home, work or both).

   * The address for League mailings, a few each year (please indicate
     whether it is your home address or your work address).

   * The company you work for, and your position.

   * Your email address, so the League can contact you for political
     action.  (If you don't want to be contacted for this, please say
     so, but please give your email address anyway.)

   * Please mention anything about you which would enable your
     endorsement of the LPF to impress the public.

   * Please say whether you would like to help with LPF activities.

     *"If I have seen farther, it is by standing on the shoulders of
     giants."*

     -Isaac Newton



AT&T Threatens Users of X Windows
*********************************

by Richard Stallman

This spring, AT&T sent threatening letters to every member of the X
Consortium, including MIT, saying they need to pay royalties for the X
Window server.  This is because AT&T has patented the use of "backing
store" in a multiprocessing window system (patent number 4,555,775).
MIT is looking into how to fight AT&T in court if necessary, but we
don't know whether this can succeed.

Meanwhile, Cadtrak continues to demand royalties from the users of X
Windows for using exclusive-or to write on the screen, which is covered
by patent number 4,197,590.

The GNU system won't be terribly useful if it can't have X Windows.  But
that isn't the only essential system feature which is in danger.  Emacs
is threatened by IBM patent number 4,674,040 which covers "cut and paste
between files" in a text editor.  Many Emacs features are threatened by
patent number 4,458,311, which covers "text and numeric processing on
same screen."  Patent 4,398,249 covering the general spreadsheet
technique known as "natural order recalc" stops us from using it in GNU
software.

There is little the FSF itself can do about these threats.  Fighting
just one patent in court would use up all our funds.  So we have added a
provision to version 2 of the GPL so that we can prohibit distribution
of one of our programs in certain countries if it is covered by patents
there.  Most likely, one of those countries will be the United States.

Beyond that, we have joined the League for Programming Freedom, which is
trying to get patents out of the software field.  If you develop
software for wide use, chances are you, too, will find you can't do your
work without infringing these patents.  Not to mention the thousands of
other patents that apply to software.  Doesn't it make sense for you to
join the League for Programming Freedom?



Project Gutenberg
*****************

by Michael S. Hart, Director
Project Gutenberg National Clearinghouse for Machine Readable Texts

The purpose of Project Gutenberg is to encourage the creation and
distribution of English language electronic texts.  We prefer to get the
texts in a pure ASCII format so they would be most easily converted to
use in various hardware and software.  An ASCII file will also be made
available in various markup formats as it is used in various
environments.  However we accept files in *any* format, and will do our
best to provide them in all.

We assist selecting hardware and software as well as in their
installation and use.  We also assist in scanning, spelling checkers,
proofreading, etc.  Our goal is to provide a collection of 10,000 of the
most used books by the year 2001, and to reduce, and we do mean reduce,
the effective costs to the user to a price of approximately one cent per
book, plus the cost of media and of shipping and handling.  Thus we hope
the entire cost of libraries of this kind will be about $100 plus the
price of the disks, CDROMs and mailing.  Currently the price of making
CDROMs is said to be about $500 for mastering plus $2 per copy.  I have
it on fairly good authority that these prices are negotiable.

To create such a library would take less than one out of ten of a
conservatively estimated 100,000 libraries in the U.S. alone: if each
created one full text.  If all the libraries co-operated, it would be
less than 10% of a volume per library.  If there were 10 members of each
library creating electronic texts, then each member only has to do 1% of
a single book to create a truly public library of 10,000 books which
would each be usable on the 100 million computers available today.

So far most electronic text work has been carried out by private,
semi-private or incorporated individuals, with several library or
college collections being created, but being made mostly from works
entered by individuals on their own time and expense.  This labor has
largely been either one of love, or one made by those who see future
libraries as computer searchable collections which can be transmitted
via disks, phone lines or other media at a fraction of the cost in
money, time and paper as in present day paper media.  These electronic
books will not have to be rebound, reprinted, reshelved, etc.  They will
not have to be reserved or restricted to use by one patron at a time.
All materials will be available to all patrons from all locations.

The use of this type of library will benefit even more greatly in the
presence of librarians, as the amount of information shall be so much
greater than that available in present day libraries that the patron
will benefit even more greatly than today in their pursuit of knowledge.

So, we call on all interested parties to get involved with the creation
and distribution of electronic texts, whether it's a commitment to
typing, scanning, proofreading, collecting, or whatever you prefer.

Please do not hesitate to send any e-texts you might find to this
address.  If you prefer sending disks, a mailing address follows.

     Michael S. Hart,
     405 West Elm St.,
     Urbana, Il  61801
     Please include a SASLE and/or donation.

The easiest way for you to find out about Project Gutenberg is to
subscribe via the Gutnberg listserver.  To do this send the following
message to `listserv@uiucvmd.bitnet':

     SUB GUTNBERG YOUR NAME (Your name must have at least two words)

Please don't hesitate to ask for specific information so it is included
in the Gutnberg mailings.  Please send these question messages
separately from your subscription message.

     Bitnet: hart@uiucvmd 		Internet: hart@vmd.cso.uiuc.edu

(The Gutenberg server is at `gutnberg@uiucvmd.bitnet'.  (Note spelling.)
The Internet address is `gutnberg@vmd.cso.uiuc.edu'---the server only
recognizes subscription commands, others are routed to me.)

We hope to be thanking you soon for your participation.



GNU Project Status Report
*************************

   * GNU OS Work: The Hurd

     We have begun development of the kernel-related aspects of the GNU
     Operating System.  This job consists of writing a set of servers,
     called the GNU Hurd, that run on top of the Mach 3 microkernel from
     CMU.  The Mach microkernel provides a task abstraction, with
     multiple threads within a single task, and powerful IPC and virtual
     memory systems.

     The Hurd consists of the filesystems, the terminal driver, the
     process server, the network protocol servers, and the system call
     interpreter.  The filesystems use a separate Mach task for each
     mounted filesystem, and provide a superset of Unix functionality.
     Unprivileged users will be able to add filesystems of their own
     design to the directory tree in a secure manner.  Mike Bushnell has
     written an implementation of the BSD Fast File System and is now
     debugging it.  This implementation provides access to files as
     shared memory, which permits faster access, and if directly used by
     `stdio' in the C library, eliminates a data copy in a large number
     of I/O intensive programs.  A future release of the GNU C library
     will provide such support.

     Eventually, we will implement other filesystems, including
     traditional ones, like NFS, as well as non-traditional ones such as
     transparent access to FTP, `tar' and `ar' archives.

     The Hurd terminal driver looks like a file server to user programs,
     but it supports a greater variety of `ioctl' calls as well as
     providing both BSD and POSIX terminal functionality.  The terminal
     driver will support terminals layered on serial lines, network
     ports, and other channels.

     The process server offers a process abstraction; it provides
     process and host id's, sends signals to other processes, fetches
     information for ps-like programs, and so on.  The server's primary
     purpose is to function as an information repository; the system
     call interpreter handles complicated aspects of signal delivery.

     Initially, the GNU system will offer only one network protocol
     server, which will provide local domain sockets (called the `Unix
     domain' in BSD).  Eventually, we will add a TCP/IP implementation,
     with major portions of the code borrowed from the BSD
     implementation.

     In the GNU system, system calls are all redirected by the Mach
     microkernel into a shared region of each task's address space, the
     system call interpreter.  It is responsible for the details of
     system call semantics, and performs calls to the various Hurd
     servers to perform the user's request.  The most complicated parts
     of the system call interpreter are those dealing with signals and
     with memory mapped I/O.

     The system is intended to be both source and binary compatible with
     4.4 BSD, and POSIX.1 compliant (when used in conjunction with the
     GNU C Library).  We have a mailing list for discussion of the
     design of Hurd.  Experts in OS design and seasoned Unix wizards are
     welcome to assist in hashing out the details of the interface.

   * GNU Emacs

     GNU Emacs 18.57 is the current version.  The undo facility has been
     completely rewritten and now holds unlimited data temporarily, and
     a user-specified amount for the long term.

     Berkeley is distributing GNU Emacs with the 4.3 BSD distribution,
     and numerous companies distribute it also.

     Emacs 18 maintenance continues for simple bug fixes.  Version 19
     approaches release, counting among its new features: before and
     after change hooks, source-level debugging of Emacs Lisp programs,
     X selection processing (including clipboard selections),
     scrollbars, support for European character sets, floating point
     numbers, per-buffer mouse commands, X resource manager interfacing,
     mouse-tracking, Lisp-level binding of function keys, multiple X
     windows (`screens' to Emacs), a new input system---all input now
     arrives in the form of Lisp objects---and buffer allocation, which
     uses a new mechanism capable of returning storage to the system
     when a buffer is killed.

     Thanks go to Alan Carroll and the people who worked on Epoch for
     generating initial feedback to a multi-windowed Emacs.

     Features being considered for later releases of Emacs include:
     associating property lists with regions of text in a buffer;
     multiple fonts, color, and pixmaps defined by those properties;
     different visibility conditions for the regions, and for various
     windows showing one buffer; hooks to be run if point or mouse moves
     outside a certain range; incrementally saving undo history in a
     file; static menu bars; and better pop-up menus.

   * Shells

     Brian Fox has released version 1.08 of the Bourne Again SHell
     (BASH), which includes an extended emulation of the Korn shell.  It
     has job control, and both Emacs-style and `csh'-style command
     history.  Version 1.08 fixes a number of bugs and has more
     builtins.

     There is a good chance that the `csh' from BSD will be declared
     free software by Berkeley, so we will not need to write that.  In
     any case, BASH rather than `csh' will be the default shell in the
     GNU system.

   * GNU Debugger

     The GNU source-level C and C`++' debugger, GDB, is now being
     distributed along with the GNU C Compiler.

     GDB Version 3.5 is now released.  Version 4 is being tested and
     should be released soon.  Version 3 runs on BSD 4.2 and 4.3 and on
     System V.

     GDB includes a facility for debugging across a serial line,
     together with a stub that can be included in a standalone program
     to communicate across the line with GDB.  This feature is for
     kernel debugging.  We hope eventually to be able to debug across an
     Ethernet.

     New features in version 4 include watchpoints, support for C`++'
     exception handling, cross-debugging (debugging one machine from a
     dissimilar machine), easier porting to different binary file
     formats (see "GNU Flashes"), and more ways of communicating with
     the program being debugged (such as TCP/IP).  Future versions may
     include programming commands (loops, conditionals, and functions
     with arguments).

     Work has been done on support for debugging parallel programs.  We
     hope to get this and merge it eventually.

   * C Compiler

     The GNU C compiler (GCC) version 1 is now quite reliable.  It
     supports ANSI standard C.  NeXT builds its entire system with GCC,
     including its port of the Mach kernel and NFS.  The Open Software
     Foundation uses GCC as the compiler in their operating system, Data
     General uses it for their Aviion 88000-based workstation, Intel
     uses it for their 960 microprocessor, Commodore-Amiga uses it for
     Amiga Unix, Mt. Xinu includes it in their Mach-based Unix for 386
     computers, and Berkeley is adding it to the BSD distribution.  GCC
     has compiled a System V.3 kernel and all of the BSD source tree
     including the kernel.

     Version 1 is being maintained solely to fix bugs.  New work is
     directed to version 2, which now has instruction scheduling, a
     certain amount of CSE between basic blocks, and a new feature for
     classifying instructions.  Function-wide CSE is being finished, as
     is loop unrolling.

     GCC version 2 can generate code for the Acorn, AMD 29000, IBM
     PC/RT, IBM RS/6000, & Motorola 88000 as well as many of the
     machines supported by version 1.  Ports for the IBM 370, HP
     Spectrum, TRON, & NCUBE are coming.  More general calling
     conventions are supported.  On the Sparc, for example, GCC can now
     use the conventions for structure arguments and values.  Not all of
     the version 1 machine descriptions have as yet been updated; some
     do not work, and others do not fully use instruction scheduling and
     delay slots.

     Version 2 supports both C`++' and Objective C on the same basis as
     C itself: the source file name selects the language.  Michael
     Tiemann of Cygnus Support has written the C`++' front end for GCC
     (which is available in version 1 as G`++').  The front end for
     compiling Objective C programs has been donated by NeXT, but we
     need someone to write the support to run them.  C has been extended
     to support nested functions, nonlocal gotos, and the ability to
     determine the address of a label.

     Volunteers are developing front ends for Fortran, Modula 3, Pascal,
     and (slowly) for Ada.  There are mumblings about various other
     languages.  So far, no one has volunteered to write Cobol.

     Please do not call for more information on version 2 until it's
     released.

   * C Library

     Roland McGrath and others continue to work on the C Library.  It
     now contains all of the ANSI C and POSIX.1 functions, and work is
     in progress on POSIX.2 and Unix functions (BSD and System V).  Mike
     Haertel has written a fast `malloc'.  The GNU regular-expression
     functions (`regex') now mostly conform to the POSIX.2 standard.

   * Ghostscript

     The current version of Ghostscript is 2.2.  Recent changes include:
     large speedups, especially for the X driver; support for all the
     PostScript extended color operators, including colorimage; much
     more accurate graphics algorithms; "band list" technology that
     allows Ghostscript to drive high resolution printers with limited
     memory; and "save" and "restore", which were the major elements of
     the PostScript language not implemented before.

     Right now, Ghostscript accepts commands in PostScript and executes
     them by drawing on an X window or by writing a file that can be
     directly printed.  GNU volunteers are working on previewers for
     multi-page files; we hope one will be available soon.

     Ghostscript also includes a C-callable graphics library (for client
     programs that do not want to deal with the PostScript language),
     and also supports IBM PCs and compatibles with EGA or VGA graphics
     (but do not ask the FSF staff any questions about this; we do not
     use PCs and do not have time to learn anything about them).

   * GNU Graphics

     The GNU graphics utilities are a set of programs for plotting
     scientific data.  They provide support for displaying GNU plot
     files on Tektronix 4010, PostScript, and X window system compatible
     output devices.

   * JACAL

     Aubrey Jaffer is writing JACAL, a symbolic mathematics system.
     Currently, it can eliminate variables from sets of equations,
     substitute for variables, simplify expressions containing radicals,
     do some matrix operations, and compute derivatives.

     JACAL runs in Scheme or Common Lisp.  A small and fast Scheme
     implementation for JACAL which runs on Unix, VMS, and MS-DOS
     machines is available via anonymous FTP from `altdorf.ai.mit.edu'
     as the file `archive/scm/scm2d.tar.Z'.  JACAL is available from
     `altdorf' as `archive/scm/jacal0-2.tar.Z'.  The Internet address is
     `18.43.0.246'

     To receive an IBM PC floppy disk with the source and executable
     files, send $50 to Aubrey Jaffer, 84 Pleasant St., Wakefield MA
     01880, USA.

   * groff

     James Clark has written `groff'---GNU `troff' and related programs.
     Currently, `groff' includes `troff', `pic', `tbl', `eqn', drivers
     for Postscript and typewriter-like devices, a driver producing TeX
     `dvi' format, an X11 previewer (based on the MIT X11R4 `xditview'),
     and the `-man', `-ms', and `-me' macros.  The `groff' program is
     written in C`++'.  It has many features not found in most versions
     of `troff' including: long names for strings, macros, diversions,
     number registers, environments, and fonts; no fixed, arbitrary
     limits; high-quality mathematical typesetting (using algorithms
     derived from TeX); much better error handling; pairwise kerning;
     high-quality hyphenation (using TeX's hyphenation algorithm); TeX
     support in `pic'.

     Work is underway on the `-mm' macros and `refer'.  Possible new
     projects include: the `grap' preprocessor (borrowing code from
     `pic'); the `pm' page-makeup postprocessor and associated `-mpm'
     macro package.  More work is needed on the documentation, which now
     assumes that the user already has the Unix versions of the
     documentation.

   * Oleo

     Jay Fenlason is writing a spreadsheet named Oleo (because it's
     better for you than the more expensive spreadsheet).

     Currently, Oleo reads and writes SC and Multiplan SYLK files, and
     it is fairly simple to teach it new formats.  Oleo has a full set
     of spreadsheet expressions as well as mathematical, financial, and
     string functions.  It provides primitive macro support.  Keys may
     all be rebound.

     Oleo uses the `curses' library and an X11 interface is planned.
     Right now it runs on BSD Unix machines as well as IBM PCs and
     compatibles.

   * Berkeley and GNU project cooperating

     Besides GNU Emacs, the upcoming 4.4 BSD release will contain the C
     compiler suite from the GNU project---GCC is better than the
     alternative, supports ANSI C, and is freely available.

     4.4 BSD may contain GAWK as well.

   * Some parts of BSD are becoming free

     The developers of Berkeley Unix decided several years ago to
     release various parts of it (those which do not contain AT&T code)
     separately as free software.  This includes substantial programs
     which we hope to use in GNU, such as TCP/IP.

     The freed parts of BSD are now on our compiler tape.



GNU in Japan
************

Mieko, `h-mieko@sra.co.jp', & Nobuyuki Hikichi, `hikichi@sra.co.jp',
continue to work on the GNU Project in Japan.  They translate GNU
information, write columns, request donations, and consult with people
about GNU.  Recently they translated version one of the GNU General
Public License into Japanese.  They are now looking for a lawyer to
volunteer to review their translation of the new GNU Library General
Public License.

Many groups in Japan are redistributing GNU software, including JUG (a
PC user group), Nikkei Business Publications and ASCII (publishers),
Fujitsu FM Towns, and the Japan Unix Society.  Anonymous UUCP is also
now available in Japan.  Contact `toku@dit.co.jp' for more information.



GNU Wish List
*************

Wishes for this issue are for:

   * Companies to lend us capable programmers and technical writers for
     at least six months.  True wizards may be welcome for shorter
     periods, but we have found that six months is the minimum time for
     a good programmer to finish a worthwhile project.

   * Professors who might be interested in sponsoring or hosting
     research assistants to do GNU development, with FSF support.

   * Someone to finish the `smail' mail delivery system.

   * A Sun QIC-150 cartridge tape drive; hard disks for IBM RTs.

   * Volunteers to help write programs and documentation.  Send mail to
     `gnu@prep.ai.mit.edu' for the task list and coding standards.

   * Speech and character recognition software (if the devices aren't
     too weird), with the device drivers (if possible).  This would help
     the productivity of at least one partially disabled programmer we
     know.

   * Ideas for good articles in future GNU's Bulletins.  We particularly
     like to highlight organizations involved with free information
     exchange.

   * Copies of newspaper and journal articles mentioning the GNU Project
     or GNU software.  Send these to the address on the front cover, or
     send a citation to `gnu@prep.ai.mit.edu'.

   * Money, as always.  Please remember, donations are tax-deductible.
     With the latest donations, we have been able to expand our staff
     again.  With the increased staff we have an even greater need for
     donations.

     One way to give us a small amount of money is to order a
     distribution tape or two.  This may not count as a donation for tax
     purposes, but it can qualify as a business expense.



Help Keep Government Software Free
**********************************

by Richard Stallman

For 200 years, the US copyright system has placed everything written by
the federal government in the public domain.  This makes sense: we have
all paid for it, so we should all own it.

Now there is a move to change this.  If it succeeds, quite a lot of
software that would be free today will be sold instead.  We will pay to
develop the software, and then we'll have to pay again to use it.  And
the GNU system won't be able to use it, since it won't be free.

We think this is scandalous.  If you agree, please help prevent it, by
writing to Congress:

     House Subcommittee on Intellectual Property
     2137 Rayburn Building
     Washington, DC 20515



GNU Software Available Now
**************************

We offer Unix software source distribution tapes in `tar' format,
including the special cartridge tapes used by HP/UX and IBM RS/6000
systems (an Emacs binary is on the RS/6000 tape).  We also offer VMS
tapes for GNU Emacs and GNU C that include sources and VMS executables.

See the order form inside the back cover for details about media, etc.
Note that the contents of the 1600bpi 9-track tapes and cartridge tapes
for UNIX systems are the same.  Only the media are different.



Contents of the Emacs Tape
--------------------------

The software on this release tape is considered fairly stable, but as
always, we welcome your bug reports.

   * GNU Emacs

     In 1975, Richard Stallman developed the first Emacs, an extensible,
     customizable real-time display editor.  GNU Emacs is his second
     implementation of Emacs.  It's the first Emacs available on Unix
     systems that offers true Lisp---smoothly integrated into the
     editor---for writing extensions.  It also provides a special
     interface to MIT's free X window system.  The current version of
     Emacs is 18.57.

     GNU Emacs has been in widespread use since 1985 and often displaces
     proprietary implementations of Emacs because of its greater
     reliability as well as its additional features and easier
     extensibility.  DEC, Berkeley, and NeXT are all distributing Emacs
     with their systems.

     GNU Emacs (as of version 18.57) runs on many Unix systems: Alliant,
     Altos 3068, Amdahl (UTS), Apollo, AT&T (3B machines & 7300 PC), CCI
     5/32 & 6/32, Celerity, Convex, Digital (DECstation 3100; DECstation
     5000; Vax (BSD, System V, or VMS)), Motorola Delta (System V/68
     release 3), Dual, Elxsi 6400, Encore (DPC, APC, & XPC), Gould, HP
     (9000 series 200, 300 700, & 800 (Spectrum) but not series 500),
     HLH Orion 1/05, IBM (RT/PC (4.2 & AIX); PS/2 (AIX (386 only)) &
     RS/6000 (AIX)), Integrated Solutions (Optimum V with 68020 &
     VMEbus), Intel 80386 (BSD, Microport, System V, Xenix & PS/2); not
     MS-DOS), Iris (2500, 2500 Turbo, & 4D), LMI (Nu), Masscomp, MIPS,
     National Semiconductor 32000, NCR (Tower 32), Nixdorf Targon 31,
     Plexus, Pmax, Prime EXL, Pyramid, Sequent (Balance & Symmetry),
     SONY News, Stride (system release 2), Sun (1, 2, 3, 4,
     SparcStation, & 386i), Stardent 1500 & 3000, Tahoe, Tandem
     Integrity S2, Tektronix (NS32000 & 4300), Texas Instruments (Nu),
     Titan P2 & P3, Ustation E30 (SS5E), Wicat, and Whitechapel (MG1).

     GNU Emacs is described by the `GNU Emacs Manual' and the `GNU Emacs
     Lisp Reference Manual', which come with the software in Texinfo
     source (see "GNU Documentation" below).

   * MIT Scheme and Yale T

     Scheme is a simplified, lexically scoped dialect of Lisp.  It was
     designed at MIT and other universities to teach students
     programming and to research new parallel programming constructs and
     compilation techniques.  MIT Scheme is written in C and runs on
     many Unix systems.  It now conforms to the "Revised^3 Report On The
     Algorithmic Language Scheme" (MIT AI Lab Memo 848a), for which TeX
     source is included.

     T is a variant of Scheme developed at Yale University; it is
     intended for production use in program development.  T contains a
     native-code optimizing compiler that produces code that runs at
     speeds comparable to the speeds of programs written in conventional
     languages.  It runs on BSD Vaxes, 680x0 systems, Sparc
     workstations, MIPS R2000 workstations (including the Decstation
     3100), and NS32000 machines (including the Encore Multimax).  T is
     written in itself and cannot be bootstrapped without a binary
     (included), but it is great if you can use it.  Some documentation
     is included.

   * `texi2roff'

     `texi2roff', written by Beverly Erlebacher, translates GNU Texinfo
     files so that they can be printed by the `[gnt]roff' programs
     utilizing the `mm', `ms', or `me' macro packages.  It is included
     on all UNIX tapes so people who do not have a copy of TeX can print
     out GNU documentation.

   * Debugger

     Version 3.5 of GDB, the GNU debugger, runs under BSD 4.2 and 4.3 on
     Vaxes and Suns (2, 3, 4, & SparcStation), Altos, Convex, HP
     9000/300's under BSD, HP 9000/320's under HP/UX, System V 386
     machines (with either GNU or native object file format), ISI
     Optimum V, Merlin under Utek 2.1, SONY News, Gould NPL & PN
     machines, Pyramid, Sequent Symmetry (a 386 based machine), and
     Encore under Umax 4.2.

     GDB features incremental reading of symbol tables (for fast startup
     and less memory use), command-line editing, the ability to call
     functions in the program being debugged, remote debugging over a
     serial line, a value history, and user-defined commands.  It can be
     used to debug C, C`++', and Fortran programs.  It comes with a
     Texinfo manual (see "GNU Documentation" below).

   * Data Compression Software

     Some of the contents of our tape distribution are compressed;
     currently indicated by a `.Z' suffix.  We include software on the
     tapes to compress/decompress these files.  Due to patent troubles
     with `compress', we are beginning to switch to `yabba', indicated
     by a `.Y'.  The online distribution on `prep.ai.mit.edu' will be
     changed first.  Each tape includes the program that will uncompress
     the compressed files on it.

   * GNU Chess and NetHack

     GNU Chess is a chess program, now at version 3.1.  It has text-only
     and X display interfaces.  NetHack is a display--oriented adventure
     game similar to Rogue.  We distribute NetHack Version 2.3.



Contents of the Compiler Tape
-----------------------------

The programs on this tape are becoming stable.  As always, we solicit
your comments and bug reports.  This tape used to be known as the
"Pre-Release" or "Beta Test" tape.

   * GNU CC and `gperf'

     The GNU C compiler is a fairly portable optimizing compiler.  It
     supports full ANSI C.  The current version is 1.40.  It generates
     good code for the 32000, 680x0, 80386, Alliant, Convex, Tahoe, and
     Vax CPUs, and for these RISC CPUs: i860, Pyramid, Sparc, and SPUR.
     The MIPS RISC CPU is also supported.  Machines using these CPUs
     include 386 (AIX), Alliant FX/8, Altos 3068, Apollo 68000/68020
     (Aegis), AT&T 3B1, Convex C1 and C2, DECstation 3100 and 5000, DEC
     VAX, Encore MultiMax (NS32000), Genix NS32000, Harris HCX-7 and
     HCX-9, HP-UX 68000/68020, HP (BSD), IBM PS/2 (AIX), Intel 386
     (System V, Xenix, BSD, but not MS-DOS), Iris MIPS machine, ISI
     68000/68020, MIPS, NeXT, Pyramid, Sequent Balance (NS32000),
     Sequent Symmetry (i386), SONY News, Sun (2, 3 (optionally with
     FPA), 4, SparcStation, & Sun386i).  See "GNU Project Status Report"
     for more detail.

     A good programmer will be able to make a cross compiler on most of
     these systems to cross-compile to most of these architectures.
     Most of the work will be with the compiler support tools, not GCC
     itself.

     The Texinfo source of the `GCC Manual' is included with the
     compiler.  The manual (not yet published on paper) describes how to
     run and install the GNU C compiler, and how to port it to new
     processors.  It describes new features and incompatibilities of the
     compiler, but people not familiar with C will also need a good book
     on C.  A perfect hash-table generation utility, `gperf', is also
     included with the compiler.

   * Assembler, Object File Utilities, dld, and COFF Support

     The GNU assembler (GAS) is a fairly portable, one pass assembler
     that is almost twice as fast as Unix `as'.  It is now at version
     1.39 and works for 32x32, 680x0, 80386, Sparc (Sun 4), and Vax.

     We have free versions of `ar', `ld', `nm', `size', `gprof',
     `strip', and `ranlib'.  The GNU linker `ld' is fast and the only
     linker with source-line numbered error messages for
     multiply-defined symbols and undefined references.

     We also now distribute a dynamic linker, `dld', written by W.
     Wilson Ho.  This is a library which you link with your program
     which then enables it to dynamically load object files into the
     running binary.

     The entire suite of GNU software tools can be run on System V,
     replacing COFF entirely.  The GNU tools can operate on BSD object
     files with a COFF header the System V kernel will accept.
     `robotussin' is supplied for converting standard libraries to this
     format.

   * `flex' and Bison

     `flex' is a mostly-compatible replacement for the Unix `lex'
     scanner generator written by Vern Paxson of the Lawrence Berkeley
     Laboratory.  `flex' generates far more efficient scanners than
     `lex' does.  Bison is an upwardly compatible replacement for the
     parser generator Yacc, with additional features.  The `Bison
     Manual' comes with the software in Texinfo form (see "GNU
     Documentation" below).

   * `g++', `libg++', and NIH Class Library

     G`++' is a set of changes for GCC that compiles C`++', the
     well-known object-oriented language.  As far as possible, G`++' is
     kept compatible with the evolving draft ANSI standard, but not with
     `cfront', as the latter has been diverging from ANSI.  G`++' comes
     with the `GNU G`++' Users Guide' (not yet published on paper).
     G`++' compiles source quickly, provides good error messages, and
     works well with GDB.  Since G`++' depends on GCC, it must be used
     with the correspondingly numbered version of GCC.  GDB Version 3
     includes support for debugging C`++' code, which merges in the
     functionality of the old program GDB`+'.

     The GNU C`++' library, `libg++', is an extensive, documented
     collection of C`++' classes and support tools for use with G`++'.

     The NIH Class Library (formerly known as OOPS (Object-Oriented
     Program Support)) is a portable collection of classes similar to
     those in Smalltalk-80 that has been developed by Keith Gorlen of
     NIH, using the C`++' programming language.

     Note that Interviews has been dropped from this tape since it
     appears on the "optional" X tape (See "Contents of the X11 Tapes"
     below).

   * `make' and BASH

     GNU `make' has 99.44% of the features of the BSD and System V
     versions of `make', and compiles with POSIX.2, as well as many of
     our own extensions.  These extensions include parallelism,
     conditional execution, and text manipulation.  Version 3.60 of GNU
     `make' is fairly stable.  Version 4 will include many functional
     improvements.  Texinfo source for the GNU `make' manual is provided
     (see "GNU Documentation" below).

     The GNU Shell, BASH (for Bourne Again SHell), is compatible with
     with the Unix `sh' and offers many extensions found in `csh' and
     `ksh'.  It has job control, `csh'-style command history, and
     command-line editing (with Emacs and `vi' modes built-in and the
     ability to rebind keys).  The current version is 1.08, and should
     compile on most systems.

   * GAWK and `tar'

     GAWK is GNU's version of the Unix AWK utility; it comes with a
     Texinfo manual (see "GNU Documentation" below).  GNU `tar' includes
     multivolume support, the ability to archive sparse files, automatic
     compression and decompression of archives, remote archives, and
     special features to allow `tar' to be used for incremental and full
     backups.

   * RCS and CVS

     The Revision Control System, now at version 5.5, is used for
     version control and management of large software projects.  The
     Concurrent Version System, CVS, manages software revision and
     release control in a multi-developer, multi-directory, multi-group
     environment.  It works best on top of RCS Versions 4 and above, but
     will parse older RCS formats with the loss of CVS's fancier
     features.  See Berliner, Brian, "CVS-II: Parallelizing Software
     Development," `Proceedings of the Winter 1990 USENIX Association
     Conference.'

   * `diff' and `grep'

     These programs are GNU's versions of the Unix programs of the same
     name.  They are much faster than their traditional Unix
     counterparts.

   * Ghostscript and `gnuplot'

     Ghostscript is GNU's graphics language that is almost fully
     compatible with Postscript.  See the section in the "GNU Project
     Status Report."

     `gnuplot' is an interactive program for plotting mathematical
     expressions and data.  Oddly enough, the program was neither done
     for nor named for the GNU Project---the name is a coincidence.

   * Freed Files from the U.C. Berkeley 4.3-tahoe Release

     These files have been declared by Berkeley to be free of AT&T code,
     and may be freely redistributed.  They include complete sources for
     some programs and library routines; and partial sources for many
     others.

     We are not yet distributing the files marked free on the 4.3-reno
     release.  When Berkeley releases its next tape, we plan to
     distribute the free files from it instead of the 4.3-tahoe files.
     Note that much more will be free on that tape than currently on the
     4.3-tahoe or 4.3-reno tapes.

   * File Utilities and Miscellaneous

     The file utilities are now included here.  GNU `indent' has been
     added to this tape as well.  We also include `perl' version 4.0,
     `c-perf' version 2.0 (a C version of `g-perf'), `f2c' (a Fortran to
     C translator), `gdbm' library, GNU `indent', data compression
     software, GDB, `texi2roff', and GnuGo (the game of Go (Wei-Chi)) on
     this tape.



Contents of the X11 Tapes
-------------------------

The two X11 tapes contain Version 11, Release 4 of the MIT X window
system.  The first FSF tape contains the contents of both tape one and
tape two from the MIT X Consortium: the core software and documentation,
and the contributed clients.  FSF refers to its first tape as the
`required' X tape since it is necessary for running X or GNU Emacs under
X.  (The Consortium refers to its first two tapes as the
`required/recommended' tapes.)

The second, `optional,' FSF tape contains the contents of tapes three
and four from the MIT X Consortium: contributed libraries and other
toolkits, the Andrew software, games, etc.  (The Consortium refers to
its last two tapes as `optional' tapes.)



VMS Emacs and Compiler Tapes
----------------------------

We offer a VMS tape of the GNU Emacs editor, and a separate VMS tape
containing the GNU C compiler.  The VMS compiler tape also contains
Bison (needed to compile GCC), GAS (needed to assemble GCC's output),
and some library and include files.  Both VMS tapes include executables
>from which you can bootstrap, because the DEC VMS C compiler has bugs
and cannot compile GCC.

Please do not ask us to devote effort to additional VMS support, because
it is peripheral to the GNU Project.



GNU Documentation
*****************

GNU manuals are intended to explain the underlying concepts, describe
how to use all the features of each program, and give examples of
command use.  These manuals, provided with our software, are also
available in hardcopy; see the order form inside the back cover.

GNU documentation is distributed as Texinfo source files, which yield
both typeset hardcopy and on-line presentation via the menu-driven Info
system.  The Texinfo Manual explains the markup language used to do
these.  It tells you how to make tables, lists, chapters, nodes,
indices, and cross references, and how to use Texinfo mode in GNU Emacs
and catch mistakes.

The GDB Manual explains how to use the GNU Debugger.  It describes
running your program under debugger control, how to examine and alter
data as well as modify the flow of control within the program, and how
to use GDB through GNU Emacs, with auto-display of source lines.

The Emacs Manual describes the use of GNU Emacs.  It also explains
advanced features, such as outline mode and regular expression search.
The manual details special modes for programming in languages such as C
and Lisp, how to use the tags utility, how to compile and correct code,
and how to make your own keybindings and other elementary
customizations.

The Emacs Lisp Reference Manual covers the GNU Emacs Lisp programming
language in great depth.  It goes into data types, control structures,
functions, macros, byte compilation, keymaps, windows, markers,
searching and matching, modes, syntax tables, and operating system
interface, etc.

The Termcap Manual, often described as "Twice as much as you ever wanted
to know about Termcap," details the format of the Termcap database, the
definitions of terminal capabilities, and the process of interrogating a
terminal description.  This manual is primarily for programmers.

The Bison Manual teaches how to write grammars that convert into C coded
parsers.  You need no prior knowledge of parser generators.  The
concepts are described along with a series of increasingly complex
examples.

The GAWK Manual describes how to use the GNU implementation of AWK.  It
is written for someone who has never used AWK, and describes all the
features of this powerful string manipulation language.

The Make Manual describes GNU Make, a program used to rebuild parts of
other programs when and as needed.  The manual covers makefile writing,
which specifies how a program is to be compiled and its dependencies.



How to Get GNU Software
***********************

All the software and publications from the Free Software Foundation are
distributed with permission to copy and redistribute.  The easiest way
to get GNU software is to copy it from someone else who has it.

If you have Internet access, you can get the latest software via
anonymous FTP from the host `prep.ai.mit.edu' (the IP address is
`18.71.0.38').  Get file `/pub/gnu/GETTING.GNU.SOFTWARE' for more
information.

If you cannot get the software one of these ways, or if you would like
to contribute some funds to our efforts and receive the latest versions,
we distribute tapes for a copying and distribution fee.  See the order
form below.

There are also third party groups that distribute our software: they do
not work with us, but have our software in other forms.  For your
convenience, we list some of them here (also see "Free Software for
Microcomputers" below).  Please note that the Free Software Foundation
is not affiliated with them in any way, and is not responsible for
either the currency of their versions or the swiftness of their
responses.

These TCP/IP Internet sites provide GNU software via anonymous `ftp'
(use your `ftp' program, user name: `anonymous', password: YOUR NAME):

     wsmr-simtel20.army.mil (under `PD:<UNIX.GNU>'), sh.cs.net,
     ftp.cs.titech.ac.jp, louie.udel.edu, nic.nyser.net,
     ftp.funet.fi, sunic.sunet.se, freja.diku.dk, mcsun.eu.net,
     gatekeeper.dec.com, mango.miami.edu (VMS G`++'),
     cc.utah.edu (VMS GNU Emacs), labrea.stanford.edu,
     scam.berkeley.edu, itstd.sri.com, wuarchive.wustl.edu,
     jaguar.utah.edu, a.cs.uiuc.edu, and uunet.uu.net.

Those on the SPAN network can ask rdss::corbet.

Information on how to obtain some GNU programs using UUCP is available
via electronic mail from the following people.  Ohio State also posts
their UUCP instructions regularly to newsgroup `comp.sources.d' on
USENET.

     hao!scicom!qetzal!upba!ugn!nepa!denny, uunet!hutch!barber,
     acornrc!bob, hqda-ai!merlin, postmaster@uunet.uu.net,
     src@scuzzi.in-berlin.org, james@bigtex.cactus.org,
     and karl@tut.cis.ohio-state.edu (or `osu-cis!karl)'.



Free Software for Microcomputers
********************************

We do not provide support for GNU Software on microcomputers because it
is peripheral to the GNU Project.  However, we are willing to publish
information about groups who do so.  If you are aware of any such
efforts, please send the details, including archive sites and mailing
lists, to `gnu@prep.ai.mit.edu' or the postal address on the front
cover.

   * GNU Software on Apple computers

     In lawsuits, Apple claims the power to stop people from writing any
     program that has a user interface that works even vaguely like the
     Macintosh's.  If Apple triumphs in the courts, it will create for
     itself a new power over the public that will enable it to put an
     end to free software.  So long as Apple continues to try to
     establish this kind of monopoly, we will not provide any support
     for Apple machines.

   * GNU Software on the Amiga

     Ports to the Amiga of many GNU Programs can be anonymously ftped
     from: USA, `karazm.math.uh.edu' directory `~pub/Amiga/Gnu' and
     `titan.ksc.nasa.gov', directory `~pub/amiga'; Europe,
     `ftp.funet.fi', directory `~pub/amiga/gnu'.  Offers to help and
     info on: the GCC port and related projects to Leonard Norrgard,
     `vinsci@nic.funet.fi'; and the GNU Emacs port to: Mark D. Henning,
     `henning@stolaf.edu'.  More information is in
     `/pub/gnu/MicrosPorts/Amiga', obtainable via anonymous `ftp' on
     `prep.ai.mit.edu'.

   * GNU Software on the Atari

     Ports to Atari TOS and Atari Minix of many GNU Programs are
     available via anonymous `ftp' from `atari.archive.umich.edu' which
     is maintained by Howard Chu, `hyc@hanauma.jpl.nasa.gov'.  These
     ports are discussed on the two USENET newsgroups
     `comp.sys.atari.st' and `comp.sys.atari.st.tech'.  To get the
     former group via e-mail, you can ask
     `info-atari16-request@score.stanford.edu'.

   * GNUish MS-DOS project

     Contact `info-gnu-msdos-request@sun.soe.clarkson.edu' for
     information on ports of GNU programs to MS-DOS and related mailing
     lists.  More information is in `/pub/gnu/MicrosPorts/MSDOS',
     obtainable via anonymous `ftp' on `prep.ai.mit.edu'.

   * Freemacs, an Extensible Editor for MS-DOS

     by Russ Nelson, `nelson@sun.soe.clarkson.edu'

     I have written a small but programmable editor for MS-DOS that is
     somewhat compatible with GNU Emacs.  It is called Freemacs, and is
     programmed in "MINT", a string processing language, but tries to
     emulate GNU Emacs.  It does a remarkably good job for a 21K
     executable---good enough, in fact, that I recommend that Freemacs
     users buy the GNU Emacs manual.  Of course, the bulk of the
     emulation is done in the MINT code, totaling 150K.

     You may freely copy this software.  I ask only that you return
     improvements to me for incorporation into the package for all of
     us.  The distribution is available from these sources: anonymous
     `ftp' the file `/e/freemacs' from host `grape.ecs.clarkson.edu' or
     from host `wsmr-simtel20.army.mil' (under directory
     `PD:<MSDOS.FREEMACS>'); or `CUHUG BBS: (315)268-6667' 1200/2400
     8N1, 24 hrs, file area 25, no registration required to download
     Freemacs; or send $15 (copying fee) to Russ Nelson, 11 Grant St.,
     Potsdam, NY 13676, Phone: (315) 268-6455, specify floppy format:
     `5.25"/1.2 MB'; `5.25"/360K'; or `3.50"/720K.'

     Please do not ask the Free Software Foundation about Freemacs.  FSF
     does not maintain it, and has no information on it other than the
     above.



Thank GNUs
**********

Thanks to all those mentioned above in "GNUs Flashes", the "GNU Project
Status Report" and "GNU Software Available Now".

Thanks to Mr. Ken'ichi Handa for his donation from the Motooka prize.
He won the prize coordinating the development of Nemacs, the Japanese
version of GNU Emacs.  He used the rest of the prize to throw a
thank-you party for all the Nemacs volunteers.

Thanks to Julie Sussman for major work on the BASH manual (not yet
released), and to Chet Ramey for his continuing work on improving BASH.

Thanks to the anonymous GNU users in Japan for their gifts.

Thanks to ASCII Corporation and Village Center Inc both of Japan for
their donations.

Thanks to an anonymous donor for the gift of 5 IBM RT computers.

Thanks to Munin Technologies for their donation of a VAX-11/750 and
other DEC equipment.

Thanks to Clement Moritz for donating two reel to reel tape drives.

Thanks to Cygnus Support for continuing to improve various programs and
for hosting Joseph Arceneaux, as well as other FSF staff.

Thanks to the Artificial Intelligence Laboratory and the Laboratory for
Computer Science at MIT for their invaluable assistance of many kinds.

Thanks to Devon McCullough for technical assistance, to Carol Botteron
for proofreading and other assistance, and to Mieko and Nobuyuki Hikichi
for their invaluable help raising both funds and consciousness in Japan.

Thanks go out to all those who have either lent or donated machines,
including Hewlett-Packard for six 68030 workstations, two 80486
computers, and four Spectrum workstations, Brewster Kahle of Thinking
Machines Corp. for the Sun 4/110, K. Richard Pixley for the AT&T Unix
PC, Doug Blewett of AT&T Bell Labs for two Convergent Miniframes, CMU's
Mach Project for the Sun 3/60, Intel Corp. for their 386 machine, NeXT
for their workstation, the MIT Media Laboratory for the Hewlett-Packard
68020 machine, SONY Corp. and Software Research Associates, Inc., both
of Tokyo, for three SONY News workstations, IBM Corp. for an RS/6000
computer, the MIT Laboratory of Computer Science for the DEC Microvax,
the Open Software Foundation for the Compaq 386, and Delta Microsystems
for an Exabyte tape drive.

Thanks to all those who have contributed ports and extensions, as well
as those who have contributed other source code, documentation, and good
bug reports.  Thanks to those who sent money and offered help.  Thanks
also to those who support us by ordering manuals and distribution tapes.

The creation of this bulletin is our way of thanking all who have
expressed interest in what we are doing.



Free Software Foundation Order Form
***********************************

    This order form is effective June 1, 1991 - February 1, 1992

Prices and contents may change without notice.

Please allow six weeks for delivery (though it won't usually take that
long).

All software and publications are distributed with permission to copy
and to redistribute.

TeX source for each manual is on the appropriate tape; the prices for
tapes do not include printed manuals.

All software and documentation from the Free Software Foundation is
provided on an "as is" basis, with no warranty of any kind.

Quantity  Price  Item

For Unix systems, on 1600 bpi 9-track tape in Unix tar format:

________ $200	GNU Emacs source code and other software.
		The tape includes:
		* GNU Emacs (the extensible, customizable, self-documenting
		  real-time display editor)
		* The GNU Emacs Lisp Reference Manual, as Texinfo source.
		* GDB (The GNU source-level C debugger)
		* MIT Scheme (a dialect of Lisp)
		* T, Yale's implementation of Scheme
		* Nethack (a rogue-like game)
		* GNU Chess (a chess playing program with an interface to X)
		* texi2roff (for printing Texinfo source with [nt]roff)
		* Data Compression Software (to uncompress source on the tape).

________ $200	GNU Compiler source code and related software,
		for Unix systems.  The tape includes:
		* GCC (the GNU C Compiler, including COFF support)
		* Bison (a free, compatible replacement for yacc)
		* gperf (a perfect hash-table generator)
		* G++ (the C++ front end to GCC)
		* lib-g++ (the G++ class library)
		* NIH Class Library (formerly known as OOPS)
		* Gas (the GNU Assembler)
		* GNU object file utilities (ar, ld, make, gprof, size, nm,
		  strip, ranlib, et al.)
		* dld (a dynamic linker)
		* COFF support for GNU software tools 
		* Groff (GNU troff and related programs)
		* GDB (The GNU source-level C debugger)
		* GNU make
		* Bash (GNU's Bourne Again SHell)
		* Gawk (the GNU implementation of the AWK programming language)
		* Flex (Vern Paxson fast rewrite of lex)
		* GNU tar
		* the freed files from the 4.3BSD-Tahoe distribution
		* RCS (Revision Control System)
		* CVS (Concurrent Control System)
		* GNU diff and grep
		* Ghostscript (a Postscript interpreter)
		* Gnuplot (an interactive mathematical plotting program)
		* Perl (a programming language interpreter)
		* f2c  (a FORTRAN to C translator)
		* gdbm library
		* other GNU utilities (file utilities, indent, et al.)
		* GNU GO (the GNU implementation of the game of GO)
		* texi2roff (for printing Texinfo source with [nt]roff)
		* Data Compression Software (to uncompress source on the tape).

________ $200	Required MIT X Window System X11R4, core software and
		documentation, and contributed client software.

________ $200   Optional MIT X Window System X11R4, contributed software
		including libraries, games, Andrew and toolkits.

For Suns and other Unix Systems, on QIC-24 DC300XLP 1/4 inch cartridge
tape, Unix tar format:

________ $210   GNU Emacs and other software, as above.

________ $210	GNU compiler tape, as above.

________ $210	Required MIT X Window System X11R4, as above.

________ $210   Optional MIT X Window System X11R4, as above.

For HP Systems, on 16-track DC600HC 1/4 inch cartridge tape, Unix tar
format:

________ $230   GNU Emacs and other software, as above.

________ $230	GNU compiler tape, as above.

________ $230	Required MIT X Window System X11R4, as above.

________ $230   Optional MIT X Window System X11R4, as above.

For IBM RS/6000 Systems, on DC600A 1/4 inch cartridge tape Unix tar
format:

________ $215   GNU Emacs and other software, as above.
		plus executable files of Emacs.

For VMS systems, on 1600 bpi reel-to-reel 9-track tape in VMS BACKUP
(aka interchange format):

________ $195	GNU Emacs source code and binaries.

________ $195	GNU C compiler source code and binaries.
		Includes Bison and GAS.

GNU Emacs manual, ~300 pages, phototypeset, offset printed, spiral
bound, with a reference card.

________  $20	GNU Emacs manual, unit price for 1 to 5 copies.

________  $13	GNU Emacs manuals, unit price for 6 or more.

GNU Emacs Lisp Reference Manual, ~550 pages, offset printed, spiral bound.

________  $50   A single GNU Emacs Lisp Reference Manual.

________ $200   Box of 5 GNU Emacs Lisp Reference Manuals.

The following documentation:

________   $1	One GNU Emacs reference card, without the manual.

________   $5   Packet of ten GNU Emacs reference cards.

________  $10   GDB Manual, ~70 pages, side stapled.

________  $15	Texinfo Manual, ~200 pages, spiral bound.  Texinfo is GNU's
		structured documentation system, included with GNU Emacs.
		Texinfo is used to produce both on-line and printed documents.
		This manual describes how to write Texinfo documents.

________  $10   Termcap Manual, ~60 pages, side stapled.  Documents the
		termcap library and GNU's extensions to it.  The GNU termcap
		library is included with GNU Emacs.

________  $10   Bison Manual, ~90 pages, side stapled.

________  $15   Gawk Manual, ~150 pages, spiral bound.

________  $15   Make Manual, ~120 pages, spiral bound.
--------

________  Sub Total

________	In Massachusetts: add 5% sales tax, or give tax exempt number.

We pay for shipping via UPS ground transportation in the contiguous 48
states and Canada.

________   In Alaska, Hawaii, or Puerto Rico, for shipping:
		- For Emacs Lisp Reference manuals, add $5 each,
		  or $20 per box.  For all other items, add $5 base charge,
		  then $1 per item except Emacs reference cards.
	   If outside of U.S., Canada and Puerto Rico, for shipping costs:
		- for tapes or unboxed manuals, please add $15 base
		  charge, and then add $15 more for each tape or unboxed
		  manual (not reference cards) in the order:
________	  Shipping cost for tapes and unboxed manuals = $15 + $15 * n;
		- for each box of Emacs Lisp Reference manuals,
________	  please add $70.

________   Optional tax deductible donation.
--------

________   Total paid

Orders are filled upon receipt of check or money order.  We do not have
the staff to handle the billing of unpaid orders.  Please help keep
our lives simple by including your payment with your order.

Please make checks payable to: "Free Software Foundation".

Please mail orders to:

   Free Software Foundation, Inc.
   675 Massachusetts Avenue
   Cambridge, MA  02139, USA

   +1 617-876-3296


This Order Form is EFFECTIVE June 1, 1991 - February 1, 1992



Name: 
      ----------------------------------------------------------------

Mail Stop/Dept. Name
                     -------------------------------------------------

Organization:
              --------------------------------------------------------

Street Address:
                ------------------------------------------------------


----------------------------------------------------------------------

City / State / Province:
                    	 ---------------------------------------------

Zip Code / Postal Code /Country:
                                --------------------------------------

In case of a problem with your order, or for overseas customs agents,
please add your voice telephone number (not your FAX's number):


                              ----------------------------------------

For orders outside the US:  Orders MUST be paid in US dollars.  You are
responsible for paying all duties, tariffs, and taxes.  If you refuse
to pay the charges, the shipper will return or abandon your order.

Please write the telephone number that you want custom agents to call
in the space provided above.

This Order Form is EFFECTIVE June 1, 1991 - February 1, 1992



----------------------------------------------------------------------


                                                     -------
                                                    |       |
     Free Software Foundation, Inc.                 | stamp |
     675 Massachusetts Avenue                       |       |
     Cambridge, MA  02139  USA                      | here  |
                                                    |       |
                                                     -------










----------------------------------------------------------------------
