GNU's Bulletin is the sporadically published newsletter of the
Free Software Foundation, bringing you news about the GNU project.
Please note: we have moved to a new address:
Free Software Foundation, Telphone: (617) 876-3296
675 Massachusetts Avenue, Electronic mail: gnu@prep.ai.mit.edu
Cambridge, MA 02139 USA
Gnu's Who 2
What Is the Free Software Foundation? 3
Gnu's Flashes 5
GNU C++
9
GNU Software Available Now 11
The GDB Song 13
Why Was Copyright Invented? 14
When Programs Become Available 15
GNU Wish List 16
How To Get GNU Software 17
Thank GNUs 18
GNU Order Form 19
The GNU Team has grown larger in the last few months: Brian Fox and
Opus Goldstein have joined Jay Fenlason as the only employees of
the Foundation. Most recently, Brian created a stand-alone texinfo
formatter and browser and is now working on sh
, the shell. Stacey
is running the mail room, distributing tapes and manuals and generally
doing every thing that programmers do not do (e.g. interfacing with the
"real" world). Jay Fenlason has just finished the profiler and is
now working on miscellaneous utilities.
Richard Stallman continues to do countless tasks, including refining the C compiler, GDB, GNU Emacs, etc.; he has also written a termcap manual and several other documents. Robert J. Chassell publishes our manuals, and serves as the Foundation's treasurer. Chris Hofstader has become our fund raiser. (Don't be surprised if he asks you for money.) Finally, Len Tower continues to handle electronic administrivia (mailing lists, information requests, and system mothering).
Copyright (C) 1988 Free Software Foundation, Inc.
Editors: Stacey (Opus) Goldstein, Robert J. Chassell, Leonard Tower Jr.
Writers: Richard M. Stallman, Opus Goldstein, Michael Tiemann
Illustrations: Etienne Suvasa, Jean-Marie Diaz
Order form: Karl Berry, Kathryn Hargreaves
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.
by Richard M. Stallman
The Free Software Foundation is dedicated to eliminating restrictions on copying, redistribution, understanding and modification of software.
The word "free" in our name does not refer to price; it refers to freedom. First, the freedom to copy a program and redistribute it to your neighbors, so that they can use it as well as you. Second, the freedom to change a program, so that you can control it instead of it controlling you; for this, the source code must be made available to you.
The Foundation works to give you these freedoms by developing free compatible replacements for proprietary software. Specifically, we are putting together a complete, integrated software system "GNU" that is upward-compatible with Unix. When it is released, everyone will be permitted to copy it and distribute it to others; in addition, it will be distributed with source code, so you will be able to learn about operating systems by reading it, to port it to your own machine, to improve it, and to exchange the changes with others.
There are already organizations that distribute free CPM and MSDOS software. The Free Software Foundation is doing something different.
It is necessary to be compatible with some widely used system to give our system an immediate base of trained users who could switch to it easily and an immediate base of application software that can run on it. (Eventually we will provide free replacements for proprietary application software as well, but that is some years in the future.)
We chose Unix because it is a fairly clean design which is already known to be portable, yet whose popularity is still rising. The disadvantages of Unix seem to be things we can fix without removing what is good in Unix.
Why not imitate MSDOS or CP/M? They are more widely used, true, but they are also very weak systems, designed for tiny machines. Unix is much more powerful and interesting. When a system takes years to implement, it is important to write it for the machines that will become available in the future; not to let it be limited by the capabilities of the machines that are in widest use at the moment but will be obsolete when the new system is finished.
Why not aim for a new, more advanced system, such as a Lisp Machine? Mainly because that is still more of a research effort; there is a sizeable chance that the wrong choices will be made and the system will turn out not very good. In addition, such systems are often tied to special hardware. Being tied to one manufacturer's machine would make it hard to remain independent of that manufacturer and get broad community support.
Software Research Associates, a Japanese software house, has donated $10,000 to the GNU project. In addition they plan to send us a Sun-like SONY workstation and lend us a staff programmer for 6 months.
This represents the influence of Kouichi Kishida, who organized the Japanese Sigma project (to stimulate Unix competence in Japan), only to conclude later that the project had gone astray and that a "grass roots movement" was needed instead. We hope to be this movement.
by Richard M. Stallman
objects=$(subst .c,.o,$(wildcard *.c)) foo: $(objects) $(CC) -o foo $(objects) $(LDFLAGS)
malloc
, regexp
and
termcap
libraries that have existed for some time.
Meanwhile, Steve Moshier has contributed a full series of mathematical
library functions.
++
, the GNU C++
compiler.
Michael Tiemann of MCC has written a C++
compiler as an extension
of GNU C. This is the first compiler that compiles C++
directly
instead of preprocessing it into C.
G++
is now being tested at several sites. Michael believes it is as
reliable as AT&T's C++
preprocessor, but this still leaves a long way
to go before it is a solid product.
G++
comes with GDB+
, a version of GDB that supports C++
class
operations in its expression evaluator.
brings Object Oriented Programming to GNU
by Michael Tiemann
C++
is among the most popular languages for object-oriented
programming, for two reasons: it is nearly a superset of C, thus
making it easily accessible to the C user community, and it is
supported by AT&T, which leads a standards-hungry public to believe
that, by subscribing to C++
(as opposed to SmallTalk, Objective C, or
many other alternatives), they are following "the standard". About
a million lines of code have been written in C++
.
Last summer, I was faced with the task of selecting a language to use for a
new computer architecture project. So strong was the influence of
C++
, that the only decision I could make was "which one".
C++
from AT&T looked like the logical choice, except for two
problems: it is proprietary software, and it is a preprocessor which
converts C++
code into C code. This is slow and means that the
constructs and concepts of C++
aren't available in the debugger.
I decided to see whether we could quickly modify GNU C into a C++
compiler that has the quality people expect from compilers for other
languages, such as easy retargetability and source-level debugging
support. I could--and I have.
The GNU C++
compiler is intended to implement the C++
programming language, as specified in Stroustrup's reference manual. Since
most of the GNU C compiler is language-independent, it only took six months
to make a general beta-test release. There are still gaps and bugs, but I
am working hard on finishing it. All the optimizations of GNU C apply
equally to C++
. I have also added C++
-inspired
optimizations. Some of them, such as inlining functions, will also work in
some cases for C; others, such as optimizing virtual functions, are
strictly C++
.
GNU C++
is not only the first free C++
compiler; it is the
first direct compiler for C++
available at any price, and it
is the first C++
implementation to interface with a C++
source-level debugger (GDB+
, a modification of the existing GNU
debugger).
GNU C++
is therefore remarkable from a technical point of view, but
it is even more remarkable organizationally, because it is free
software whose development was paid for by the Microelectronics and
Computer Technology Corporation (MCC), a consortium established in
1982 to do long range research for around 20 shareholder companies.
In January, six months after I started working on GNU C++
, the group
of MCC shareholders sponsoring the computer architecture project were
told for the first time that I was writing free software. It was easy
to imagine they might disapprove, Scrooge-like, or even insist on
halting the work. But it was just the opposite: our cooperation with
the Free Software Foundation was good news to them. Technology
transfer is one of the most difficult barriers for shareholders to
overcome when picking up MCC research.
When MCC delivers specialized software, it comes with no experts beyond those who wrote it, and it is all but unusable except by painful learning. When we deliver software that relies on a proprietary environment which they do not have access to, that software becomes an expensive hostage of its environment. By providing software which can be made accessible to anybody, without fear of compromising cooperative agreements, it gives the shareholders freedom to use that technology in ways previously unavailable to them.
Our group was specifically congratulated on its achievement of delivering technology that they wanted, and making that technology available via the Free Software Foundation. Considering that this is the first free software that MCC has ever sponsored, and the incredibly positive reaction that we received, it is very exciting to think of the possibilities that lie ahead.
with thanks to Joel Bion, Mark Baushke, and Lynn Slater
Somebody asked us what was GDB. With apologies to Oscar Hammerstein II, Richard Rodgers, and Julie Andrews, we offered the following reply:
Let's start at the very beginning, a very good place to start,
When you're learning to sing, its Do, Re, Mi;
When you're learning to code, its G, D, B.
(background) G, D, B.
The first three letters just happen to be, G, D, B.
(background) G, D, B.
(Chorus)
That will bring it back to G, D, B, <link>
(Resume from the Chorus)
by Richard M. Stallman
Now that copyright is becoming a public nuisance that the public tries to ignore, copyright owners try to justify this imposition by calling it an intrinsic right. As they tell it, their intrinsic right is a tradition that makes the public good irrelevant.
This is contrary to the facts of the history of copyright.
The Supreme Court has stated explicitly what copyright was for. Writing for the Court, Justice Stewart explained:
The immediate effect of our copyright law is to secure a fair return for an "author's" creative labor. But the ultimate aim is, by this incentive, to stimulate artistic creativity for the general public good. `The sole interest of the United States and the primary object in conferring the [copyright] monopoly,' this Court has said, `lie in the general benefits derived by the public from the labors of authors.'
---Fox Film Corp. v. Doyal (286 US 123, 127)
So when copyright interferes with the public use of a program, that directly attacks the reason for having copyright.
or Rather, how NOT to find out when a program becomes available...
by Richard M. Stallman
I have dared to make a few predictions about when certain programs will be ready for distribution. Now, after the fact, I hope that wasn't a mistake.
Creating a given program often takes much longer than expected. If this happens, many of you who are eager to use it might have the idea of phoning or writing to ask me whether the program is available yet. Or, even worse, to describe which parts are completed, or which machines it will be ported to, or how easy it will be to port to certain machines, or which features are going to be implemented.
Some of these questions have no answers. When a program isn't finished, we don't know which features we will add while finishing it. We don't make plans to port programs because our usual policy is to leave porting up to you. This is a way of recruiting wider participation.
Responding to all possible inquiries would divert time and energy and slow the completion of the program, causing even more inquiries. Were we to permit this to happen, the amount of time left to devote to programming could approach zero.
Only you can save the GNU project from this absurd fate. Please exert your will power, be patient, and wait for us to announce that programs are available. If you would like to see more GNU software appear faster, the best thing to do is to volunteer a significant amount of your time.
The best way to find out quickly when a piece of GNU software is released or updated for general on-line distribution is to arrange to receive the info-gnu mailing list on which our announcements are made. To receive info-gnu, send a request to
ucbvax!prep.ai.mit.edu!info-gnu-request (usenet)
info-gnu-request@prep.ai.mit.edu (internet)
Some specific programs such as Emacs, GCC, GDB, GNU Chess, and G++
have specific mailing lists of their own on which new versions are
announced. To be on these lists, just mention in your request which
programs you are interested in.
Tape distribution normally starts some weeks later than on-line distribution, either because we demand a higher standard of reliability for users who cannot easily get upgrades, or because we are hopelessly confused and can't get our act together. We generally make another electronic announcement when tape distribution starts. You can order tapes in advance if you wish, if you understand that delivery may be delayed for many weeks while we work on reliability.
When we expect true reliability to take many months to achieve, we may offer a beta-test tape at an earlier date, as we are doing with GNU C. We announce these tapes in the usual ways.
If you can't receive Usenet or Internet mail and you are planning to order a tape of a specific program, you can telephone the Foundation to find out whether the program is available for tape distribution. Our phone number is (617) 876-3296. It is best to call in the morning, EST, as you will be more likely to reach Opus Goldstein, our office and shipping person, rather than our tape machine. In general, Opus cannot contact each person individually to say when a tape is ready, but perhaps an arrangement can be made if it is important.
If you are planning to get a copy from someone else, please ask that person to inform you when it is ready. This will spread the burden.
If you are truly desperate for a prognostication, you might try consulting your local fortune-tellers. They don't know any less than we about the future.
All the software and publications from the Free Software Foundation are distributed with permission to copy and redistribute. The easiest way to get a copy of GNU software is from someone else who has it. Just copy it from them.
If you have access to the Internet, you can get the latest software from the host `prep.ai.mit.edu'. For more information, read the file `/u2/emacs/GETTING.GNU.SOFTWARE' on that host.
If you cannot get the software from a friend or over the net, the Free Software Foundation distributes tapes for a copying and distribution fee. See the order form on the inside back cover.
If you do not have net access, and your computers cannot use either of the two media we distribute on, you must get our software from third party groups--people and organizations that do not work with us, but have our software in other forms. For your convenience, other groups that are helping to spread GNU software are listed 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 Internet sites have some GNU programs available for anonymous FTP:
louie.udel.edu
, nic.nyser.net
, bu-it.bu.edu
,
uunet.uu.net
, spam.istc.sri.com
, and simtel20.arpa
(under PD:<UNIX.GNU>).
Information on how to uucp some GNU programs is available via electronic
mail from: arnold@skeeve.UUCP
, ihnp4!hutch!barber
,
hqda-ai!merlin
. Also, you can ask:
hao!scicom!qetzal!upba!ugn!nepa!denny
or else from:
postmaster@uunet.uu.net
.
Ohio State also uucps GNU programs. They post their instructions monthly
to newsgroup comp.sources.d
on Usenet. Current details from Karl
Kleinpaste karl@tut.cis.ohio-state.edu
or
karl@ohio-state.arpa
or ...!cbosgd!osu-cis!karl
; or Bob
Sutterfield (substitute bob for karl in the above addresses).
Information on obtaining floppy disks of GNU Emacs for the AT&T Unix PC
(aka 3B1 or PC7300) is available via electronic mail from:
brant@manta.uucp
.
Thanks to all those mentioned in GNU Flashes.
Thanks to the MIT Laboratory for Computer Science, and its head, Professor Dertouzos. The LCS has provided FSF with the loan of a Microvax for program development.
Thanks to the MIT Artificial Intelligence Laboratory for invaluable assistance of many kinds.
Thanks to Nobuyuki Hikichi of Software Research Associates, Tokyo, for porting GCC to the SONY NEWS machine. Thanks also for the $10,000 they contributed.
Thanks to NeXT, Inc., for their improvements to the GNU Assembler and the Gnu DeBugger.
Thanks to Micheal Tiemann of MCC for extending GCC and GDB to handle
C++
and for porting GCC to the 32000 with some contributions from
Jan Stein of the Chalmers Computer Club.
Thanks to Ted Lemon who wrote parts of the RTL reader and printer for GCC.
For porting GCC, thanks to Charles LaBrec (Integrated Solutions 68020 system); to Greg Satz(HPUX); to David Kashtan (VMS).
Thanks to David S. Hayes for enhancing GNU diff.
Thanks to Dan LaLiberte for spearheading the GNU Emacs Lisp Programmers Manual, and to Bill Lewis and Tom Scott who have been working on putting it all together.
Thanks to Wolfgang Rupprecht for providing floating point support for GNU Emacs.
Thanks to Torbjorn Granlund for fast implementations of split
,
wc
, cmp
, cat
and cp
.
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 Emacs 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, Inc. | stamp | 675 Massachusetts Avenue | | Cambridge, MA 02139 | here | | | -------
This document was generated on 7 May 1998 using the texi2html translator version 1.52.
Please send FSF & GNU inquiries & questions to gnu@gnu.org. There are also other ways to contact the FSF.
Please send comments on these web pages to webmasters@www.gnu.org, send other questions to gnu@gnu.org.
Copyright (C) 1988 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA
Verbatim copying and distribution of this entire article is permitted in any medium, provided this notice is preserved.