---------------------------------------------------------------------- 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:'), 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:'); 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 | | | ------- ----------------------------------------------------------------------