1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318 |
- <!-- This HTML file has been created by texi2html 1.30
- from bull7.texi on 28 January 1995 -->
- <TITLE>GNU's Bulletin, vol. 1 no. 7 -- June, 1989</TITLE>
- <H1>GNU's Bulletin, vol. 1 no. 7 -- June, 1989</H1>
- <P>
- <HR>
- <P>
- The GNU's Bulletin is the semi-annual newsletter of the Free Software
- Foundation, bringing you news about the GNU Project.
- <P>
- Free Software Foundation, Inc. Telephone: (617) 876-3296 <BR> 675
- Massachusetts Avenue Electronic mail: gnu@prep.ai.mit.edu <BR>
- Cambridge, MA 02139 USA
- <P>
- <HR>
- <P>
- <H1><A NAME="SEC3" HREF="bull7_toc.html#SEC3">GNU's Who</A></H1>
- <P>
- Some new people have joined our full-time staff. <B>Joseph Arceneaux</B>
- is working on Emacs version 19. Soon to arrive are <B>Karl Berry</B>,
- <B>Kathy Hargreaves</B>, and <B>Jim Kingdon</B>. <B>Randy Smith</B>, who has
- been working on GDB, will be leaving us for grad school in the fall.
- <P>
- <B>Mike Haertel</B> is back with us, working on a new, more efficient
- malloc and on finishing the C interpreter started by Nobuyuki Hikichi.
- <B>Roland McGrath</B> has been hired for the summer to complete the ANSI C
- library which he started.
- <P>
- <B>Brian Fox</B> is still working for us at UC Santa Barbara. He is
- beta-releasing BASH, the `Bourne Again SHell' which is the GNU version
- of <CODE>sh</CODE> that incorporates extensions found in the Korn and C
- shells. <B>Jay Fenlason</B> is writing the GNU spreadsheet program Oleo,
- and maintaining the GNU assembler, <CODE>tar</CODE> and <CODE>sed</CODE>. Jay also
- takes care of our backups and creating distribution tapes. <B>Diane
- Barlow Close</B>, our first full-time technical writer, is writing the
- documentation for all of the small Unix utilities that have been
- completed for us, while living in San Diego, CA.
- <P>
- <B>Opus Goldstein</B> is our jack-of-all-trades office staff. If you call
- our office, she is the one who answers. She fills the orders, and
- handles the day-to-day operations of the Foundation. <B>Robert
- Chassell</B> is our Treasurer. Besides dealing with foundation issues not
- related to programming, he is working on an elementary introduction to
- programming in Emacs Lisp.
- <P>
- <B>Richard Stallman</B> continues as a volunteer to do countless tasks,
- including refining the C compiler, GNU Emacs, etc. and their
- documentation. Finally, volunteer <B>Len Tower</B> continues as our
- electronic JOAT (jack-of-all-trades), handling mailing lists,
- information requests, system mothering, etc.
- <P>
- <HR>
- <P>
- <H3><A NAME="SEC4" HREF="bull7_toc.html#SEC4">GNU's Bulletin</A></H3>
- <P>
- Copyright (C) 1989 Free Software Foundation, Inc.
- <P>
- Written by: Joseph Arceneaux, Robert Chassell, John Gilmore, <BR> Leonard
- H. Tower Jr., and Richard Stallman
- <P>
- Illustrations: Etienne Suvasa
- <P>
- <BLOCKQUOTE>
- 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.
- </BLOCKQUOTE>
- <P>
- <H1><A NAME="SEC5" HREF="bull7_toc.html#SEC5">What Is the Free Software Foundation?</A></H1>
- <P>
- 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 called "GNU" (GNU's Not
- Unix) that will be upward compatible with Unix. Some large parts of
- this system are already working and we are distributing them now.
- <P>
- 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.
- <P>
- Other organizations distribute whatever free software happens to be
- available. By contrast, FSF concentrates on development of new free
- software, building toward a GNU system complete enough to eliminate the
- need to purchase a proprietary system.
- <P>
- Besides developing GNU, the Foundation has secondary functions:
- producing tapes and printed manuals of 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 partly from donations and partly from
- 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).
- <P>
- The Foundation also maintains a Service Directory: a list of people who
- offer service for pay to users of GNU programs and systems. Service can
- mean answering questions for new users, customizing programs, porting to
- new systems, or anything else. Contact us if you want to be listed.
- <P>
- 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.
- <P>
- The board of the Foundation is: Richard Stallman, President; Robert
- Chassell, Treasurer; Gerald J. Sussman, Harold Abelson and Leonard H.
- Tower Jr., Directors.
- <P>
- <H1><A NAME="SEC6" HREF="bull7_toc.html#SEC6">What Is Copyleft?</A></H1>
- <P>
- In the 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?
- <P>
- 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 bad citizens can also 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 <EM>all</EM> users would have been undermined.
- <P>
- To prevent this from happening, we don't normally place GNU programs in
- the public domain. Instead, we protect them by what we call
- <DFN>copylefts</DFN>. 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 we software sharers use copylefts to preserve these freedoms.
- <P>
- The copyleft used by the GNU project is made from a combination of a
- copyright notice and the <DFN>GNU General Public License</DFN>. 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, and we will send you a printed copy on request.
- <P>
- Recently the Foundation made a dramatic change in the General Public
- License. The terms for copying remain unchanged, but the structure of
- the license is different, and it is now easier to copyleft programs.
- The License is now essentially a subroutine, and programs need only
- state that the General Public License applies to them. Specifics on
- using the License now accompany it, so refer there for details.
- <P>
- <BLOCKQUOTE>
- <EM>"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"</EM>
- </BLOCKQUOTE>
- <P>
- --Benjamin Franklin
- <P>
- <H1><A NAME="SEC7" HREF="bull7_toc.html#SEC7">GNUs Flashes</A></H1>
- <P>
- <UL>
- <P>
- <LI>
- <B>Anonymous Donation</B>
- <P>
- We have received a surprise donation of $100,000 from an English person
- who wishes to remain anonymous. This, plus the $100,000 we have just
- received from Hewlettf-Packard, and the $25,000 we have received from
- the Open Software Foundation, has enabled us to hire several new
- employees.
- <P>
- <LI>
- <B>New Version of RCS Distributed with Compiler</B>
- <P>
- We are now distributing the latest version (V4 from Purdue) of RCS, the
- Revision Control System.
- <P>
- <LI>
- <B>BASH Now Available</B>
- <P>
- Brian Fox has just released the `Bourne Again SHell' for Beta testing.
- <P>
- <LI>
- <B>GNU Emacs Lisp Manual</B>
- <P>
- The GNU Emacs Lisp Reference manual should be published this summer.
- <P>
- <LI>
- <B>New <CODE>qsort</CODE>, <CODE>gdbm</CODE></B>
- <P>
- We now have an improved <CODE>qsort</CODE> which is faster than Berkeley's and
- is also reentrant. It will be released in the future with the GNU C
- Library.
- <P>
- Our <CODE>gdbm</CODE> library is about to be tested. A <CODE>gdbm</CODE> data base
- consists of one file with no large holes. <CODE>gdbm</CODE> supports fancy
- automatic crash recovery and interlocking. It handles keys and data of
- unlimited size.
- <P>
- <LI>
- <B>File Manipulation Utilities</B>
- <P>
- A collection of utilities for file manipulation, including <CODE>ls</CODE>,
- <CODE>mv</CODE>, <CODE>cp</CODE>, <CODE>cat</CODE>, <CODE>rm</CODE>, <CODE>du</CODE>, <CODE>head</CODE>,
- <CODE>tail</CODE> and <CODE>cmp</CODE> will be released soon.
- <P>
- <LI>
- <B>GPC: GNU Pascal Compiler</B>
- <P>
- Some volunteers from Helsinki University of Technology are now working
- on a Pascal front-end for GCC. Currently they support a subset of the
- language.
- <P>
- <LI>
- <B>Some Parts of BSD are Becoming Free</B>
- <P>
- Berkeley has now released those parts of their Unix system not
- containing AT&T code, including the TCP/IP code. The files freed in the
- 4.3 BSD-Tahoe distribution are now on our beta test tape.
- <P>
- Also, the next release of Berkeley Unix may contain Make, AWK, and
- <CODE>sh</CODE> from the GNU Project. Berkeley will also be distributing GCC
- in place of their PCC-based compiler.
- <P>
- <LI>
- <B>NeXT, Inc. Using GCC as Production Compiler</B>
- <P>
- NeXT uses GCC to compile their entire system, including their kernel.
- <P>
- <LI>
- <B>Distribution of 80386 Floppies Happening Soon</B>
- <P>
- This will probably take two forms, via 1.2 megabyte diskettes and
- through an electronic BBS. It's possible that the newly reactivated
- Programming Language SIG of the Boston Computer Society will be one of
- the major routes of distribution.
- <P>
- </UL>
- <P>
- <H1><A NAME="SEC8" HREF="bull7_toc.html#SEC8">Programming Freedom Activism</A></H1>
- <P>
- by Richard Stallman
- <P>
- <BLOCKQUOTE>
- <P>
- <EM>"To benefit by the discoveries of his fellowmen is thus not only a
- natural right, it is also the natural duty which every man owes to
- himself and to society; and the mutual, universal progress thence
- resulting is the fulfillment of the earthy destiny of the human race."</EM>
- <P>
- </BLOCKQUOTE>
- <P>
- Robinson, <I>"Treatise on the Law of Patents."</I>
- <P>
- <H2><A NAME="SEC9" HREF="bull7_toc.html#SEC9">Interface Copyright Battle Gaining Speed</A></H2>
- <P>
- The battle against user interface copyrighting is gathering momentum.
- GNU founder Richard Stallman joined MIT professors Gerald J. Sussman and
- Marvin Minsky in placing an ad in <I>The Tech</I>, MIT's student newspaper,
- warning of the harm that such monopolies could do to computer users and
- the computer industry. Here is the text of the ad:
- <P>
- <HR>
- <P>
- Apple and Lotus are trying to create a new form of legal monopoly: a
- copyright on a class of user interfaces. These monopolies would cause
- serious problems for users and developers of computer software and
- systems.
- <P>
- Until two years ago, the law seemed clear: no one could restrict others
- from using a user interface; programmers were free to implement any
- interface they chose. Imitating interfaces, sometimes with changes, was
- standard practice in the computer field. The interfaces we know evolved
- gradually in this way; for example, the Macintosh user interface was
- developed over fifteen years at Stanford, SRI, Xerox and other places.
- Hundreds of students and researchers contributed to this effort, and no
- one has a right to own it all now.
- <P>
- Most computer companies, and nearly all computer users, are happy with
- this state of affairs. Lotus and Apple say it does not offer "enough
- incentive" to develop their products, but they must have considered it
- "enough" when they made their decision to do so. It seems they are
- not satisfied with the opportunity to continue to compete in the
- marketplace--not even with a head start.
- <P>
- If Lotus and Apple are permitted to make law through the courts, the
- precedent will hobble the software industry:
- <P>
- <UL>
- <LI>
- Gratuitous incompatibilities will burden users. Imagine if each car
- manufacturer had to arrange the pedals in a different order.
- <P>
- <LI>
- Software will become and remain more expensive. Users will be "locked
- in" to proprietary interfaces, for which there is no real competition.
- <P>
- <LI>
- Large companies have an unfair advantage wherever lawsuits become
- commonplace. Since they can easily afford to sue, they can intimidate
- small companies with threats even when they don't really have a case.
- <P>
- <LI>
- User interface improvements will come slower, since incremental
- evolution through creative imitation will no longer be permitted.
- <P>
- <LI>
- Even Apple and Lotus will find it harder to make improvements if they
- can no longer adapt the good ideas that others introduce, for fear of
- weakening their own legal positions. Some users suggest that this
- stagnation may already have started.
- </UL>
- <P>
- Express your opinion! Reconsider your plans! You can make a
- difference.
- <P>
- <HR>
- <P>
- Reporters from the Boston Globe and Computer Reseller News saw the ad
- and then published articles in their papers. Followups to the Globe
- article then appeared in Computerworld and InfoWorld. The InfoWorld
- article was seen by a public relations agent who is donating time to
- help fight the user interface copyright. Additionally, several lawyers
- have asked for our help to find useful expert witnesses.
- <P>
- On Wednesday, May 24th the League for Programming Freedom picketed Lotus
- Development Corporation in Cambridge. Despite a heavy threat of rain,
- some 200 people showed up for the demonstration carrying signs and
- handing out flyers. Attendees included Bryan S. Kocher, President of
- the ACM, and Patrick Winston, head of MIT's AI Lab. The protest was led
- by FSF founder Richard Stallman.
- <P>
- If you would like to help fight for the freedom to write programs, you
- can do so by joining and working for the League for Programming Freedom.
- Since the League is still being organized, it does not have an address
- of its own. For the moment, you may phone or write to the League in
- care of the Free Software Foundation. Note, however, that the League
- will be an entirely separate organization from the Foundation with
- different agendas and personnel. The League will be exclusively devoted
- to fighting monopolistic attempts to limit the freedom of programmers to
- develop software.
- <P>
- <H2><A NAME="SEC10" HREF="bull7_toc.html#SEC10">Dangerous Legislation Proposed</A></H2>
- <P>
- Legislation has been proposed by Senator Orrin Hatch to prohibit the
- lending and rental of software by <EM>anyone</EM>, including private
- individuals. Similar legislation has been considered for musical
- recordings. Such legislation would be an aggressive attack on the
- traditional freedom to borrow and lend. Libraries could eventually be
- forced into oblivion if they begin limiting their contents to media
- which become obsolete.
- <P>
- Hatch and other supporters of this bill reason that software publishers
- are losing much money because people only borrow the software to make
- copies. Libraries that lend software say this is untrue, but even if it
- were, this would be insufficient reason for such an attack on our
- liberties. There is essentially no resistance on Capitol Hill to this
- legislation; the software publishers have been very outspoken in their
- position, but there has been little or no effort made to explain the
- interests of users.
- <P>
- The only resistance to this proposal has been from the American Library
- Association, who have obtained language in the bill which would exempt
- libraries from this legislation for a three year test period. It seems
- likely, however, that software publishers will only continue complaining
- about "lost" profits and at the end of the test period even libraries
- will be prohibited from lending software.
- <P>
- Regaining these rights will be much more difficult than making an effort
- to preserve them now. Please help alarm people about this problem.
- Write to Senator Hatch and Representative Dennis DeConcini as well as
- your own legislators and ask them to vote against bill S.198, the
- Computer Software Rental Amendments Act. A sufficient address is:
- <P>
- You can also phone senators and representatives at (202) 225-3121, or
- look in your phone directory for their local offices.
- <P>
- <H2><A NAME="SEC11" HREF="bull7_toc.html#SEC11">Common Knowledge's Universal Index</A></H2>
- <P>
- There is also an international group called Common Knowledge working to
- compile public domain, copyright free and machine-readable information.
- The group, consisting of journalists, scientists, librarians and others,
- is amassing a database of non-copyrighted information which they call
- the "Universal Index". They are doing this to provide an alternative
- to the information merchants, who are increasingly successful at
- reducing the amount of material available to traditional libraries.
- Their address is:
- <P>
- <PRE>
- Common Knowledge, Jefferson, MD 21755, USA, Phone: (301) 695--3100
- </PRE>
- <P>
- <H1><A NAME="SEC12" HREF="bull7_toc.html#SEC12">GNU Wish List</A></H1>
- <P>
- Wishes for this issue are for:
- <P>
- <UL>
- <LI>
- Someone skilled in compiler maintenance who could take over GCC
- maintenance for RMS. This would probably be be a full-time job.
- <P>
- <LI>
- Volunteers to help write utilities and documentation. Among others, we
- need manuals for X-Windows and the C Library.
- <P>
- <LI>
- Professors who might be interested in sponsoring or hosting research
- assistants to do GNU development, with full or partial FSF support.
- <P>
- <LI>
- Fonts. We are looking for Ghostscript format fonts.
- <P>
- <LI>
- Speech generation and character recognition software (if the devices
- aren't too weird), hopefully with the device drivers. This would help
- at least one partially disabled programmer we know to be productive.
- <P>
- <LI>
- Grammar checking software for English or other natural languages.
- <P>
- <LI>
- Copies of newspaper and journal articles mentioning the GNU Project.
- Send these to the addresses on the front cover, or send a citation to
- <CODE>gnu@prep.ai.mit.edu</CODE>.
- <P>
- <LI>
- Money, as always. Please remember, donations are tax-deductible. With
- the latest donations, we have been able to expand our staff.
- <P>
- 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.
- <P>
- </UL>
- <P>
- <H1><A NAME="SEC13" HREF="bull7_toc.html#SEC13">Porting BSD Unix Through the GCC</A></H1>
- <P>
- by John Gilmore
- <P>
- I have ported the University of California at Berkeley's latest Unix
- sources through the GNU C Compiler. In the process, I made Berkeley
- Unix more compatible with the draft ANSI C standard, made many programs
- less machine-dependent and less compiler-dependent, and tested GCC.
- <P>
- Berkeley Unix has set the standard for high powered Unix systems for
- many years, and continues to offer an improved alternative to AT&T Unix
- releases. However, Berkeley's C compiler is based on an old version of
- PCC, the Portable C Compiler from AT&T. By merging GCC into the
- Berkeley release, we provided ANSI C compatibility, better optimization,
- and improved compiler maintenance. The GNU project gained an important
- test case for GCC, and a strong collaborator in the free software
- movement.
- <P>
- The project was conceived by John Gilmore, and aided by Keith Bostic and
- Mike Karels of Berkeley, and Richard Stallman of FSF. I did most of the
- actual porting, while Keith and Mike provided machine resources,
- collaborated on major decisions, and arbitrated the style and content of
- the changes to Unix. Richard provided quick turnaround on compiler bug
- fixes and problem solving.
- <P>
- We are producing a Unix source tree which can be compiled by both the
- old and the new compilers. Rather than introducing new <CODE>#ifdef</CODE>'s,
- we are rewriting the code so that it does not depend on the features of
- either compiler. Whenever we have to make a change, we are moving in
- the direction of ANSI C, POSIX compatibility, and machine independence.
- <P>
- We have used GCC releases 1.15 through 1.35. I did four complete
- "passes" over the Unix source tree; each involved running "make
- clean; make" on the entire source tree, and examining 500K to 800K of
- resulting output. I'd fix as many errors as I could, testing small
- parts of the source tree in the process, then merge my changes back into
- the master sources and rebuild the whole thing again.
- <P>
- The errors fell into two general categories: language changes in ANSI C,
- and non-portable code. In some cases it was hard to tell the
- difference.
- <P>
- The major ANSI C problem was the generation of character constants in
- the preprocessor. Excessive use of this now-obsolete feature in system
- header files caused us to change about 10 include files and about 45
- source modules. Another preprocessor problem was that ANSI C uses a
- different syntax for token concatenation; we rewrote pieces of five
- modules to avoid having to concatenate tokens. ANSI C clarified the
- rules for the scope of names declared <CODE>extern</CODE>. We moved extern
- declarations around, or added global function declarations, in more than
- 38 files to handle this. Nine programs used new ANSI keywords, such as
- <CODE>signed</CODE> or <CODE>const</CODE>, as identifiers; we picked new
- identifiers. Eleven modules used typedefs as formal parameters names,
- or used <CODE>unsigned</CODE> with a typedef.
- <P>
- The worst non-portable construct we found in the Unix sources was the
- use of pointers with member names that aren't right for the pointer
- type. Fixing this problem caused a lot of work, because we had to
- figure out what each untyped or mistyped pointer was really being used
- for, then fix its type, and the references to it. We changed 5 modules
- due to this, and abandoned one program, efl, which would have required
- too much work to fix.
- <P>
- Another problem was caused by using CPP as a macro processor for
- assembler source. We circumvented this problem by making the assembler
- source acceptable to both old-CPP and ANSI CPP.
- <P>
- A major problem was <CODE>asm</CODE> constructs in C source. Some programs
- were written in C with intermixed assembler code, producing a mess when
- compiled with anything but the original compiler. Other routines, such
- as compress, drop in an <CODE>asm</CODE> here or there as an optimization.
- Still more modules, including the kernel, run a sed script over the
- assembler code generated by the C compiler, before assembling and
- linking it. We eliminated as many uses of <CODE>asm</CODE> as we could, and
- turned others into assembler language subroutines in <SAMP>`.s'</SAMP> files.
- Both the Pascal and Lisp interpreters used heavy hacking with sed
- scripts; each of these took several days to fix.
- <P>
- We fixed three programs that used multi-character constants; two were
- clearly errors. Fifteen programs tried to declare functions or
- variables, while omitting both the type and storage class; we added
- <CODE>int</CODE> to the declarations. In two modules this diagnosed errors
- caused by use of <SAMP>`;'</SAMP> where <SAMP>`,'</SAMP> was intended. Changes to the
- rules for parsing declarations made us fix five modules, and declaration
- bugs in six more were caught by GCC's improved error checking. Fifteen
- programs had miscellaneous pointer usage bugs fixed. GCC caught bugs in
- five modules caused by misunderstood sign extension. Five or ten other
- miscellaneous bugs were caught and fixed.
- <P>
- We are pleased with the results so far. Most of the Unix code compiled
- without problems, and the parts which we have executed are free from
- code generation bugs. The worst of the ANSI C changes only required
- roughly fifty modules to be changed, and there were only two problems of
- this magnitude. A total of twenty bugs in GCC have been found so far,
- and most of them are now fixed. We expected several times this many
- bugs; the compiler is in better shape than any of us expected.
- <P>
- Many minor problems and nit incompatibilities with ANSI C have been
- removed from the Unix sources. Far fewer user programs should require
- attention when doing a BSD Unix port now. However, we did not attempt
- to make Berkeley Unix fully ANSI C compliant. In particular, we kept
- preprocessor comments (<CODE>#endif FOO</CODE>) as well as machine-specific
- <CODE>#define</CODE>'s (<CODE>#ifdef vax</CODE>). GCC supports these features even
- though ANSI C does not.
- <P>
- Unfinished work remains. The BSD kernel has not yet been ported to GCC,
- though it has been syntax-checked. Optimization of the kernel will
- cause problems until <CODE>volatile</CODE> declarations are used in all the
- right places. Pieces of the Portable C Compiler are still used inside
- lint, f77, and pc. Various sources still need their <CODE>setjmp</CODE> calls
- fixed so that only volatile variables depend on keeping their values
- after a <CODE>longjmp</CODE>.
- <P>
- Our changes will be available to recipients of Berkeley's next software
- distribution, whenever that is. We will also make diffs available to
- others involved in porting Unix to ANSI C.
- <P>
- Future projects include building a complete set of ANSI C and POSIX
- compatible include files and libraries (including function prototypes),
- and converting the existing sources to use them. An eventual goal is to
- produce a fully standard-conforming Unix system--not only in the
- interface provided to users, but with sources which will compile and run
- on any standard-conforming compiler and libraries.
- <P>
- The success of this collaboration between GNU and Berkeley has
- encouraged further cooperation. The GNU project is working to provide
- reimplementations of System V features that Berkeley Unix lacks, such as
- improved shells and make commands. In return, Berkeley has released
- much of its software to the public, eliminating the AT&T license
- requirement for programs that AT&T did not supply. A large set of
- "freed" BSD software is available by uucp or ftp from
- <CODE>uunet.uu.net</CODE> in the subdirectory <SAMP>`bsd-sources'</SAMP>, as well as
- on the GNU Compiler tape and the UUNET tapes.
- <P>
- <H1><A NAME="SEC14" HREF="bull7_toc.html#SEC14">GNU Project Status Report</A></H1>
- <P>
- <UL>
- <LI>
- <B>GNU Emacs</B>
- <P>
- GNU Emacs version 18 is in wide distribution. Version 18.55 will soon
- begin distribution.
- <P>
- Berkeley is distributing GNU Emacs with the 4.3 distribution, DEC is
- distributing it with Unix systems on Vaxes, and NeXT is shipping it.
- <P>
- Emacs 18 development has now ceased (although bugs are still fixed, of
- course) and version 19 is being worked on. New features so far include:
- multiple X windows (a <CODE>screen</CODE> object in Emacs Lisp); scroll bars;
- per-buffer redefinition of mouse commands; support for European
- character sets; source-level debugging for Emacs Lisp; and floating
- point numbers.
- <P>
- We are also considering these new features: associating property lists
- with portions of the text in a buffer, and using them to control
- visibility of the text; specifying different visibility conditions for
- multiple windows showing one buffer; incremental syntax analysis for
- various programming languages; a visually enhanced Info mode; an
- object-oriented graphics-drawing extension; hooks to be run if point
- moves outside a certain range.
- <P>
- It will take a while to do this (plus any other ideas we get), so please
- don't ask when Emacs 19 will be available for beta test. We will
- announce it.
- <P>
- <LI>
- <B>Shells</B>
- <P>
- Brian Fox has now completed GNU's version of <CODE>sh</CODE>, called BASH, the
- `Bourne Again SHell'. In addition to Korn shell features, it now has
- job control and both Emacs-style and <CODE>csh</CODE>-style command history
- manipulation. Look for it soon on our distribution.
- <P>
- There is a good chance that the C Shell from BSD will be declared free
- software by Berkeley, so we won't need to write that.
- <P>
- <LI>
- <B>Kernel</B>
- <P>
- We hope to use the MACH message-passing kernel being developed at CMU.
- The current distributed version of MACH is not free because it contains
- code from BSD of AT&T origin. However, the MACH developers have been
- working to separate this code from the kernel and they now say that they
- have a first version of this running in alpha test. Once this is
- stable, the MACH kernel is supposed to become free.
- <P>
- Should MACH not become available, then we will start the kernel with
- either MIT's TRIX kernel or Berkeley's Sprite system.
- <P>
- Another thing we are considering is using the high-performance,
- distributed Sprite file system with MACH.
- <P>
- <LI>
- <B>GNU Debugger</B>
- <P>
- The GNU source-level C debugger, GDB, is now being distributed along
- with Emacs version 18 as GDB version 2.8. GDB version 3.2 is
- distributed on the beta-test (compiler) tape, and as soon as it is
- stable it will replace version 2.8 on the Emacs tape.
- <P>
- GDB 3.<CODE>*</CODE> reads symbol tables incrementally; this results in much
- faster startup and much less memory use. GDB also provides command line
- editing with history substitution and completion of command, filename,
- and symbols. Recently added FORTRAN support has not been tested. New
- commands include: <CODE>until</CODE>, which executes until a certain line; and
- <CODE>bt -<VAR>n</VAR></CODE>, to show only the outermost <VAR>n</VAR> stack frames.
- <P>
- The current GDB can code-grind (pretty-print) structures and can
- conditionally avoid printing unions. C<CODE>++</CODE> support has been
- improved.
- <P>
- There is a version of GDB which can run stand-alone so that we can use
- it to debug the kernel, and we also have a serial line interface for
- running GDB remotely. A French volunteer is now working on a UDP based
- over-the-ethernet debugging interface. Work is also being done on
- debugging multiple process, parallel programs.
- <P>
- Future versions of GDB may support watchpoints. We also hope soon to
- merge the diffs for the Altos and Sun 386i machines.
- <P>
- <LI>
- <B>C Compiler</B>
- <P>
- The GNU C Compiler GCC is now fairly reliable. It supports the May 1988
- draft of ANSI C. People are still reporting bugs, but they also say
- they think there are fewer bugs than in commercial compilers. Read John
- Gilmore's article to see how some of these bugs were uncovered. Next
- builds their entire system, including their port of the MACH kernel and
- NFS, with GCC. Someone has also told us that GCC successfully compiled
- a System V.3 kernel.
- <P>
- The compiler performs automatic register allocation, common
- subexpression elimination, invariant code motion from loops, induction
- variable optimizations, constant propagation and copy propagation,
- delaying popping of function call arguments, tail recursion elimination,
- plus many local optimizations that are automatically deduced from the
- machine description. We are also currently implementing delayed-branch
- fill and pipeline scheduling (experimentally).
- <P>
- GCC has recently been ported to the Convex, Tahoe and the MIPS
- processors. A Pyramid version is expected soon, and ports are underway
- to the IBM 370, IBM PC/RT, 3B2, HP Spectrum, Motorola 88000, some sort
- of Gould machine, and (perhaps) the AMD 29000.
- <P>
- GCC makes shorter and faster 68020 code than the new Sun compiler with
- -O. The new Sun compiler can't beat GCC despite taking 3 times as long.
- As of version 1.31, GCC also wins on the Sun 4. GCC makes shorter Vax
- code than the Tartan C compiler with -O4, but we haven't been able to
- compare the running speed of that code. A National 32000 port done by
- Michael Tiemann on a Sequent 32000 system is said to be more reliable
- than Sequent's compiler and yields a 40% speedup for several programs
- including a Prolog interpreter.
- <P>
- We are also working on merging the C Compiler with the C<CODE>++</CODE>
- compiler so that there would be only one distribution for both
- languages.
- <P>
- In the future, if we have time, we would like to implement more language
- extensions (we will probably add nested scoping), plus facilities for
- precompilation of header files to save time when they are large and the
- source files are small. We might also do other language front ends, but
- there seem to be enough remote GNUers willing to do this job.
- <P>
- Enough internal documentation is included for people interested in
- retargeting the compiler to other CPUs to do so.
- <P>
- <LI>
- <B>GNU C for VMS</B>
- <P>
- GCC can run under VMS. However, the ordinary VMS C compiler has bugs
- and cannot compile GNU C, so you need an executable of GNU C to get
- started. This comes on the VMS tape along with the source.
- <P>
- Other GNU programs for VMS include GNU Emacs and Bison.
- <P>
- Please don't ask us to devote effort to additional VMS support, because
- it is peripheral to the GNU project.
- <P>
- <LI>
- <B>COFF Support</B>
- <P>
- It is now possible to run the entire suite of GNU software tools on
- System V, replacing COFF entirely. First you install the GNU compiler,
- assembler, linker and other utilities. Then you use the program
- <CODE>robotussin</CODE>---COFF medicine for your computer--to convert the
- system libraries from COFF format to GNU (i.e. BSD) format.
- <P>
- When you compile programs, you will get ordinary GNU/BSD object files.
- Linking these with the GNU linker will produce GNU/BSD executables with
- a COFF header that the kernel will accept. The other GNU utilities such
- as <CODE>size</CODE>, <CODE>nm</CODE> and <CODE>strip</CODE> know how to operate on these
- encapsulated files.
- <P>
- As true COFF support is peripheral to the GNU project, please don't ask
- us to expend effort on it.
- <P>
- <LI>
- <B>Compiler-related Programs</B>
- <P>
- <UL>
- <LI>
- <B>C<CODE>++</CODE></B>
- <P>
- Michael Tiemann of Stanford University has written a C<CODE>++</CODE> compiler
- as an extension of GNU C which is distributed with GCC. This was the
- first compiler to compile C<CODE>++</CODE> directly instead of preprocessing
- it into C with great benefits for debugging and efficiency.
- <P>
- Recently Michael added multiple inheritance and other new features
- promised by AT&T at the first USENIX C<CODE>++</CODE> workshop (AT&T has yet
- to release their version).
- <P>
- GDB version 3.<CODE>*</CODE> includes support for debugging C<CODE>++</CODE> code,
- which merges in the functionality of the old program GDB<CODE>+</CODE>.
- GDB<CODE>+</CODE> was a source code debugger for C<CODE>++</CODE>, but is now being
- withdrawn.
- <P>
- <LI>
- <B>Assembler and Object File Utilities</B>
- <P>
- GAS is a fairly portable, one pass assembler that is almost twice as
- fast as Unix <CODE>as</CODE>. It now works for Vaxes, 680x0, 32x32 and 80386.
- A port for Sparc (Sun 4) will be available soon.
- <P>
- The GNU replacements for <CODE>ld</CODE>, <CODE>nm</CODE>, <CODE>size</CODE>,
- <CODE>gprof</CODE>, <CODE>strip</CODE>, <CODE>ranlib</CODE>, etc., have been released with
- the GCC beta-test distribution.
- <P>
- The GNU linker <CODE>ld</CODE> runs significantly faster than the BSD version.
- Our <CODE>ld</CODE> is the only one that will give you source-line numbered
- error messages for multiply-defined symbols and undefined
- references.<P>
- <LI>
- <B>C<CODE>++</CODE> Library</B>
- <P>
- Doug Lea is writing <CODE>libg++</CODE>, a library with utility classes for
- C<CODE>++</CODE>.
- <P>
- <LI>
- <B>GNU Make Extended</B>
- <P>
- We have been distributing GNU Make for several months. An extended
- version including more text-processing capabilities and static
- rules is now available. It also supports parallelism.
- <P>
- <LI>
- <B>C Library</B>
- <P>
- Roland McGrath, who contributed a great deal to GNU Make, has a nearly
- complete set of ANSI C library functions. He will work full time this
- summer to complete them. These join the GNU <CODE>malloc</CODE>,
- <CODE>regexp</CODE> and <CODE>termcap</CODE> libraries. A better <CODE>malloc</CODE> may be
- written soon, and we will shortly add our <CODE>qsort</CODE> library routine.
- <CODE>gdbm</CODE> is about to enter beta test.<P>
- Meanwhile, Steve Moshier has contributed a full series of mathematical
- library functions.</UL>
- <P>
- <LI>
- <B>Preliminary Ghostscript</B>
- <P>
- We now distribute Ghostscript, the free GNU software that provides
- nearly all the facilities of a Postscript interpreter. It supports X
- version 11. Peter Deutsch is still doing some work on it.
- <P>
- Right now, Ghostscript will accept commands in Postscript and execute
- them by drawing on an X window. Karl Berry and Kathy Hargreaves will be
- working on adding more fonts. They could use the help of volunteers.
- Beside additional fonts, Ghostscript needs these enhancements: to serve
- as a previewer for multi-page files; to serve other X clients by drawing
- on their windows; to improve both it's performance and visual quality.
- Other suggestions for enhancements are welcome.
- <P>
- Ghostscript also includes a C-callable graphics library (for client
- programs that don't want to deal with the Postscript language), and also
- supports IBM PCs and compatibles with EGA graphics (but please don't ask
- the FSF staff any questions about this; we don't use PCs and don't have
- time to learn anything about them).
- <P>
- <LI>
- <B>Finger and Send</B>
- <P>
- We soon will have a daemon-based Finger program. It polls a
- selection of hosts and is thus able to tell you where each person is
- logged in.
- <P>
- We are also testing a Send program for sending immediate messages
- to other users across the net.
- <P>
- <LI>
- <B>Oleo</B>
- <P>
- Jay Fenlason is writing a spreadsheet named Oleo (better for you than
- the more expensive spreadsheet).
- <P>
- <LI>
- <B>GNU Mailer</B>
- <P>
- Landon Noll and Ronald Karr of Amdahl are writing a mail queuing and
- delivery system, called <CODE>smail</CODE>. This project is a supported part
- of the Amdahl UTS system--as free software!
- <P>
- We may use smail for GNU, or <CODE>zmailer</CODE>, which Rayan Zachariasen is
- writing, or perhaps both.
- <P>
- <LI>
- <B>Window System</B>
- <P>
- We are using the MIT X window system, which is free software.
- <P>
- <LI>
- <B>Other Utilities</B>
- <P>
- Our free replacement for Yacc is called Bison. We also have
- <CODE>cron</CODE>. We now have the world's fastest <CODE>grep</CODE>/<CODE>egrep</CODE>
- and the world's fastest <CODE>diff</CODE>. A new fast <CODE>sort</CODE> has just
- been finished. A "fast lex" called FLEX recently became available; we
- are now distributing it.
- <P>
- <LI>
- <B>Long Term</B>
- <P>
- Volunteers are working on a Smalltalk system and an APL system. Also,
- software for editing and playing music.
- <P>
- <LI>
- <B>Possible Target Machines</B>
- <P>
- The GNU operating system will require a CPU that uses 32-bit addresses
- and integers and addresses to the 8-bit byte. 1 megabyte of core should
- be enough, though 2 meg would probably make a noticeable improvement in
- performance. Running some of the system in 1/2 meg may be possible, but
- certainly not GNU Emacs, which requires more than 1 meg of
- addressable memory. Virtual memory will be required.
- <P>
- A hard disk will be essential; at least 20 meg will be needed to hold
- a minimal system. Plus more space for the user's files, of course.
- Perhaps 80 meg altogether for a personal GNU system.
- <P>
- Not that it will be impossible to adapt some or all of GNU for other
- architectures; but we don't currently consider it part of our job.
- <P>
- <LI>
- <B>Porting</B>
- <P>
- It is too early to inquire about porting GNU (except GNU Emacs, GDB, GNU
- C, and GAS). First, we have to finish it.
- <P>
- </UL>
- <P>
- <H1><A NAME="SEC15" HREF="bull7_toc.html#SEC15">GNU Documentation</A></H1>
- <P>
- GNU documentation is distributed as Texinfo source files. Texinfo
- source yields both a typeset hardcopy and an on-line format, accessed by
- a menu-driven system.
- <P>
- To make the printed manual, the Texinfo source file is processed through
- the TeX typesetting program. To make the on-line documentation using
- GNU Emacs, the Texinfo source file is processed with the <KBD>M-x
- texinfo-format-buffer</KBD> command; the resulting Info file is installed in
- the <TT>`info'</TT> directory which you reach by typing <KBD>C-h i</KBD>.
- <P>
- The following manuals, provided with our software, are also available in
- hardcopy; see the order form on the inside back cover.
- <P>
- The <B>Emacs Manual</B> describes how to use GNU Emacs. It also explains
- advanced features, such as outline mode and regular expression search.
- The manual tells how to use the special modes for programming in
- languages such as C and Lisp, how to use the tags utility, and how to
- compile and correct code. It also describes how to make your own
- keybindings and make other elementary customizations.
- <P>
- This manual does <EM>not</EM> cover programming in Emacs Lisp. This topic
- will be handled in an introductory Emacs Lisp programming manual and an
- Emacs Lisp reference manual. The reference manual should be out this
- summer. Watch for the announcement.
- <P>
- The <B>Texinfo Manual</B> describes how to write documents in Texinfo
- source code. It describes the markup language used to create both an
- Info file and a printed document from the same source file: how to make
- tables, lists, chapters, nodes, indices and cross references. It also
- describes how to use Texinfo Mode in GNU Emacs and how to catch
- mistakes.
- <P>
- The <B>Termcap Manual</B> is often described as "Twice as much as you
- ever wanted to know about Termcap". It describes the format of the
- Termcap data base, the definitions of terminal capabilities and how to
- interrogate a terminal description. This manual is primarily for
- programmers.
- <P>
- The <B>Bison Manual</B> describes how to write a grammar description
- that Bison can convert into a C program that can parse that grammar.
- This manual assumes no prior knowledge of parser generators. It
- describes the concepts and then provides a series of increasingly
- complex examples before describing what goes on in considerable detail.
- <P>
- The <B>GAWK Manual</B> describes how to use the GNU implementation of
- AWK. It is written for someone who has never used AWK before, and
- describes all the features of this powerful string manipulating
- language.
- <P>
- The <B>Make Manual</B> describes the GNU Make utility, a program used to
- rebuild parts of other programs when and as needed. The manual tells
- how to write a makefile, which describes how to recompile the parts of
- your program and how they depend on each other.
- <P>
- The <B>GDB Manual</B> explains how to use the GNU DeBugger. It
- describes how to run your program under control of the debugger, how to
- examine and alter data within the program, and how to modify the flow of
- control within the program. It also explains how to use GDB through GNU
- Emacs, with auto-display of source lines.
- <P>
- <H1><A NAME="SEC16" HREF="bull7_toc.html#SEC16">GNU Software Available Now</A></H1>
- <P>
- We now offer three Unix software source distribution tapes, plus VMS
- tapes for GNU Emacs and GNU C that include sources and VMS executables.
- The first Unix tape (called the "Release" or "Emacs" tape) contains
- GNU Emacs as well as various other well-tested programs that we consider
- reliable. The second Unix tape (called the "Beta test" or
- "Compiler" tape) contains the GNU C compiler and related utilities,
- and other new programs that are less thoroughly tested. The third Unix
- tape (called the "X11" tape) contains the X11 distribution from the
- MIT X consortium. See the order form, on the inside back cover, for
- details about media, etc.
- <P>
- <H3><A NAME="SEC17" HREF="bull7_toc.html#SEC17">Contents of Release Tape</A></H3>
- <P>
- The software on this tape is considered to be fairly stable, but as
- always, we welcome your bug reports.
- <P>
- <UL>
- <LI>
- <B>GNU Emacs</B>
- <P>
- In 1975, Richard Stallman developed the first Emacs: the 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, versions 10 and 11, which makes redisplay very fast. The
- current version is 18.55.
- <P>
- 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 good features and easier extensibility. Isaac Salzman of
- <I>Unix Review</I> magazine planned to compare the various publicly
- available Emacs', but only one company wanted their product to be
- compared with GNU Emacs. The review should appear in the June, 1989
- issue.
- <P>
- GNU Emacs (as of version 18.55) runs on many kinds of Unix systems:
- those made by Alliant, Altos 3068, Amdahl (UTS), Apollo, AT&T (3B
- machines and 7300 pc), CCI 5/32 and 6/32, Celerity, Convex, Digital
- (Vax, not PDP-11; BSD or SysV), Dual, Elxsi 6400, Encore (DPC and APC),
- Gould, HP (9000 series 200, 300 or 800 (Spectrum) but not series 500),
- HLH Orion 1/05, IBM (RT/PC;4.2 and AIX), Integrated Solutions (Optimum V
- with 68020 and VMEbus), Intel 80386 (BSD, SysV, and Xenix), Iris (2500,
- 2500 Turbo and 4D), LMI (Nu), Masscomp, Megatest, MIPS, NCR (Tower 32),
- Nixdorf Targon 31, Plexus, Pyramid, Sequent Balance, SONY News, Stride
- (system release 2), Sun (all kinds), Tahoe, Tektronix (NS16000 system &
- 4300), Texas Instruments (Nu), and Whitechapel
- (MG1).
- <P>
- GNU Emacs is described by the GNU Emacs Manual, which comes with the
- software in Texinfo form. See "GNU Documentation" above.
- <P>
- <LI>
- <B>GDB</B>
- <P>
- GDB 2.8 (GNU's Debugger) is the source-level C debugger written in 1986.
- It offers many features not usually found in debuggers on Unix, such as
- Emacs-style command history and substitution, a history that records all
- values examined within the debugger for concise later reference,
- multi-line user-defined commands, and good self-documentation.
- <P>
- GDB 2.8 currently runs on Vaxes under 4.2 and 4.3bsd, on Sun 3 under
- systems version 2 and 3 and 4, on the SPARC (Sun 4) under systems
- version 3.2 and 4.0, HP9K320, ISI, Merlin, SONY News, Gould NPL and PN,
- i386, and on some 32000 systems. GDB 3.<CODE>*</CODE> is currently being
- distributed on the beta tape, and supports several more systems.
- <P>
- On-line help and a users' manual for GDB comes with the software;
- the printed version of the manual is also available from the Foundation.
- <P>
- <LI>
- <B>Bison</B>
- <P>
- Bison is an upward-compatible replacement parser generator for Yacc,
- with additional features. It has been in use for several years. Bison
- is used for compiling GNU C, so it is included on the GNU beta tape
- as well. A users' manual for Bison comes with the software; the printed
- version is also available from the Foundation.
- <P>
- <LI>
- <B>X Window System, V10R4</B>
- <P>
- Version 10 of X Windows is distributed on the GNU Emacs tape; version 11
- (which is totally incompatible) is distributed on the X11 tape. GNU Emacs
- version 18.55 supports both versions 10 and 11.
- <P>
- <LI>
- <B>MIT Scheme</B>
- <P>
- Scheme is a simplified, lexically scoped dialect of Lisp, designed at
- MIT and other universities to teach students programming and research
- new parallel programming constructs and compilation techniques. Scheme
- is written in C and runs on many Unix systems.
- <P>
- <LI>
- <B>Yale T</B>
- <P>
- A variant of Scheme developed at Yale University, T 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 running speeds of programs written in conventional languages. It
- runs on BSD Vaxes and a few types of 68020 systems. 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.
- <P>
- <LI>
- <B><CODE>texi2roff</CODE></B>
- <P>
- <CODE>texi2roff</CODE> translates GNU Texinfo files into a format that can be
- printed by the Unix [nt]roff programs utilizing the mm, ms or me macro
- packages. It is included on both tapes so that people who don't have a
- copy of TeX can print out GNU documentation.
- <P>
- <LI>
- <B>GNU Chess and NetHack</B>
- <P>
- GNU Chess is a chess program written in C by John Stanback and Stuart
- Cracraft. It includes an extensive opening book and was recently rated
- by USCF Senior Master IM Larry Kaufman at around USCF 1950 (close to
- expert level) when run on a Sun 3 workstation. On a Sun 4, it should
- play at nearly master level.
- <P>
- Hack is a display oriented adventure game similar to Rogue.
- <P>
- </UL>
- <P>
- <H3><A NAME="SEC18" HREF="bull7_toc.html#SEC18">Contents of Beta Test Tape</A></H3>
- <P>
- The programs on this tape are all recent releases and can be considered
- to be at various stages of user testing. As always, we solicit your
- comments and bug reports. This tape is also known as the Compiler tape.
- <P>
- <UL>
- <LI>
- <B>GNU CC</B>
- <P>
- The GNU C compiler is a fairly portable optimizing compiler. It
- generates good code for the 32000, 680x0, 80386, Alliant, SPARC, SPUR,
- Tahoe, and Vax CPUs. Machines using these CPUs include the Encore
- NS32000, Genix NS32000, Sequent NS32000, AT&T 3B1, HP-UX 68000/68020,
- ISI 68000/68020, SONY News, All Sun's, Intel 386, Sequent Intel 386,
- Alliant FX/8. The MIPS processor is also supported. It supports full
- ANSI C as of the latest draft standard. Included with the compiler are
- the GNU assembler GAS, Make, Bison (also on the Emacs release tape), and
- the perfect hash-table generating utility (Gperf), plus the object file
- utilities <CODE>ld</CODE>, <CODE>nm</CODE>, <CODE>size</CODE>, <CODE>strip</CODE>, <CODE>ar</CODE>,
- <CODE>ranlib</CODE> and <CODE>gprof</CODE> and the Texinfo source of <CITE>The GCC
- Manual</CITE> (for those interested in extending or retargeting GCC).
- <P>
- <LI>
- <B>GDB</B>
- <P>
- Version 3 of GDB runs under BSD 4.2 and 4.3 on Vaxes and Suns (2, 3, and
- 4), Convex, HP 9000/300's under BSD, HP 9000/320's under HPUX, Intel 386
- workstation (with either GNU or native object file format), ISI Optimum
- V, Merlin under Utek 2.1, SONY News, Gould NPL and PN machines,
- Sequent Symmetry (a 386 based machine), and Encores under Umax 4.2.
- <P>
- <LI>
- <B>GAWK, FLEX and <CODE>tar</CODE></B>
- <P>
- GAWK is GNU's version of the Unix AWK utility; it comes with a Texinfo
- manual. FLEX is a mostly-compatible replacement for the Unix <CODE>lex</CODE>
- scanner generator written by Vern Paxson of the Lawrence Berkeley
- Laboratory. FLEX generates far more efficient scanners than <CODE>lex</CODE>
- does. GNU <CODE>tar</CODE> includes multivolume support, automatic compression and
- decompression of archives, remote archives, and special features to
- allow <CODE>tar</CODE> to be used for incremental and full backups of file
- systems.
- <P>
- <LI>
- <B>Freed Files from the U.C. Berkeley 4.3-tahoe Release</B>
- <P>
- 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
- utility programs, games, library routines and partial sources for many
- others.
- <P>
- <LI>
- <B>RCS and BASH</B>
- <P>
- The latest version of the Revision Control System for version control and
- management of large software projects.
- <P>
- The GNU Shell BASH (for Bourne Again SHell) provides compatibility with
- the Unix <CODE>sh</CODE> and extensions from both <CODE>csh</CODE> and <CODE>ksh</CODE>.
- <P>
- <LI>
- <B><CODE>diff</CODE> and <CODE>grep</CODE></B>
- <P>
- These programs are GNU's versions of the Unix programs of the same name.
- They are much faster than their Unix counterparts.
- <P>
- <LI>
- <B>Ghostscript and <CODE>gnuplot</CODE></B>
- <P>
- Ghostscript is GNU's graphics language. It is almost fully compatible
- with the postscript language. It supports X version 11.
- <P>
- <CODE>gnuplot</CODE> 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. However, we
- are distributing it anyway. If you can put us in contact with the
- author of this program, please do!
- <P>
- <LI>
- <B><CODE>g++</CODE>, <CODE>libg++</CODE>, OOPS, and InterViews</B>
- <P>
- G<CODE>++</CODE> is a set of changes for GCC, that compiles C<CODE>++</CODE>, the
- well-known object-oriented language. Since G<CODE>++</CODE> depends on GCC,
- it must be used with the correspondingly numbered version of GCC.
- <P>
- <CODE>libg++</CODE> (the GNU C<CODE>++</CODE> library) is a collection of C<CODE>++</CODE>
- classes and support tools for use with G<CODE>++</CODE>.
- <P>
- OOPS (Object-Oriented Program Support) class library is a portable
- collection of classes similar to those in Smalltalk-80 that has been
- developed by Keith Gorlen of NIH, using the C<CODE>++</CODE> programming
- language.
- <P>
- InterViews is an object-oriented, C<CODE>++</CODE> library to support the
- design and implementation of user interfaces.
- <P>
- <LI>
- <B>GnuGo</B>
- <P>
- GnuGo allows the user to play the machine in a game of Go (Wei-Chi). It
- is an updated version of the program called Hugo.
- <P>
- </UL>
- <P>
- <H3><A NAME="SEC19" HREF="bull7_toc.html#SEC19">Contents of X11 Tape.</A></H3>
- <P>
- The X11 tape contains Version 11, Release 3 of the MIT X window system.
- X11 is more powerful than, but incompatible with, the
- no-longer-supported version 10. MIT no longer labels Version 11 `beta
- test' but is still releasing frequent patches and updates.
- <P>
- <H3><A NAME="SEC20" HREF="bull7_toc.html#SEC20">VMS Emacs and Compiler Tapes</A></H3>
- <P>
- We offer a VMS tape of the GNU Emacs editor, and a separate VMS tape
- containing the beta-test 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 that you can bootstrap from.
- <P>
- <H1><A NAME="SEC21" HREF="bull7_toc.html#SEC21">How to Get GNU Software</A></H1>
- <P>
- 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.
- <P>
- If you have access to the Internet, you can get the latest software from
- the host <TT>`prep.ai.mit.edu'</TT>. For more information, read the file
- <TT>`/u/emacs/GETTING.GNU.SOFTWARE'</TT> on that host. Please note that the
- internet address of <TT>`prep'</TT> has changed to <CODE>18.71.0.38</CODE>.
- <P>
- If you cannot get the software from a friend or over the net, or if you
- would like to contribute some funds to our efforts and receive the
- latest versions, the Free Software Foundation distributes tapes for a
- copying and distribution fee. See the order form on the inside back
- cover.
- <P>
- There are also third party groups that distribute our software: people
- and organizations that do not work with us, but have our software in
- other forms. For your convenience, some of them are listed below.
- Please note that the Free Software Foundation is <I>not</I> affiliated with
- them in any way, and is not responsible for either the currency of their
- versions or the swiftness of their responses.
- <P>
- These Internet sites providing for anonymous FTP:
- <P>
- <PRE>
- scam.berkeley.edu, spam.istc.sri.com, bu-it.bu.edu,
- wsmr-simtel20.army.mil (under <TT>`PD:<UNIX.GNU>'</TT>),
- cc.utah.edu (VMS GNU Emacs), and uunet.uu.net.
- </PRE>
- <P>
- Those on the SPAN network can ask <TT>rdss::corbet</TT>.
- <P>
- Information on how to obtain some GNU programs using UUCP is available via
- electronic mail from:
- <P>
- <PRE>
- hao!scicom!qetzal!upba!ugn!nepa!denny, arnold@skeeve.UUCP,
- uunet!hutch!barber, hqda-ai!merlin, acornrc!bob,
- ames!killer!wisner, mit-eddie!bloom-beacon!ht!spt!gz,
- sun!nosun!illian!darylm, or info@uunet.uu.net.
- </PRE>
- <P>
- Ohio State also makes GNU programs available via UUCP. They post their
- instructions monthly to newsgroup <CODE>comp.sources.d</CODE> on USENET.
- Current details from Karl Kleinpaste <CODE>karl@tut.cis.ohio-state.edu</CODE>
- or <CODE>...!osu-cis!karl</CODE>; or Bob Sutterfield (substitute <CODE>bob</CODE>
- for <CODE>karl</CODE> in the above addresses).
- <P>
- Information on getting floppy disks of GNU Emacs for the AT&T Unix PC
- (aka 3B1 or PC7300) is available from: <CODE>brant@manta.pha.pa.us</CODE>.
- <P>
- <H1><A NAME="SEC22" HREF="bull7_toc.html#SEC22">Thank GNUs</A></H1>
- <P>
- Thanks to our <B>Anonymous Contributor</B>, and thanks to Hewlett-Packard
- for their donations of a $100,000 each. Also, thanks to the Open
- Software Foundation for their donation of $25,000.
- <P>
- Many thanks to the following people for copying Sun cartridges: <B>Barry
- Kleinman</B> and <B>Andre Mesarovic</B> of Index Technology; <B>George Brown</B>;
- <B>Devon McCullough</B> and <B>Nick Papadakis</B>; <B>Mark Nahabedian</B> and
- <B>Shaun Keller</B> of Phoenix Technology; and finally thanks in advance to
- <B>Mark Hannon</B> of ICAD.
- <P>
- Thanks to all those mentioned in GNU Flashes and the GNU Project
- Status Report.
- <P>
- Thanks to the MIT Laboratory for Computer Science, and its director,
- <B>Professor Michael Dertouzos</B>. LCS has provided FSF with the loan
- of a Microvax for program development.
- <P>
- Thanks to the MIT Artificial Intelligence Laboratory for invaluable
- assistance of many kinds.
- <P>
- Thanks to <B>Arnold Robbins</B> and <B>Dave Trueman</B> for their work on GAWK
- and the GAWK manual.
- <P>
- Thanks to <B>John Klensin</B> of the INFOODS Project at MIT for use of the
- project's machine for making our VMS master tapes.
- <P>
- Thanks go out to all those who have lent us machines, including
- <B>Brewster Kahle</B> of Thinking Machines, Inc. for the Sun 4/110, <B>K.
- Richard Magill</B> for the AT&T Unix PC, CMU's Mach Project for the Sun
- 3/60, Intel Corp. for their 386 workstation, and SONY Corp. and Software
- Research Associates, Inc., both of Tokyo, for the SONY News workstations.
- <P>
- 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.
- <P>
- Thanks to those who sent money and offered help. Thanks also to those
- who support us by ordering Emacs manuals and distribution tapes.
- <P>
- The creation of this bulletin is our way of thanking all who have
- expressed interest in what we are doing.
- <P>
- <HR>
- <P>
- <PRE>
- -------
- | |
- Free Software Foundation, Inc. | stamp |
- 675 Massachusetts Avenue | |
- Cambridge, MA 02139 USA | here |
- | |
- -------
- </PRE>
- <P>
- <HR>
- <P>
- Use rule at top of this page for page 1.
|