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: +1-617-876-3296 675 Massachusetts Avenue Fax: +1-617-492-9057 Cambridge, MA 02139-3309 Fax (in Japan): USA 0031-13-2473 (KDD) Electronic mail: `gnu@prep.ai.mit.edu' 0066-3382-0158 (IDC)
Noah Friedman is our system ambiguator, release coordinator, and maintains a few programs in his copious spare time. Carl Hoffman is our fundraiser and conference organizer.
Robert J. Chassell is again our Treasurer, replacing Lisa `Opus' Goldstein, who is on her way to China (`finally!', she says). Lisa Bloch is our new Executive Director, taking over from Lisa Goldstein. Britton Bradley and Larissa Carlson assist Lisa Bloch with many tasks in the Business Office. Charles Hannum works on typesetting and many other jobs.
Jim Blandy has left to adapt GNU Emacs for use by the University of Illinois' Ribosome Database Project; he is also working on free, Scheme-based drawing software. Melissa Weisshaus and Tom Lord have also left the FSF. All still volunteer part-time.
Richard Stallman continues as a volunteer who does countless tasks, such as Emacs maintenance. Volunteer Len Tower remains our online JOAT (jack-of-all-trades), handling mailing lists and gnUSENET, information requests, etc.
Illustrations by: Etienne Suvasa and Jamal Hannah
Japanese Edition by: Mieko Hikichi and Nobuyuki Hikichi
ISSN (International Standard Serial Number): 1075-7813
The GNU's Bulletin is published at the end of January and June of each year. Please note that there is no postal mailing list. To get a copy, send your name and address with your request to the address on the front page. Enclosing a business sized self-addressed stamped envelope ($0.52) and/or a donation of a few dollars is appreciated but not required. If you're from outside the USA, sending a mailing label and enough International Reply Coupons for a package of about 100 grams is appreciated but not required. (Including a few extra International Reply Coupons for copying costs is also appreciated.)
Copyright (C) 1994 Free Software Foundation, Inc.
Permission is granted to anyone to make or distribute verbatim copies of this document, 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.
*We don't have a patent on irony and satire; those tools are available for you to use in your own work.*- Guerrilla Girls, a New York City performance group
The word "free" in our name refers to freedom, not price. You may or may not pay money to get GNU software, but regardless you have two specific freedoms once you get it: first, the freedom to copy a program and give it away to your friends and co-workers; and second, the freedom to change a program as you wish, by having full access to source code. 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. If you redistribute GNU software you may charge a distribution fee or give it away, so long as you include the source code and the GPL; see ``What Is Copyleft?'', for details.
Other organizations distribute whatever free software happens to be available. By contrast, the Free Software Foundation concentrates on the 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 FSF distributes GNU software and manuals for a distribution fee and accepts gifts (tax-deductible in the U.S.) to support GNU development. Most of the FSF's funds come from this distribution service.
The Board of the Foundation is: Richard M. Stallman, President; Robert J. Chassell, Secretary/Treasurer; Gerald J. Sussman, Harold Abelson, and Leonard H. Tower Jr., Directors.
The copyleft used by the GNU Project is made from the combination of a regular copyright notice and the "GNU General Public License" (GPL). The GPL is a copying license which basically says that you have the aforementioned freedoms. An alternate form, the "GNU Library General Public License" (LGPL), applies to a few GNU libraries. This license permits linking the libraries into proprietary executables under certain conditions. The appropriate license is included in all GNU source code distributions and many manuals. Printed copies are available upon request.
We strongly encourage you to copyleft your programs and documentation, and we have made it as simple as possible for you to do so. The details on how to apply either license appear at the end of each license.
A complete system has tools for programmers, such as compilers and debuggers. It also has editors, sketchpads, calendars, calculators, spreadsheets, databases, electronic mail readers, and Internet navigators. The FSF already distributes most of the programs used in an operating system, all the tools regularly used by programmers, and much more.
Already, you can set yourself up as an entrepreneur to sell your services teaching, installing, improving, and modifying this software for others. Already, you can set yourself up as a programmer or writer who works on a 80386 or 80486 based computer and use only software that is freely redistributable. Already, all the tools you need as a programmer for editing, compiling, and debugging are free; all the tools you need as a writer for editing, revising, and typesetting a book are free; many tools you need for calculations or mathematics are free; and many games and other applications are free. Tools for electronic communications are free.
Not only are these tools useful to you, they are useful institutionally. Since distribution is free, you can pass on copies to other people in your company or organization without hindrance. No paperwork. As a teacher, you can give programs to your students without fearing that you are breaking the law. As a student, you can copy programs for your friends, and do good by doing so. If you are poor, you can copy and use the same software used by the rich; and if you are rich, you can contribute your improvements to the common heritage. If you are ignorant, you can learn. If you know a great deal, you can help others.
One goal of the Hurd is to establish a framework for shared development and maintenance. The Hurd is like GNU Emacs in that it will allow a broad range of users to create and share useful projects without knowing much about the internal workings of the system--projects that might never have been attempted without freely available source, a well-designed interface, and a multiserver-based design.
Currently there are free ports of the Mach kernel to the 386 PC, the DEC PMAX workstation, the Luna 88k, and several other machines, with more in progress, including the Amiga and DEC Alpha-3000 machines. Contact CMU c/o `mach@cs.cmu.edu', if you want to help with one of these or start your own. Porting the GNU Hurd and GNU C Library is easy (easier than porting GNU Emacs, certainly easier than porting GCC) once a Mach port to a particular platform exists.
Important progress has been made recently; see ``GNUs Flashes''.
There are significant projects relating to the Hurd for which we need volunteers. Experienced system programmers who are interested should send mail to `gnu@prep.ai.mit.edu'. Porting the Mach kernel or the GNU C Library to new systems is another way to help development of the Hurd.
Austin Code Works, a redistributor of free software, has agreed to support free software development by giving the FSF 20% of the selling price for the GNU software packages they produce and sell.
The Sun Users Group Deutschland has agreed to add a donation to the FSF to the price of their next CD-ROM of GNU software. Potential purchasers will know precisely how much is for the FSF and how much is for SUGD.
In the long run, the success of free software depends on how much new free software people develop. Free software distribution offers an opportunity to raise funds for such development in an ethical way. These two redistributors have made use of the opportunity. Many others let it go to waste.
You can help promote free software development by convincing for-a-fee redistributors to contribute--either by doing development themselves, or by donating to development organizations (the FSF and others).
The way to convince distributors to contribute is to demand and expect this of them. This means choosing among distributors partly by how much they give to free software development. Then you can show distributors they must compete to be the one who gives the most.
To make this work, you must insist on numbers that you can compare, such as, "We will give ten dollars to the Foobar project for each disk sold." A vague commitment, such as "A portion of the profits are donated", doesn't give you a basis for comparison. Even a precise fraction "of the profits from this disk" is not very meaningful, since creative accounting and unrelated business decisions can greatly alter what fraction of the sales price counts as profit.
Also, press developers for firm information about what kind of development they do or support. Some kinds make much more long-term difference than others. For example, maintaining a separate version of a GNU program contributes very little; maintaining a program on behalf of the GNU project contributes much. Easy new ports contribute little, since someone else would surely do them; difficult ports such as adding a new CPU to the GNU compiler contribute more; major new features and programs contribute the most.
By establishing the idea that supporting further development is "the proper thing to do" when distributing free software for a fee, we can assure a steady flow of resources for making more free software.
These free software support companies regularly donate a part of their income to the Free Software Foundation to support the development of new GNU programs. Listing them here is our way of thanking them. Also see ``Cygnus Matches Donations!''.
Contributed Software GbR
Graefestr. 76
D-10967 Berlin
Germany
Hundred Acre Consulting
- Telephone:
- (+49-30) 694-69-07
- Fax:
- (+49-30) 694-68-09
- Electronic-Mail:
- `info@contrib.de'
- BBS & no-charge free software archive:
Dialins:- (+49-30) 693-40-51 (eight USR DS's)
(+49-30) 694-60-55 (five ZyXELs)
- Telnet:
- `uropax.contrib.de' [192.109.39.2]
- FTP:
- `ftp.contrib.de'
- WWW:
- `http://www.contrib.de/'
5301 Longley Lane, Suite D-144
Reno, NV 89511
USA
- Telephone:
- 702-829-9700
+1-800-245-2885
- Fax:
- 702-829-9926
- Electronic-Mail:
- `info@pooh.com'
- FTP:
- `ftp.pooh.com'
- WWW:
- `http://www.pooh.com/'
- Gopher:
- `gopher.pooh.com'
The GNU Service Directory is a list of people who offer support and other consulting services. It is in the file `etc/SERVICE' in the GNU Emacs distribution, `SERVICE' in the GCC distribution and `/pub/gnu/GNUinfo/SERVICE' on GNU's FTP host `prep.ai.mit.edu'. Contact us if you would like a copy or wish to be listed in it. Those companies who share their income with the FSF are listed in ``Help from Free Software Companies''.
If you find a deficiency in any GNU software, we want to know. We have many Internet mailing lists for bug reports, announcements and questions. They are also gatewayed into USENET news as the `gnu.*' newsgroups. You can request a list of the mailing lists from either address on the front cover.
When we receive a bug report, we usually try to fix the problem. 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; we do not have the resources to help individuals. We may send you a patch for a bug so that you can help us test the fix and ensure its quality. If your bug report does not evoke a solution from us, you may still get one from another user who reads our bug report mailing lists. Otherwise, use the Service Directory.
Please do not ask us to help you install software or figure out how to use it--but do tell us how an installation script does not work or where documentation is unclear.
If you have no Internet access, you can get mail and USENET news via UUCP. Contact a local UUCP site, or a commercial UUCP site such as:
UUNET Communications ServicesA list of commercial UUCP and Internet service providers is posted periodically to USENET in the newsgroup `news.announce.newusers' with `Subject: How to become a USENET site'. You can also get it via anonymous FTP from `rtfm.mit.edu' in the file `How_to_become_a_USENET_site', in the directory `/pub/usenet-by-group/news.announce.newusers'.
3110 Fairview Park Drive -- Suite 570
Falls Church, VA 22042
USA
- Telephone:
- +1-800-4UUNET4
+1-703-204-8000
- Fax:
- +1-703-204-8001
Electronic-Mail: `info@uunet.uu.net'
When choosing a service provider, ask those you are considering how much they do to assist free software development, e.g., by contributing money to free software development or by writing free software improvements themselves for general use. By basing your decision partially on this factor, you can help encourage those who profit from free software to contribute to its growth.
The League's members include programmers, entrepreneurs, students, professors, and even software companies.
From the League membership form:
The League for Programming Freedom is a grass-roots organization of professors, students, business people, 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.To join, please send a check and the following information:Membership dues in the League are $42 per year for programmers, managers and professionals; $10.50 for students; $21 for others.
If you haven't made up your mind yet, write to LPF for more information:
League for Programming Freedom
1 Kendall Square - #143
P.O. Box 9171
Cambridge, MA 02139
USATelephone: +1-617-243-4091
Electronic-Mail: `lpf@uunet.uu.net'
`nepoch' (the Japanese versions of Epoch) and MULE are available and widely used in Japan. MULE (the MULtilingual Enhancement of GNU Emacs) can handle many character sets at once. Eventually its features will be merged into the FSF's version of Emacs. The FSF does not distribute `nepoch', but MULE is available on the ``Source Code CD-ROM''. You can also FTP it from `sh.wide.ad.jp' in `/JAPAN/mule' or `etlport.etl.go.jp' in `/pub/mule'. See ``GNU Software'', for more information about MULE.
The Village Center, Inc. prints a Japanese translation of the `GNU Emacs Lisp Reference Manual' and uploads the Texinfo source to various bulletin boards. They have also published a copylefted book, Nobuyuki's and Mieko's `Think GNU'. This appears to be the first non-FSF copylefted publication in Japan. Part of the profits are donated to the FSF. Their address is:
Village Center, Inc.Addison-Wesley Publishers Japan Ltd. has printed a Japanese translation of the `GNU Make Manual' and `GAWK Manual'. Their address is:
3-2 Kanda Jinbo-cho, Chiyoda-ku
Tokyo 101, JapanTelephone: 03-3221-3520
Addison-Wesley Publishers Japan Ltd.GNU manuals (in English), T-shirts and CD-ROMs are available from both:
Nichibou Bldg. 2F
1-2-2 Sarugaku-cho, Chiyoda-ku
Tokyo 101, JapanTelephone: 03-3291-4581
Shosen Book TowerThe Institute for New Generation Computer Technology, ICOT, has released the "ICOT Free Software (IFS)" distribution. The famous Fifth Generation Computing System project produced this distribution, which includes over 80 systems for symbol processing, knowledge processing, problem solving, inference, and natural language processing. Many of them are based on parallel logic programming. For details, contact `ifs@icot.or.jp'.
1-11-6 Kanda Sakuma-cho, Chiyoda-ku
Tokyo 101, JapanTelephone: 03-5296-0051
Shosen Grande
1-3 Kanda Jinbo-cho, Chiyoda-ku
Tokyo 101, JapanTelephone: 03-3295-0011
There is a mailing list in Japan to discuss both hardware and software which is under the GNU General Public License. This list provides information about making your own computer system. The main language used on the list is Japanese. If you are interested in getting information or having discussions in English, contact `mka@apricot.juice.or.jp' or `ishiz@muraoka.info.waseda.ac.jp'.
Many groups in Japan now distribute GNU software. They include JUG, a PC user group; ASCII, a periodical and book publisher; the Fujitsu FM Towns users group; and SRA's special GNU support group, called Wingnut, who also purchased the first Deluxe package in Japan. (Since then, there have been several other purchases of the Deluxe package in Japan.)
Anonymous UUCP is available until the end of December, 1994. After that it will be canceled due to a lack of disk space, time and the ease with which GNU software can be obtained via FTP and on CD-ROM and other media. Since the service was started 5 years ago, over 300 tapes have been made, and over 600 hosts have made more than 20,000 calls to the UUCP server to get GNU and other free software. For more information, contact `toku@dit.co.jp'.
It is easy to place an order directly with the FSF from Japan, thus funding new code. To get an FSF Order Form written in Japanese, ask `japan-fsf-orders@prep.ai.mit.edu'. There are also two toll-free Fax numbers for use in Japan (see page 1). We encourage you to buy software on tapes or CDs: for example, every 150 tape orders allows FSF to hire a programmer for a year to write more free software.
If you'd like to volunteer, please send mail to `dictionary@gnu.ai.mit.edu'. We'll send you 20 xeroxed pages plus the description of the online dictionary format. (Be *very* careful to follow the format.)
This project provides a way for people without programming skills or money to contribute to the GNU Project.
The Hurd runs GNU Hello! The Hurd has successfully bootstrapped, which means that it loads the core servers and it can run simple utilities. At press time, it ran a simple shell, a simple `ps', most of the shellutils, most of the textutils and all of the fileutils. Progress is being made so rapidly that by the time you read this it probably does much more.
For a complete non-network system, we still need to finish the support for signals (although some simple test programs that use signals already work), the terminal driver, and the local sockets code (at least for pipes). We have a mailing list to distribute announcements about progress; send mail to `hurd-ann-request@prep.ai.mit.edu' to be added to it.
FSF updated the ``X11 Tapes'' and the ``May 1994 Source Code CD-ROM'' to the just-released X11R6. This is the first major update since X11R5 was released in September, 1991. We will distribute X11R5 on tape until X11R6 is stable, and on the ``November 1993 Source Code CD-ROM'', while supplies last.
The FSF has begun distributing 4.4BSD-Lite and dropped the old Berkeley Networking 2 tape. The "Lite" refers to the omittance of some proprietary files that still remain in the full 4.4BSD distribution. However, 4.4BSD-Lite is considerably more complete than the previous Networking 2 release.
GNU Common Lisp (GCL) has been added. Previously, GCL had distribution terms under which each user had to have a signed paper contract on file. However, the authors recently decided to switch to the GPL. See ``GNU Software'', and ``Emacs Tape'', for more information.
The GNU Emacs Lisp Reference Manual has been updated. The new edition includes bug fixes and additional information. See ``GNU Documentation''.
Octave has been added. See ``GNU Software'' and ``Languages Tape'', for more information.
`ed' has been added. `elvis' has been replaced by `nvi'. See ``GNU Software'' and ``Utilities Tape'', for more information.
This CD-ROM has all the new programs and changes on the tapes. X11R6 has also replaced X11R5. See ``Source Code CD-ROM'', for details.
Arnold Robbins, `arnold@gnu.ai.mit.edu', a long-time volunteer for the GNU project, is the author of "What's GNU?", a regular column in the new monthly magazine `Linux Journal'. The column discusses the GNU project, its software and other interesting free software. It is available from the publishers of `Linux Journal'. Contact Arnold or Phil Hughes, `phil@fylz.com', the publisher of `Linux Journal' for more information.
We are not currently distributing the Experimental Tape because most of the programs that were on it are now stable. GCC, GAS, Binutils, libg++, and the C Library are now on the ``Languages Tape'', replacing prior releases. Oleo & GNU Graphics are now on the ``Utilities Tape''.
We now have a CD-ROM that contains executables for the GNU compiler tools for some systems that don't normally come with a compiler. This allows users of those systems to compile GNU and other free software without having to buy a proprietary compiler. See ``Compiler Tools Binaries CD-ROM'', for more details, including which platforms are supported.
We hope to include more systems with each update of this CD-ROM. If you can help build binaries for new systems, or have a system to suggest, please contact us at either address on the front cover.
We are now offering a subscription service for the Source Code CD-ROM in addition to our tape subscription service. For the price of 3 CD-ROMs (plus any shipping costs) you get the next 4 that we make. Presently we make two updates a year, but we may go to more frequent updates. See ``Tape & CD-ROM Subscription Service''.
You can now send orders and donations to FSF by fax. Please fax in a completed ``Free Software Foundation Order Form'', including credit card information, since orders must be prepaid. We do *not* accept purchase orders. The number is +1-617-492-9057 in the U.S. and everywhere else except Japan. In Japan, the fax numbers are toll-free: 0031-13-2473 (KDD) and 0066-3382-0158 (IDC).
We have added a copy of the GNU General Public License to the back of our T-shirt, which used to be blank. See ``FSF T-shirt''.
A group of companies including Intel, Motorola, Texas Instruments and Analog Devices have pooled funds to support central maintenance of GNU CC, which is now done by Richard Kenner of New York University.
This task is to take responsibility for fixing bugs, integrating and cleaning up contributions, making releases and writing high priority improvements.
`makeinfo' is being modified to translate Texinfo source files into HTML documents that can be displayed from the Internet's World Wide Web.
Planned development for GNU Common Lisp (GCL) includes moving to the ANSI standard, adding a byte compiler with source level debugging, and adding a windowing interface. A new compiler is being tested; it will make all functions pass arguments on the C stack and return values in a standard register with additional locations when necessary. This will speed up other function calls and funcalling (critical for object oriented work). Contributors to any of these areas would be helpful; contact `schelter@math.utexas.edu'.
Emacs is the extensible, customizable, self-documenting real-time display editor. Features planned for future releases of Emacs include: different visibility conditions for regions and for multiple windows showing the same buffer; incrementally saving the undo history in a file, so that you can undo older changes in the history; support for variable-width fonts; and support for wide character sets including all the world's major languages.
The FSF is adding interpreter facilities to the GNU compiler and debugger. This task is partly finished. GCC now generates byte code (for all supported languages: C, C++ and Objective-C) and another package interprets it.
To make this work usable, we need to add features to GDB to load the byte code dynamically. We also would like C compiler support for compiling just a specified few functions in a file. Due to limited resources, the FSF cannot fund this. Interested volunteers should contact `gnu@prep.ai.mit.edu'.
The GNU assembler is in the process of being rewritten to fully use the BFD library. Currently BFD is used only on some platforms. When this work is finished, porting the entire compiler support suite (GAS and Binutils) to new platforms should be easier. Forthcoming versions will include support for the HP-PA, DEC Alpha (running OSF/1), RS/6000 and PowerPC processors.
New front ends for GCC are being developed, but they are not yet part of GCC. A front end for Fortran is now in alpha test and is approaching completion, and a front end for Ada (GNAT: The GNU Ada Translator) is available via anonymous FTP from `cs.nyu.edu' in `/pub/gnat', though it is not yet stable. News about GNAT is posted to the USENET newsgroup `comp.lang.ada'. Volunteers are also developing a Pascal front end.
GNU Fortran (`g77') is in "private" alpha test (testing by a small group of experts) and is not yet publicly released. Until `g77' is fully released to the public, we ask people to use `f2c' (a Fortran-to-C translator) with GCC. As `g77' uses a lot of these tools (the `f2c' libraries and the GCC back end), using them and reporting any problems you find will help speed the release of `g77'.
The primary focus of the alpha test is to test the `g77' front end, since that has most of the new code. The secondary focus of the alpha test is to test the integration between the front end and the back end. Currently, this is where most of the bugs seem to be. The tertiary focus is the quality of code generated by the GNU back end for Fortran.
We hope to have a `g77' beta release in summer 1994, as part of the regular compiler distribution. A mailing list exists for announcements about `g77'. To subscribe, ask `info-gnu-fortran-request@prep.ai.mit.edu'. To contact the author and maintainer of `g77', write to `fortran@prep.ai.mit.edu'.
Ghostscript 2.6.2, consisting of version 2.6.1 with bug fixes, will be released and distributed by FSF sometime in late 1994. Ghostscript 3.0 will be released and distributed by FSF in the second quarter of 1995; a future GNU's Bulletin will have a more definite date. It will implement the full PostScript Level 2 language except for LZW compression, which can't be freely implemented because of software patents. (Prohibitions like this on programming are what the League for Programming Freedom is fighting. See ``What Is the LPF?'', for details.)
A new version of Russell Lang's Ghostview for Windows will be released during the second quarter of 1994. The name has been changed to "GSview for Windows" in order to avoid confusion with Tim Theisen's Ghostview. An OS/2 port called "PM GSview" will be released at the same time. For more information, contact Russell at `rjl@monu1.cc.monash.edu.au'.
The GNU mp library, version 2.0, (due out soon) has arbitrary precision floating point arithmetic, is more portable, and is up to 4 times faster than previous versions.
Volunteers are writing an Oleo manual and extensions to the Oleo interface.
Tom Lord has written a new regular expression library which is faster than the current library we use. Currently it is only being distributed with `sed'; eventually we will distribute it as a separate package as well. This new library is nearly a drop-in replacement for the current regex library used by the GNU Project, but it needs a few more features before it can be used in Emacs.
Future versions will contain significant performance improvements, ability to use the Smalltalk interpreter as a subroutine, better interfaces to the MIT X Window System, ability to represent and manipulate C data structures in Smalltalk, conditional compilation facilities, large integer support, exceptions, and weak references & finalization support.
A goal of the FreeLore Project is to do "serious" book-length writing, and give it away for free. John Goodwin is now concentrating on writing freelore and to show what it is by example (not unlike the FSF). You can FTP his results from `world.std.com' in `/obi/Networking/John.Goodwin'. To volunteer, contact `jgoodwin@delphi.fnal.gov'.
OBI focuses on freely redistributable books, reference material, conference proceedings, catalogues, etc. OBI has about 400MB of (mostly compressed) text online, ranging from poetry to standards documents to novels. You may anonymous FTP texts from `obi.std.com' in `/obi'. You can also dial `world.std.com' with a modem (617-739-9753, 8N1) and create an account to access this information (login as `new'). Accounts on `world' are charged for their connect time (ask `info@world.std.com' for details).
Project Gutenberg is the brainchild of Michael Hart. Professor Hart's hope for success derives from the nature of what he calls `Replicator Technology'. Once anything is stored in a computer, it can be reproduced indefinitely, making it available to all who want it. Texts from Project Gutenberg are available at a number of FTP sites, including `mrcnext.cso.uiuc.edu' in file `/etext' and `oes.orst.edu' in file `/pub/almanac/etext'. To find out how to obtain text via e-mail, send the word `HELP' in the body of a message to `BITFTP%PUCC.BITNET@mitvma.mit.edu'. Or look at `bit.listserv.gutnberg', a USENET newsgroup. For more information, write to `dircompg@ux1.cso.uiuc.edu'.
Project Runeberg publishes works of literature and art which meet three criteria: they are machine-readable; in a Scandinavian language (such as Swedish, Danish, Norwegian, Icelandic and Faroese) or created by an artist from a Nordic country; and free for duplication and distribution by anyone and for any purpose. Project Runeberg was founded in March 1993, inspired by Project Gutenberg. Coordinated by Lars Aronsson, Project Runeberg is an activity of Lysator, a student computer club at Linkoping University in Linkoping, Sweden.
FTP from host `ftp.lysator.liu.se' in `/pub/runeberg/README'. Access Gopher via type 1 host `gopher.lysator.liu.se' path `/project-runeberg'. `http://www.lysator.liu.se:7500/runeberg/Main.html' is the URL on the World Wide Web. For more information or to join the mailing list, ask `runeberg-list-request@lysator.liu.se', or send postal mail to: Lysator, Universitetet, S-581 83 Linkoping, Sweden. 2
The locations below are URLs (Uniform Resource Locators) on the Internet's World Wide Web (WWW). This list was compiled by Michael Larsen.
Project Bartleby is one of the few initiatives which appears to enter texts by hand, including the complete poems of Wordsworth, Their texts are at `gopher://gopher.cc.columbia.edu:71/11/miscellaneous/cubooks'. CopticNet has Coptic scriptural materials at `ftp://pharos.bu.edu/CN'. The Quartz archive has a few texts not available at other locations at `ftp://quartz.rutgers.edu/pub/etext/misc'. The Libellus Project has Latin texts at `ftp://ftp.u.washington.edu/public/libellus/texts'. The Oxford Text Archive's large collection is at `ftp://ota.ox.ac.uk/ota'. The English Server at CMU is at `http://english-server.hss.cmu.edu/' with some poems at `http://english-server.hss.cmu.edu/Poetry.html'. The Sardinia Research Center has a few Italian classics, including La Divina Commedia at `http://www.crs4.it/HTML/homecrs4.html'. The University of Toronto has some James Joyce at `gopher://gopher.epas.utoronto.ca'. Wiretap is similar to Project Gutenberg in focus and scope and is it located at URL `ftp://wiretap.spies.com/Library'. The Women's Studies program at Maryland has some poems by women, especially Emily Dickinson, at URL `gopher://info.umd.edu:901/11/inforM/Educational_Resources/WomensStudies'.
Most GNU manuals are bound as soft cover books with "lay-flat" bindings. This allows you to open them so they lie flat on a table without creasing the binding. Each book has an inner cloth spine and an outer cardboard cover that will not break or crease as an ordinary paperback will. Currently, the `Emacs', `GDB', `Emacs Lisp Reference', `GAWK', `Make', `Flex', `Bison', and `Texinfo' manuals have this binding. The other GNU manuals are also bound so they lie flat when opened, using a GBC binding. All of our manuals are 7in by 9.25in except the `Calc' manual, which is 8.5in by 11in.
The edition number of the manual and version number of the program listed after each manual's name were current at the time this Bulletin was published.
The `Emacs Manual' (9th Edition for Version 19) describes editing with GNU Emacs. It explains advanced features, including outline mode and regular expression search, how to use special modes for programming in languages like C++ and TeX, how to use the `tags' utility, how to compile and correct code, how to make your own keybindings, and other elementary customizations.
`Debugging with GDB' (Edition 4.09 for Version 4.9) tells how to use the GNU Debugger, run your program under debugger control, examine and alter data, modify a program's flow of control, and use GDB through GNU Emacs.
The `GNU Emacs Lisp Reference Manual' (Edition 2.3 for Version 19.23) covers this programming language in depth, including data types, control structures, functions, macros, syntax tables, searching/matching, modes, windows, keymaps, byte compilation, and the operating system interface.
The `GAWK Manual' (Edition 0.16 for Version 2.16) tells how to use the GNU implementation of `awk'. It is written for those who have never used `awk' and describes the features of this powerful string and record manipulation language.
The `Make Manual' (Edition 0.43 for Version 3.68) describes GNU `make', a program used to rebuild parts of other programs. The manual tells how to write "makefiles", which specify how a program is to be compiled and how its files depend on each other. Included are an introductory chapter for novice users and a section about automatically generated dependencies.
The `Flex Manual' (Edition 1.03 for Version 2.3.7) tells you how to write a lexical scanner definition for the `flex' program to create a C++ or C-coded scanner that will recognize the patterns described. You need no prior knowledge of scanner generators.
The `Bison Manual' (December 1993 Edition for Version 1.23) teaches you how to write context-free grammars for the Bison program that convert into C-coded parsers. You need no prior knowledge of parser generators.
`Using and Porting GNU CC' (October 1993 Edition for Version 2.5) explains how to run, install, and port the GNU C Compiler to new systems. It describes new features and incompatibilities of the compiler, but people not familiar with C will also need a good reference on the C programming language. This manual also covers G++.
The `Texinfo Manual' (Edition 2.19 for Version 3) explains the markup language used to generate both the online Info documentation and typeset hardcopies. It tells you how to make tables, lists, chapters, nodes, indexes, cross references, how to use Texinfo mode in GNU Emacs, and how to catch mistakes. This second edition describes over 50 new commands.
The `Termcap Manual' (2nd Edition for Version 1.2), 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 `C Library Reference Manual' (June 1993 Edition for Version 1.07) describes most of the facilities of the GNU C library, including both what Unix calls "library functions" and "system calls." We are doing limited copier runs of this manual until it becomes more stable. It is new, and needs corrections and improvements. Please send them to `bug-glibc-manual@prep.ai.mit.edu'.
The `Emacs Calc Manual' (Edition 2.02 for Version 2.02) includes both a tutorial and a reference manual for Calc. It describes how to do ordinary arithmetic, how to use Calc for algebra, calculus, and other forms of mathematics, and how to extend Calc.
In the articles describing the contents of each medium, the version number listed after each program name was current when we published this Bulletin. When you order a distribution tape or diskette, some of the programs may be newer, and therefore the version number higher.
Key to cross reference:
We are using a uniform scheme for configuring GNU software packages in order to compile them, which uses the `autoconf' program. All GNU software supports the same alternatives for naming machine and system types. This makes it possible to configure any and all GNU software in the same manner.
The configuration scheme also supports configuring a directory containing several GNU packages with one command. When the GNU system is complete it will be possible to configure and build the entire system at once, eliminating the need to separately configure each individual package.
The configuration scheme can also specify both the host and target system, so you can easily configure and build cross-compilation tools.
GNU software currently available:
(For new features and coming programs, see ``Forthcoming GNUs''.)
`acm' is a LAN-oriented, multiplayer aerial combat simulation that runs under the MIT X Window System. Players engage in air to air combat against one another using heat seeking missiles and cannons. Eventually we hope to turn this into a more general purpose flight simulator.
Autoconf produces shell scripts which automatically configure source code packages. These scripts adapt the packages to many kinds of Unix-like systems without manual user intervention. Autoconf creates a script for a package from a template file which lists the operating system features which the package can use, in the form of `m4' macro calls. Autoconf requires GNU `m4' to operate, but the resulting configure scripts it generates do not.
Most GNU programs now use Autoconf-generated configure scripts.
The GNU shell, BASH (Bourne Again SHell), is compatible with the Unix `sh' and offers many extensions found in `csh' and `ksh'. BASH has job control, `csh'-style command history, and command-line editing (with Emacs and `vi' modes built-in, and the ability to rebind keys) via the readline library. BASH conforms to the POSIX 1003.2 shell specification.
`bc' is an interactive algebraic language with arbitrary precision. GNU `bc' follows the POSIX 1003.2 draft standard, with several extensions including multi-character variable names, an `else' statement and full Boolean expressions. GNU `bc' does not require the separate `dc' program.
The Binary File Descriptor library allows a program which operates on object files (e.g. `ld' or GDB) to support many different formats in a clean way. BFD provides a portable interface, so that only BFD needs to know the details of a particular format. One result is that all programs using BFD will support formats such as a.out, COFF, ELF & OSF-Rose. BFD comes with source for Texinfo documentation (not yet published on paper).
Presently BFD is not distributed separately because it is not yet completely stable; however, it is included with packages that use it.
Binutils includes the programs: `ar', `c++filt', `demangle', `gprof', `ld', `nlmconv', `nm', `objcopy', `objdump', `ranlib', `size', `strings', & `strip'.
Binutils Version 2 is completely rewritten to use the BFD library. The GNU linker `ld' emits source-line numbered error messages for multiply-defined symbols and undefined references. It interprets a superset of the AT&T Linker Command Language, which gives general control over where segments are placed in memory. `nlmconv' converts object files into Novell NetWare Loadable Modules. The `objdump' program can disassemble code for a29k, ALPHA, H8/300, H8/500, HP-PA, i386, i960, m68k, m88k, MIPS, SH, SPARC, & Z8000 processors, and can display other data such as symbols and relocations from any file format understood by BFD.
Bison is an upwardly compatible replacement for the parser generator `yacc'. Texinfo source for the `Bison Manual' and reference card are included. See ``GNU Documentation''.
The GNU C library supports ANSI C-1989 and POSIX 1003.1-1990 and has most of the functions specified in POSIX 1003.2-1992. It is upwardly compatible with 4.4BSD and includes many System V functions, plus GNU extensions.
The C Library will perform many functions of the Unix system calls in the Hurd. Mike Haertel has written a fast `malloc' which wastes less memory than the old GNU version. The GNU regular-expression functions (regex) now nearly conform to the POSIX 1003.2 standard.
GNU `stdio' lets you define new kinds of streams, just by writing a few C functions. The `fmemopen' function uses this to open a stream on a string, which can grow as necessary. You can define your own `printf' formats to use a C function you have written. For example, you can safely use format strings from user input to implement a `printf'-like function for another programming language. Extended `getopt' functions are already used to parse options, including long options, in many GNU utilities.
Version 1.08 has just been released, adding support for Sun RPC, `mmap' and friends, and compatibility with several more traditional Unix functions. It runs on Sun-3 (SunOS 4.1), Sun-4 (SunOS 4.1 or Solaris 2), HP 9000/300 (4.3BSD), SONY News 800 (NewsOS 3 or 4), MIPS DECstation (Ultrix 4), DEC Alpha (OSF/1), i386/i486 (System V, SVR4, BSD, SCO 3.2 & SCO ODT 2.0), Sequent Symmetry i386 (Dynix 3) & SGI (Irix 4). Texinfo source for the `GNU C Library Reference Manual' is included (see ``GNU Documentation''.); the manual still needs updating.
The GNU C++ library (libg++) is an extensive collection of C++ `forest' classes, a new IOStream library for input/output routines, and support tools for use with G++. Among the classes supported are Obstacks, multiple-precision Integers and Rationals, Complex numbers, arbitrary length Strings, BitSets and BitStrings. There is also a set of pseudo-generic prototype files for generating common container classes. Texinfo source for partial documentation is included (not yet published on paper).
Calc (written by Dave Gillespie in Emacs Lisp) is an extensible, advanced desk calculator and mathematical tool that runs as part of GNU Emacs. If you wish, you can use Calc just as a simple four-function calculator, but it provides additional features including choice of algebraic or RPN (stack-based) entry, logarithmic functions, trigonometric and financial functions, arbitrary precision, complex numbers, vectors, matrices, dates, times, infinities, sets, algebraic simplification, differentiation, and integration. It also outputs to `gnuplot'. Calc comes with Texinfo source for a reference card and the `Calc Manual', which serves as a tutorial and reference. See ``GNU Documentation''.
GNU Chess lets the computer play a full game of chess with you. It runs on most platforms and has dumb terminal, "curses", and X terminal interfaces.
GNU Chess implements many specialized features including the null move heuristic, a hash table with aging, the history heuristic (another form of the earlier killer heuristic), caching of static evaluations, and a database which lets it play the first several moves in the game quickly.
Recent improvements include better heuristics, faster evaluation, thinking on opponent's time, Swedish and German language support, support for more book formats, a rudimentary Bobby Fischer clock, and bug fixes.
GNU Chess is primarily supported by Stuart Cracraft, Mike McGann, Chua Kong Sian, and Tim Mann on behalf of the FSF.
Stuart Cracraft
25682 Cresta Loma
Laguna Niguel, CA 92677
USATelephone: +1-714-347-8107
Electronic-Mail: `cracraft@ai.mit.edu'
CLISP is a Common Lisp implementation (CLtL1 + parts of CLtL2) by Bruno Haible and Michael Stoll. It mostly supports the Lisp described by `Common LISP: The Language (1st edition)'. CLISP includes an interpreter, a byte-compiler, a subset of CLOS and, for some machines, a screen editor. It has user interfaces in English & German (& French soon), chooseable at compile time. Major packages that run in CLISP include PCL and, on Unix machines, CLX & Garnet. CLISP needs only 1.5 MB of memory and runs on many microcomputers (including the Atari ST, Amiga 500-4000, most MS-DOS systems & OS/2) & some Unix workstations (Linux, Sun4, Sun386, HP9000/800, SGI, Sun3 and others).
GNU Common Lisp (GCL) has a compiler and interpreter for Common Lisp. It is very portable and extremely efficient on a wide class of applications. It compares favorably in performance with commercial Lisps on several large theorem prover and symbolic algebra systems. It supports the CLtL1 specification but is moving towards the proposed ANSI definition. It is based on AKCL and KCL. KCL was written by Taiichi Yuasa and Masami Hagiya in 1984, and AKCL has been developed by William Schelter since 1987.
GCL compiles to C and then uses the native optimizing C compilers (e.g. GCC). A function with a fixed number of args and one value turns into a C function of the same number of args and returning 1 value, so it cannot really be any more efficient on such calls. It has a conservative GC which allows great freedom for the C compiler to put Lisp values in arbitrary registers. It has a source level Lisp debugger for interpreted code, with display of source code in the other Emacs window. It has profiling tools based on the C profiling tools, which count function calls and percentage of time. CLX works with GCL. There is an Xlib interface via C. PCL worked with earlier versions. See ``Forthcoming GNUs'', for plans for about GCL.
GCL version 1.0 is being released under the GNU Library General Public License. (FTP `/pub/gnu/gcl.README' on `prep.ai.mit.edu'.) Get source from `ftp.cli.com'. For details ask `schelter@math.utexas.edu'.
`cpio' is an alternative archive program with all the features of SVR4 `cpio', including support for the final POSIX 1003.1 `ustar' standard. `mt', a program to position magnetic tapes, is included with `cpio'.
CVS, the Concurrent Version System, manages software revision and release control in a multi-developer, multi-directory, multi-group environment. It works best in conjunction with 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'. To find out how to get a copy of this report, ask `office@usenix.org'.
`dc' is an RPN calculator. GNU `bc' does not require a separate `dc' program to run. This version of `dc' will eventually be merged with GNU `bc'.
DejaGnu is a framework for testing other programs that provides a single front end for all tests. The framework's flexibility and consistency make it easy to write tests for any program. DejaGnu comes with `expect', which runs scripts to conduct dialogs with programs; and Tcl, which is an embeddable scripting language. The FSF hopes to replace Tcl with a cleaner programming language someday.
Manabu Higashida and Hirano Satoshi have released Demacs, a GNU Emacs port for 386/486 based MS-DOS machines. It is compatible with XMS memory managers and VCPI, but not yet with Microsoft Windows extended mode or other DPMI managers. Anonymous FTP it from `oak.oakland.edu' in `/pub/msdos/demacs' (USA) & `utsun.s.u-tokyo.ac.jp' in `/GNU/demacs' (Japan). For an FTP site list and the current status of Demacs, email to `demacs@sigmath.osaka-u.ac.jp'. For details, FTP the `README' file.
The FSF is offering Demacs on diskette. We will replace it with GNU Emacs 19, as soon as the MS-DOS port is ready. See ``Emacs Diskettes''.
GNU `diff' compares files showing line-by-line changes in several flexible formats. It is much faster than traditional Unix versions. The Diffutils package contains `diff', `diff3', `sdiff', and `cmp'.
These improvements have recently been made to Diffutils: A new heuristic for `diff' greatly reduces the time needed to compare large input files that contain many differences, and produces output that is usually smaller rather than larger. New `diff' options give detailed control over output format, e.g. to provide if-then-else output for programming languages other than C. Message wordings and the definition of "white space" have been revised for compatibility with the POSIX.2 standard (ISO/IEC 9945-2:1993).
DJ Delorie has ported GCC/G++ 2.5.7 (see the GCC item in this section) to the i386 MS-DOS platform. The DJGPP package also contains a 32-bit 80386 DOS extender with symbolic debugger; development libraries; and ports of Bison, `flex', GAS, and the GNU Binutils. Full source code is provided. It requires at least 5MB of hard disk space to install and 512K of RAM to use. It supports SVGA (up to 1024x768), XMS & VDISK memory allocation, `himem.sys', VCPI (e.g. QEMM, DESQview, & 386MAX), and DPMI (e.g. Windows 3.x, OS/2, QEMM, & QDPMI). The FSF offers it on the ``DJGPP Diskettes'', and on the ``Compiler Tools Binaries CD-ROM''. Or FTP file `/pub/msdos/djgpp' from `oak.oakland.edu' (or another SimTel mirror site). Ask `djgpp-request@sun.soe.clarkson.edu' to join a mailing list for DJGPP users.
`dld' is a dynamic linker written by W. Wilson Ho. Linking your program with the `dld' library allows you to dynamically load object files into the running binary. Currently supported are VAX (Ultrix), Sun 3 (SunOS 3.4 & 4.0), SPARC (SunOS 4.0), Sequent Symmetry (Dynix), & Atari ST.
This program is intended as a utility to help software developers ensure that their source file names are distinguishable on System V platforms with 14-character filenames and on MS-DOS with 8+3 character filenames.
`ecc' is a Reed-Solomon error correction checking program, which can correct three byte errors in a block of 255 bytes and detect more severe errors. Contact `paulf@Stanford.EDU' for more information.
Ed is the standard text editor.
This is a small library of Emacs Lisp functions, including routines for using AVL trees and doubly-linked lists.
In 1975, Richard Stallman developed the first Emacs, an extensible, customizable real-time display editor. GNU Emacs is his second implementation. It offers true Lisp--smoothly integrated into the editor--for writing extensions, and provides an interface to the MIT X Window System. In addition to its powerful native command set, extensions which emulate other popular editors are distributed: vi, EDT (DEC's VMS editor) and Gosling (aka Unipress) Emacs. It has many other features which make it a full computing support environment. Source for the `GNU Emacs Manual', the `GNU Emacs Lisp Reference Manual', and a reference card come with the software. See ``GNU Documentation''.
GNU Emacs 18.59 runs on many Unix systems. In hardware order: Alliant FX/80 & FX/2800, Altos 3068, Amdahl (UTS), Apollo, AT&T (3Bs & 7300 PC), DG Aviion, Bull DPX/2 (2nn & 3nn) CCI 5/32 & 6/32, Celerity, Convex, Digital (DECstation 3100 & 5000 (PMAXes), Mips, VAX (BSD, SysV & VMS)), Motorola Delta 147 & 187 Dual, Elxsi 6400, Encore (DPC, APC & XPC), Gould, HP (9000 series 200, 300, 700 & 800, but not 500), HLH Orion (original & 1/05), IBM (RS/6000 (AIX), RT/PC (4.2 & AIX) & PS/2 (AIX (386 only))), ISI (Optimum V, 80386), Intel 860 & 80386 (BSD, Esix, SVR3, SVR4, SCO, ISC, IX, AIX & others (see ``MS-DOS Diskettes''. & ``Free Software for Microcomputers'')), Iris (2500, 2500 Turbo & 4D), Masscomp, MIPS, National Semiconductor 32000, NeXT (Mach), NCR Tower 32 (SVR2 & SVR3), Nixdorf Targon 31, Nu (TI & LMI), pfa50, Plexus, Prime EXL, Pyramid (original & MIPS), Sequent (Balance & Symmetry), SONY News (m68k & MIPS), Stride (system release 2), all Suns including 386i (all SunOS & some Solaris vers.), Tadpole, Tahoe, Tandem Integrity S2, Tektronix (16000 & 4300), Triton 88, Ustation E30 (SS5E), Whitechapel (MG1) & Wicat.
In operating system order: AIX (RS/6000, RT/PC, 386-PS/2), BSD (vers. 4.1, 4.2, 4.3), DomainOS, Esix (386), HP-UX (HP 9000 series 200, 300, 700, 800 but not 500), ISC (386), IX (386), Mach, Microport, NewsOS (Sony m68k & MIPS) SCO (386), SVR0 (Vax, AT&T 3Bs), SVR2, SVR3, SVR4, Solaris 2.0, SunOS, UTS (Amdahl), Ultrix (vers. 3.0, 4,1), Uniplus 5.2 (Dual machines), VMS (vers. 4.0, 4.2, 4.4, 5.5) & Xenix (386).
New features in Emacs 19 include: multiple X windows ("frames" to Emacs), with either a separate X window for the minibuffer or a minibuffer attached to each X window; property lists associated with regions of text in a buffer; multiple fonts and colors defined by those properties; simplified and improved processing of function keys, mouse clicks and mouse movement; X selection processing, including clipboard selections; hooks to be run if point or mouse moves outside a certain range; menu bars and popup menus defined by keymaps; scrollbars; before and after change hooks; source-level debugging of Emacs Lisp programs; European character sets support; floating point numbers; improved buffer allocation, using a new mechanism capable of returning storage to the system when a buffer is killed; interfacing with the X resource manager; GNU configuration scheme support; good RCS support; & many updated libraries.
New features in Emacs 19.23 include X toolkit support, dialog boxes, operation on MS-DOS, much faster text properties, keyboard equivalents shown automatically in menus, and text that highlights when you move the mouse over it.
Unlike some other recent derivations of Emacs, Emacs 19 from the Free Software Foundation continues to work on character-only terminals as well as under the MIT X Window System.
Emacs 19.23 is known to work on, in hardware order: Bull DPX/2 2nn & 3nn (SVR3) & sps7 (SVR2); Clipper; Cubix QBx (SysV); Data General Aviion (DGUX); DEC MIPS (Ultrix 4.2 & OSF/1, not VMS); Elxsi 6400 (SysV); Gould Power Node & NP1 (4.2 & 4.3BSD); Harris Night Hawk 1200 and 3000, 4000 and 5000 (cxux); Honeywell XPS100 (SysV); HP 9000 series 200, 300, 700, 800 (4.3BSD or HP-UX 7, 8, 9); Intel i386 & i486 (386BSD, AIX, BSDI/386, FreeBSD, Esix, ISC, Linux, MS-DOS, NetBSD, SCO3.2v4 with ODT, SysV, Xenix); IBM RS6000 (AIX 3.2); IBM RT/PC (AIX or BSD); Motorola Delta 147 & 187 (SVR3, SVR4, & m88kbcs); National Semiconductor 32K (Genix); NeXT (BSD or Mach 2 w/ NeXTStep 3.0); Prime EXL (SysV); Pyramid (BSD); Sequent Symmetry (BSD); SGI Iris 4D (Irix 4.x & 5.x); Sony News/RISC (NewsOS); Sun 3 & 4, SPARC 1, 1+, 2, 10 & Classic (SunOS 4.0, 4.1, Solaris 2.0-2.3); Tadpole 68k (SysV); Tektronix XD88 (SVR3) & 4300 (BSD); & Titan P2 & P3 (SysV).
In operating system order: AIX (i386, RS6000, RT/PC); 4.1, 4.2, 4.3BSD (i386, Gould Power Node & NP1, HP9000 series 300, NeXT, Pyramid, Symmetry, Tektronix 4300, RT/PC); DG/UX (Aviion); Esix (i386); FreeBSD (i386); Genix (ns32k); HP-UX 7, 8, 9 (HP 9000 series 200, 300, 700, 800, but not 500); Irix 4 & 5 (Iris 4D); ISC (i386); Linux (i386); NetBSD (i386, HP9000 series 300); Mach 2 & 3 (i386, NeXT); SCO 3.2v4 (i386); SVR2 (Bull sps7); SVR3 (Bull DPX/2 2nn & 3nn, Motorola Delta 147 & 187, Tektronix XD88); SVR4 (Motorola Delta 147 & 187); Solaris 2 (SPARC 1, 1+, 2, 10, Classic); SunOS 4.0, 4.1 (Sun 3 & 4, SPARC 1, 1+, 2, 10 & Classic); Ultrix 4.2 (DEC MIPS); & Xenix (i386).
Other configurations supported by Emacs 18 should work with few changes in Emacs 19; as users tell us more about their experiences with different systems, we will augment the list. Also see ``Forthcoming GNUs''.
`es' is an extensible shell based on `rc' that has first class functions, lexical scope, an exception system, and rich return values (i.e. functions can return values other than just numbers). Like `rc', it is great for both interactive use and for scripting, particularly because its quoting rules are much less baroque than the C or Bourne shells.
`f2c' converts Fortran-77 source files into C or C++, which can be compiled with GCC. You can get bug fixes via FTP from `netlib.att.com' in the file `/netlib/f2c/changes.Z' or by email from `netlib@research.att.com'. See ``Forthcoming GNUs'', for information about GNU Fortran.
NetFax is a freely-available fax spooling system originally developed in the MIT AI Lab. It provides Group 3 fax transmission and reception services for a networked Unix system. It requires a faxmodem which accepts Class 2 fax commands. Contact `bug-fax@prep.ai.mit.edu' for more information.
The fileutils work on files: `chgrp', `chmod', `chown', `cp', `dd', `df', `dir', `du', `install', `ln', `ls', `mkdir', `mkfifo', `mknod', `mv', `mvdir', `rm', `rmdir', `touch', & `vdir'. Only some of these are on the ``Selected Utilities Diskettes''.
`find' is frequently used both interactively and in shell scripts to find files which match certain criteria and perform arbitrary operations on them. Also included are `xargs', which applies a command to a list of files, and `locate', which scans a database for file names that match a pattern.
GNU Finger has more features than other finger programs. For sites with many hosts, a single host may be designated as the finger "server" host. This host collects information about who is logged in to other hosts at that site. If a user at site A wants to know about users logged on at site B, a single query to any machine at the site will return complete information.
`flex' is a replacement for the `lex' scanner generator. `flex' was written by Vern Paxson of the Lawrence Berkeley Laboratory and generates far more efficient scanners than `lex' does. Texinfo source for the `Flex Manual' and reference card are included. See ``GNU Documentation''.
The fontutils create fonts for use with Ghostscript or TeX, starting with a scanned type image and converting the bitmaps to outlines. They also contain general conversion programs and other utilities.
Fontutils programs include: `bpltobzr', `bzrto', `charspace', `fontconvert', `gsrenderfont', `imageto', `imgrotate', `limn', and `xbfe'.
GAS is the GNU assembler. Native assembly works for many systems, including: Sun 3, 4, & SPARC (SunOS 4.1 or Solaris 2); i386 (AIX, 386BSD, BSDI/386, Linux, SCO, Unixware); m68k (BSD, HP-UX, Convergent Technologies SysV); MIPS (Ultrix, Irix); Hitachi H8/300 and H8/500; & VAX (BSD, Ultrix, VMS). Cross assembling can be done for most of the above systems, plus: i386 (SCO, go32 MS-DOS/DJGPP); ebmon29k; Hitachi H8/300; i960 (b.out, COFF); MIPS ECOFF (Ultrix, Iris, MIPS Magnum); Nindy 960; vxworks (68k or 960); & Zilog Z8000. See ``Forthcoming GNUs'', for plans for future releases of GAS.
GAWK is upwardly compatible with the System V Release 4 and POSIX versions of `awk'. It also provides several useful extensions not found in other `awk' implementations. Texinfo source for the `GAWK Manual' comes with the software. See ``GNU Documentation''.
Version 2 of the GNU C Compiler supports three languages: C, C++ and Objective-C; the source file name suffix or a compiler option selects the language. The front end support for Objective-C was donated by NeXT. The runtime support needed to run Objective-C programs is now distributed with GCC (this does not include any Objective-C classes aside from `object'). As much as possible, G++ is kept compatible with the evolving draft ANSI standard, but not with `cfront' (AT&T's compiler), which has been diverging from ANSI.
The GNU C Compiler is a fairly portable optimizing compiler which performs automatic register allocation, common sub-expression elimination, invariant code motion from loops, induction variable optimizations, constant propagation and copy propagation, delayed popping of function call arguments, tail recursion elimination, integration of inline functions and frame pointer elimination, instruction scheduling, loop unrolling, filling of delay slots, leaf function optimization, optimized multiplication by constants, a certain amount of common subexpression elimination (CSE) between basic blocks (though not all of the supported machine descriptions provide for scheduling or delay slots), a feature for assigning attributes to instructions, and many local optimizations that are automatically deduced from the machine description. Function-wide CSE has been written, but needs to be cleaned up before it can be installed. Position-independent code is supported on the 68k, i386, Hitachi Slt, Hitachi H8/300, Clipper, 88k, SPARC & SPARClite.
GCC can open-code most arithmetic on 64-bit values (type `long long int'). It supports extended floating point (type `long double') on the 68k; other machines will follow.
GCC supports full ANSI C, traditional C and GNU C extensions. GNU C has been extended to support nested functions, nonlocal gotos, and taking the address of a label.
GCC can generate a.out, COFF, ELF & OSF-Rose files when used with a suitable assembler. It can produce debugging information in these formats: BSD stabs, COFF, ECOFF, ECOFF with stabs & DWARF.
GCC generates code for many CPUs, including: a29k, Alpha, ARM, Convex cN, Clipper, Elxsi, H8300, HP-PA (1.0 and 1.1) i370, i386, i486, i860, i960, m68k, m68020, m88k, MIPS, ns32k, Pyramid, ROMP, RS6000, SH, SPARC, SPARClite, VAX, and we32k.
Operating systems supported include: AIX, ACIS, AOS, BSD, Clix, Ctix, DG/UX, Dynix, Genix, HP-UX, ISC, Irix, Linux, Luna, LynxOS, Mach, Minix, NewsOS, OSF, OSF-Rose, RISCOS, SCO, Solaris 2, SunOS 4, SysV, Ultrix, Unos, & VMS.
The old (version 1) machine descriptions for the Alliant, Tahoe and Spur (as well as a new port for the Tron) do not work, but are still included in the distribution in case someone wants to work on them.
Using the configuration scheme for GCC, building a cross-compiler is as easy as building a compiler for the same target machine. Version 2 supports more general calling conventions: it can pass arguments "by reference" and can preallocate the space for stack arguments. GCC 2 on the SPARC uses the SPARC conventions for structure arguments and return values.
We no longer distribute or maintain version 1 of GCC, G++, or libg++.
Texinfo source for the GCC manual, `Using and Porting GNU CC', is included with the compiler.
See ``Forthcoming GNUs'', for plans for later releases of GCC.
In GDB, object files and symbol tables are now read via the BFD library, which allows a single copy of GDB to debug programs of multiple object file formats such as a.out and COFF. Other new features include command language improvements, remote debugging over serial lines or TCP/IP, and watchpoints (breakpoints triggered when the value of an expression changes). Exception handling, SunOS shared libraries and C++ multiple inheritance are only supported when used with GCC version 2.
GDB comes with a command line user interface; GNU Emacs is distributed with a GDB mode, and `xxgdb' provides an X interface (but it is not distributed or maintained by the FSF; it is available for anonymous FTP from `ftp.x.org' in the `/contrib' directory).
GDB uses a standard remote interface to a simulator library which (so far) has simulators for the Zilog Z8001/2, Hitachi H8/300, H8/500 & Super-H.
GDB can perform cross-debugging. To say that GDB *targets* a platform means that it can perform native or cross-debugging for it. To say that GDB can *host* a given platform means that it can be built on it, but cannot necessarily debug native programs. GDB can:
GDB can use the symbol tables emitted by the compilers supplied by most vendors of MIPS-based machines, including DEC. (These tables are in a format which almost nobody else uses.) Texinfo source for the manual `Debugging with GDB' and a reference card are included. See ``GNU Documentation''.
The `gdbm' library is the GNU replacement for the traditional `dbm' and `ndbm' libraries. It implements a database using quick lookup by hashing. `gdbm' does not need sparse file formats (unlike its Unix counterparts).
Ghostscript is GNU's graphics language which is almost fully compatible with Postscript (see ``Forthcoming GNUs'').
The current version of Ghostscript is 2.6.1. Features include the ability to use the fonts provided by the platform on which Ghostscript runs (MIT X Window System and Microsoft Windows), resulting in much better-looking screen displays; improved text file printing (like `enscript'); a utility to extract the text from a Postscript document; a much more reliable (and faster) Microsoft Windows implementation; support for Microsoft C/C++ 7.0; drivers for many new printers, including the SPARCprinter, and for TIFF/F (fax) file format; many more Postscript Level 2 facilities, including most of the color space facilities (but not patterns), and the ability to switch between Level 1 and Level 2 dynamically.
Ghostscript accepts commands in Postscript and executes them by writing directly to a printer, drawing on an X window, or writing to a file that you can print later (or to a bitmap file that you can manipulate with other graphics programs).
Ghostscript includes a C-callable graphics library (for client programs that do not want to deal with the Postscript language). It also supports IBM PCs and compatibles with EGA, VGA, or SuperVGA graphics (but please do *not* ask the FSF staff any questions about this; we do not use PCs).
See ``Forthcoming GNUs'', for plans for later releases of Ghostscript.
Tim Theisen, `ghostview@cs.wisc.edu', has created Ghostview, a previewer for multi-page files that runs on top of Ghostscript. Ghostview provides an X11 user interface for the Ghostscript interpreter. Ghostview and Ghostscript function as two cooperating programs; Ghostview creates a viewing window and Ghostscript draws in it. There is a port for Ghostview to MS-Windows called "GSview for Windows". For information about future releases of this program, see ``Forthcoming GNUs''.
GNU mp is a library for arbitrary precision arithmetic on signed integers and rational numbers. It has a rich set of functions with a regular interface.
See ``Forthcoming GNUs'', for the plans for later releases of `gmp'.
GNATS (GNats: A Tracking System, not to be confused with GNAT, The GNU Ada Translator) is a bug-tracking system. It is based upon the paradigm of a central site or organization which receives problem reports and negotiates their resolution by electronic mail. Although it has been used primarily as a software bug-tracking system so far, it is sufficiently generalized so that it could be used for handling system administration issues, project management or any number of other applications.
`gnuplot' is an interactive program for plotting mathematical expressions and data. It handles both curves (2 dimensions) and surfaces (3 dimensions). Curiously, the program was neither written nor named for the GNU Project; the name is a coincidence.
GnuGo plays the game of Go (Wei-Chi); it is not yet very sophisticated.
`gperf' is a "perfect" hash-table generation utility. There are actually two implementations of `gperf', one written in C and one in C++. Both will produce hash functions in either C or C++.
GNU Graphics is a set of programs which produce plots from ASCII or binary data. It supports output to Tektronix 4010, Postscript & the MIT X Window System or compatible devices. Features include support for output in ln03 and TekniCAD TDA file formats; a replacement for the `spline' program; examples of shell scripts using `graph' and `plot'; & a statistics toolkit.
Existing ports need retesting. Contact Rich Murphey, `Rich@rice.edu', if you can help test/port it to anything beyond a SPARCstation.
This package contains GNU `grep', `egrep', and `fgrep'. They are much faster than the traditional Unix versions.
Groff is a document formatting system, which includes drivers for Postscript, TeX `dvi' format, and typewriter-like devices, as well as implementations of `eqn', `nroff', `pic', `refer', `tbl', `troff', and the `man', `ms', and `mm' macros. Groff's `mm' macro package is almost compatible with the DWB `mm' macros and has several extensions. Also included is a modified version of the Berkeley `me' macros and an enhanced version of the X11 `xditview' previewer. Written in C++, these programs can be compiled with GNU C++ Version 2.5 or later.
Groff users are encouraged to contribute enhancements. Most needed are complete Texinfo documentation, a `grap' emulation (a `pic' preprocessor for typesetting graphs), a page-makeup postprocessor similar to `pm' (see `Computing Systems', Vol. 2, No. 2; ask `office@usenix.org' for information on obtaining a copy) and an ASCII output class for `pic' so that `pic' can be integrated with Texinfo. Questions and bug reports from users who have read the documentation that is provided with the distribution can be sent to `bug-groff@prep.ai.mit.edu'.
Some of the contents of our tape and FTP distributions are compressed. We have software on our tapes and FTP sites to uncompress these files. Due to patent troubles with `compress', we have switched to another compression program, `gzip'. `gzip' can expand LZW-compressed files but uses a different algorithm for compression which generally produces better results. It also uncompresses files compressed with System V's `pack' program.
The GNU `hello' program produces a familiar, friendly greeting. It allows non-programmers to use a classic computer science tool which would otherwise be unavailable to them. Because it is protected by the GNU General Public License, users are free to share and change it.
Like any truly useful program, `hello' provides a built-in mail reader.
GNU `hp2xx' reads HP-GL files, decomposes all drawing commands into elementary vectors, and converts them into a variety of vector and raster output formats. It is also an HP-GL previewer. Currently supported vector formats include encapsulated Postscript, Uniplex RGIP, Metafont and various special TeX-related formats, and simplified HP-GL (line drawing only) for imports. Raster formats supported include IMG, PBM, PCX, & HP-PCL (including Deskjet & DJ5xxC support). Previewers work under X11 (Unix), OS/2 (PM & full screen), MS-DOS (SVGA, VGA, & HGC).
GNU `indent' is a revision of the BSD version. By default, it formats C source according to the GNU coding standards. The BSD default, K&R and other formats are available as options. It is also possible to define your own format. GNU `indent' is more robust and provides more functionality than other versions, e.g., it handles C++ comments.
Ispell is an interactive spell checker that suggests "near misses" as replacements for unrecognized words. System and user-maintained dictionaries can be used. Standalone and GNU Emacs interfaces are available.
JACAL is a symbolic mathematics system for the manipulation and simplification of equations and single and multiple-valued algebraic expressions constructed of numbers, variables, radicals, and algebraic functions, differential operators and holonomic functions. In addition, vectors, matrices, and tensors of the above objects are included.
JACAL was written in Scheme by Aubrey Jaffer. It comes with SCM, an IEEE P1178 and R4RS compliant version of Scheme written in C. SCM runs on Amiga, Atari-ST, MS-DOS, OS/2, NOS/VE, Unicos, VMS, Unix, and similar systems. SLIB is a portable Scheme library used by JACAL. Get JACAL, SLIB and SCM sources via anonymous FTP from either `ftp.maths.tcd.ie' in `/pub/bosullvn/jacal', `altdorf.ai.mit.edu' in `/archive/scm', or `prep.ai.mit.edu' in `/pub/gnu/jacal'.
The FSF is not distributing JACAL on any media. To receive an IBM PC floppy disk with the source and executable files, send $99.00 to:
Aubrey Jaffer
84 Pleasant Street
Wakefield, MA 01880
USA
GNU `m4' is an implementation of the traditional Unix macro processor. It is mostly SVR4 compatible, although it has some extensions (for example, handling more than 9 positional parameters to macros). `m4' also has built-in functions for including files, running shell commands, doing arithmetic, etc.
GNU `make' supports POSIX 1003.2 and has all but a few obscure features of the BSD and System V versions of `make', as well as many of our own extensions. GNU extensions include long options, parallel compilation, flexible implicit pattern rules, conditional execution and powerful text manipulation functions. Recent versions have improved error reporting and added support for the popular `+=' syntax to append more text to a variable's definition. Texinfo source for the `Make Manual' comes with the program. See ``GNU Documentation''.
GNU `make' is on several of our tapes because some system vendors supply no `make' utility at all, and some native `make' programs lack the `VPATH' feature essential for using the GNU configure system to its full extent. The GNU `make' sources have a shell script to build `make' itself on such systems.
A parallel Mandelbrot generation program for the MIT X Window System.
mtools is a set of public domain programs to allow Unix systems to read, write and manipulate files on an MS-DOS file system (usually a diskette).
MULE is a MULtilingual Enhancement to GNU Emacs 18. It can handle many character sets at once including Japanese, Chinese, Korean, Vietnamese, Thai, Greek, the ISO Latin-1 through Latin-5 character sets, Ukrainian, Russian, and other Cyrillic alphabets. A text buffer in MULE can contain a mixture of characters from these languages. To input any of these characters, you can use various input methods provided by MULE itself. In addition, if you use MULE under some terminal emulators (kterm, cxterm, or exterm), you can use its input methods. See ``GNU and Other Free Software in Japan'', for more information about MULE.
NetHack is a display-oriented adventure game similar to Rogue. Both ASCII and X displays are supported.
The NIH Class Library (formerly known as "OOPS", Object-Oriented Program Support) is a portable collection of C++ classes, similar to those in Smalltalk-80, which has been developed by Keith Gorlen of the National Institutes of Health (NIH), using the C++ programming language.
`nvi' is a free implementation of the `vi'/`ex' Unix editor. It has most of the functionality of the original `vi'/`ex', except "open" mode & the `lisp' option, which will be added. Enhancements over `vi'/`ex' include split screens with multiple buffers, ability to handle 8-bit data, infinite file & line lengths, tag stacks, infinite undo & extended regular expressions. It runs under BSD, Linux, NetBSD, FreeBSD, BSDI, AIX, HP-UX, DGUX, IRIX, PSF, PTX, Solaris, SunOS, Ultrix, Unixware & should port easily to many other systems.
Octave is a high-level language that is primarily intended for numerical computations. It provides a convenient command line interface for solving linear and nonlinear problems numerically.
Octave does arithmetic for real and complex scalars and matrices, solve sets of nonlinear algebraic equations, integrate functions over finite and infinite intervals, and integrate systems of ordinary differential and differential-algebraic equations. Send queries and bug reports to: `bug-octave@che.utexas.edu'.
Octave is available via anonymous ftp from `ftp.che.utexas.edu' in the directory `/pub/octave'. The files are in gzipped `tar' format (see the file `/pub/gnu/README' on `prep.ai.mit.edu'). Source is included for a 150+ page Texinfo manual, which is not yet published by the FSF.
Oleo is a spreadsheet program (better for you than the more expensive spreadsheets). It supports the MIT X Window System and character-based terminals, and can output Embedded Postscript renditions of spreadsheets. Keybindings should be familiar to Emacs users and are configurable. Under X and in Postscript output, Oleo supports multiple, variable width fonts. See ``Forthcoming GNUs'', for the plans for later releases of Oleo.
`p2c' is a Pascal-to-C translator written by Dave Gillespie. It recognizes many Pascal dialects including Turbo, HP, VAX, and ISO, and produces readable, maintainable, portable C.
`patch' is our version of Larry Wall's program to take `diff''s output and apply those differences to an original file to generate the modified version.
PCL is a free implementation of a large subset of CLOS, the Common Lisp Object System. It runs under CLISP, mentioned above.
Larry Wall's `perl' combines the features and capabilities of `sed', `awk', `sh' and C, as well as interfaces to all the system calls and many C library routines. A perl mode for editing `perl' code comes with GNU Emacs 19.
GNU `ptx' is the GNU version of the traditional permuted index generator. It can handle multiple input files at once, produce TeX compatible output, and produce readable "KWIC" (KeyWords In Context) indexes without needing to use `nroff'. This version does not handle input files that do not fit in memory all at once.
`rc' is a shell that features a C-like syntax (much more so than `csh') and far cleaner quoting rules than the C or Bourne shells. It's intended to be used interactively, but is also great for writing scripts. It inspired the shell `es'.
The Revision Control System, RCS, is used for version control and management of software projects. When used with GNU `diff', RCS can handle binary files (executables, object files, 8-bit data, etc). Also see the item about CVS in this article.
GNU `recode' converts files between character sets and usages. When exact transliterations are not possible, it may get rid of the offending characters or fall back on approximations. This program recognizes or produces nearly 150 different character sets and is able to transliterate files between almost any pair. Most RFC 1345 character sets are supported.
The GNU regular expression library supports POSIX.2, except for internationalization features. In the past, it has been included in many GNU programs which use regex routines. Now it is finally available separately. A faster version of this library comes with `sed'.
For information about Scheme, see ``Scheme Tape''.
`screen' is a terminal multiplexer that runs several separate "screens" (ttys) on a single physical character-based terminal. Each virtual terminal emulates a DEC VT100 plus several ANSI X3.64 and ISO 2022 functions. `screen' sessions can be detached and resumed later on a different terminal type.
`sed' is a stream-oriented version of `ed'. It is used copiously in shell scripts. GNU `sed' comes with the rx library, which is a faster version of regex (see ``Forthcoming GNUs'').
Use shellutils interactively or in shell scripts: `basename', `date', `dirname', `echo', `env', `expr', `false', `groups', `id', `nice', `nohup', `printenv', `printf', `sleep', `stty', `su', `tee', `test', `true', `tty', `uname', `who', `whoami', and `yes'.
Shogi is a Japanese game similar to Chess; a major difference is that captured pieces can be returned into play.
GNU Shogi has been created by modifying GNU Chess; GNU Shogi implements the same features as GNU Chess and uses similar heuristics. As a new feature, sequences of partial board patterns can be introduced in order to help the program play a good order of moves towards specific opening patterns. There are both character and X display interfaces.
GNU Shogi is primarily supported by Matthias Mutz on behalf of the FSF.
Matthias Mutz
Universitaet Passau, FMI
94030 Passau
GermanyElectronic-mail: `mutz@fmi.uni-passau.de'
GNU Smalltalk is an interpreted object-oriented programming language system written in highly portable C. It has been successfully ported to many Unix and some other platforms, including DOS (but these non-Unix ports are not available from the FSF). Current features include a binary image save capability, the ability to invoke user-written C code and pass parameters to it, a GNU Emacs editing mode, a version of the X protocol invocable from Smalltalk, optional byte-code compilation tracing and byte-code execution tracing, and automatically loaded per-user initialization files. It implements all of the classes and protocol in the Smalltalk-80 book "Smalltalk-80: The Language", except for the graphic user interface (`GUI') related classes.
See ``Forthcoming GNUs'', for plans for later releases of Smalltalk.
Superopt is a function sequence generator that uses an exhaustive generate-and-test approach to find the shortest instruction sequence for a given function. You provide the GNU superoptimizer, `gso', a function, a CPU to generate code for, and how many instructions you can accept. Its application in GCC is described in the `ACM SIGPLAN PLDI'92' proceedings. Superopt supports: SPARC, m68k, m68020, m88k, IBM RS/6000, AMD 29000, Intel 80x86, Pyramid, DEC Alpha, & HP-PA.
GNU `tar' includes multivolume support, the ability to archive sparse files, automatic archive compression/decompression, remote archives and special features that allow `tar' to be used for incremental and full backups. Unfortunately, GNU `tar' implements an early draft of the POSIX 1003.1 `ustar' standard which is different from the final standard. Adding support for the new changes in a backward-compatible fashion is not trivial.
The GNU Termcap library is a drop-in replacement for `libtermcap.a' on any system. It does not place an arbitrary limit on the size of Termcap entries, unlike most other Termcap libraries. Included is source for the `Termcap Manual' in Texinfo format. See ``GNU Documentation''.
TeX is a document formatting system that handles complicated typesetting, including mathematics. It is GNU's standard text formatter.
You can obtain TeX from the University of Washington, which maintains and supports a tape distribution of TeX for Unix systems. The core material consists of Karl Berry's `web2c' TeX package, the sources for which are available via anonymous ftp; retrieval instructions are in `pub/tex/FTP.nwc' on `ftp.cs.umb.edu'. If you receive any installation support from the University of Washington, please consider sending them a donation.
To order a full distribution written in `tar' on either a 1/4inch 4-track QIC-24 cartridge or a 4mm DAT cartridge, send $210.00 to:
Northwest Computing Support CenterPlease make checks payable to the University of Washington. Checks must be in U.S. dollars, drawn on a U.S. bank. Prepaid orders are preferred but purchase orders are acceptable; however, they carry an extra charge of $10.00 to pay for invoice processing. Overseas sites: please add to the base cost $20.00 for shipment via air parcel post, or $30.00 for shipment via courier. Please check with the above for current prices and formats.
DR-10, Thomson Hall 35
University of Washington
Seattle, WA 98195
USAElectronic-Mail: `unixtex@u.washington.edu'
Telephone: +1-206-543-6259
Texinfo is a set of utilities which generate both printed manuals and online hypertext-style documentation (called "Info"). There are also programs for reading online Info documents. Version 3 has both GNU Emacs Lisp and standalone programs written in C or shell script. Texinfo mode for GNU Emacs enables easy editing and updating of Texinfo files. Programs provided include `makeinfo', `info', `texi2dvi', `texindex', `tex2patch', and `fixfonts'. Source for the `Texinfo Manual' is included. See ``GNU Documentation''.
The Textutils programs manipulate textual data. They include: `cat', `cksum', `comm', `csplit', `cut', `expand', `fold', `head', `join', `nl', `od', `paste', `pr', `sort', `split', `sum', `tac', `tail', `tr', `unexpand', `uniq', and `wc'.
Tile Forth is a 32-bit implementation of the Forth-83 standard written in C, allowing it to be easily moved between different computers. (Traditionally, Forth implementations are written in assembler to use the underlying hardware as optimally as possible, but this also makes them less portable.)
`time' is used to report statistics (usually from a shell) about the amount of user, system and real time used by a process. On some systems it also reports memory usage, page faults, and other statistics.
`tput' is a portable way for shell scripts to use special terminal capabilities. Our `tput' uses the Termcap database, instead of Terminfo as most others do.
This version of UUCP was written by Ian Lance Taylor, and is GNU's standard UUCP system. It supports the `f', `g' and `v' (in all window and packet sizes), `G', `t', `e', Zmodem and two new bidirectional (`i' and `j') protocols. If you have a Berkeley sockets library, it can make TCP connections. If you have TLI libraries, it can make TLI connections. Source is included for a Texinfo manual, which is not yet published by the FSF.
`uuencode' and `uudecode' are used to transmit binary files over transmission mediums that support only simple ASCII data.
`wdiff' is a front-end to GNU `diff'. It compares two files, finding which words have been deleted or added to the first in order to create the second. It has many output formats and interacts well with terminals and pagers. `wdiff' is particularly useful when two texts differ only by a few words and paragraphs have been refilled.
a2p perl acm acm acms acm addftinfo Groff afm2tfm TeX ar Binutils autoconf Autoconf autoheader Autoconf b2m Emacs basename Shellutils bash BASH bc bc bdftops Ghostscript bibtex TeX bison Bison bms MandelSpawn bpltobzr Fontutils build ispell bzrto Fontutils c++ GCC c++filt Binutils c2ph perl cat Textutils cbars wdiff cc GCC cc1 GCC cc1obj GCC cc1plus GCC cccp GCC charspace Fontutils chgrp Fileutils chmod Fileutils chown Fileutils ci RCS cksum Textutils clisp CLISP cmail xboard cmmf TeX cmp Diffutils co RCS comm Textutils cp Fileutils cpio cpio cpp GCC cppstdin perl csplit Textutils ctags Emacs cu UUCP cut Textutils cvs CVS cvscheck CVS cvtmail Emacs d Fileutils date Shellutils dc dc dd Fileutils delatex TeX demangle Binutils descend CVS detex TeX df Fileutils diff Diffutils diff3 Diffutils digest-doc Emacs dir Fileutils dirname Shellutils dld dld doschk doschk du Fileutils dvi2tty TeX dvicopy TeX dvips TeX dvitype TeX ecc ecc echo Shellutils ed ed edit-pr GNATS egrep grep emacs Emacs emacsclient Emacs emacsserver Emacs emacstool Emacs env Shellutils eqn Groff es es esdebug es etags Emacs ex nvi expand Textutils expect DejaGnu expr Shellutils f2c f2c fakemail Emacs false Shellutils fax NetFax faxenq NetFax faxmail NetFax faxps NetFax faxq NetFax faxrm NetFax faxsend NetFax faxspooler NetFax fc f2c fgrep grep find find find2perl perl finger finger fingerd finger fixfonts Texinfo fixinc.svr4 GCC fixincludes GCC flex flex fold Textutils font2c Ghostscript fontconvert Fontutils forth Tile Forth forthicon Tile Forth forthtool Tile Forth freq ispell freqtbl ispell g++ GCC gas GAS gawk Gawk gcc GCC gdb GDB genclass libg++ gftodvi TeX gftopk TeX gftype TeX ghostview Ghostview gnats GNATS gnuchess Chess gnuchessc Chess gnuchessn Chess gnuchessr Chess gnuchessx Chess gnupdisp Shogi gnuplot gnuplot gnuplot_x11 gnuplot gnushogi Shogi gnushogir Shogi gnushogix Shogi go GnuGo gperf gperf gperf libg++ gprof Binutils graph Graphics grep grep grodvi Groff groff Groff grops Groff grotty Groff groups Shellutils gs Ghostscript gsbj Ghostscript gsdj Ghostscript gslj Ghostscript gslp Ghostscript gsnd Ghostscript gsrenderfont Fontutils gunzip gzip gzexe gzip gzip gzip h2ph perl h2pl perl head Textutils hello hello hexl Emacs hp2xx hp2xx id Shellutils ident RCS imageto Fontutils imgrotate Fontutils indent indent indxbib Groff info Texinfo inimf TeX initex TeX install Fileutils ispell ispell join Textutils lasergnu gnuplot latex TeX ld Binutils less less lesskey less libbfd.a Binutils libbfd.a GAS libbfd.a GDB libbzr.a Fontutils libc.a C Library libcurses.a nvi libF77.a f2c libg++.a libg++ libgdbm.a gdbm libgf.a Fontutils libgmp.a gmp libI77.a f2c libnihcl.a NIHCL libnihclmi.a NIHCL libnihclvec.a NIHCL liboctave.a Octave libpbm.a Fontutils libpk.a Fontutils libtcl.a DejaGnu libtermcap.a Termcap libtfm.a Fontutils libwidgets.a Fontutils limn Fontutils lkbib Groff ln Fileutils locate find look ispell lookbib Groff ls Fileutils m4 m4 make Make make-docfile Emacs make-path Emacs makeindex TeX makeinfo Texinfo MakeTeXPK TeX man-macros Groff mattrib mtools mcd mtools mcopy mtools mdel mtools mdir mtools me-macros Groff merge RCS mf TeX mformat mtools mft TeX mkdir Fileutils mkfifo Fileutils mkmanifest mtools mkmodules CVS mknod Fileutils mlabel mtools mm-macros Groff mmd mtools movemail Emacs mrd mtools mread mtools mren mtools ms-macros Groff mslaved MandelSpawn mt cpio mtype mtools mv Fileutils mvdir Fileutils mwrite mtools nethack Nethack nice Shellutils nl Textutils nlmconv Binutils nm Binutils nohup Shellutils nroff Groff objc GCC objcopy Binutils objdump Binutils objective-c GCC octave Octave od Textutils oleo Oleo p2c p2c paste Textutils patch patch patgen TeX pathchk Shellutils perl perl pfbtops Groff pic Groff pktogf TeX pktype TeX plot2fig Graphics plot2plot Graphics plot2ps Graphics plot2tek Graphics pltotf TeX pooltype TeX pr Textutils pr-addr GNATS pr-edit GNATS printenv Shellutils printf Shellutils protoize GCC ps2ascii Ghostscript ps2epsi Ghostscript psbb Groff ptx ptx query-pr GNATS ranlib Binutils rc rc rcs RCS rcs-to-cvs CVS rcs2log Emacs rcsdiff RCS rcsfreeze RCS rcsmerge RCS recode recode refer Groff rlog RCS rm Fileutils rmdir Fileutils rmt cpio rmt tar runtest DejaGnu runtest.exp DejaGnu s2p perl sccs2rcs CVS screen screen sdiff Diffutils sed sed send-pr GNATS shogi Shogi size Binutils sleep Shellutils soelim Groff sort Textutils split Textutils strings Binutils strip Binutils stty Shellutils su Shellutils sum Textutils superopt Superopt tac Textutils tail Textutils taintperl perl tangle TeX tar tar tbl Groff tcp Emacs tee Shellutils tek2plot Graphics test Shellutils test-g++ DejaGnu test-tool DejaGnu tex TeX tex3patch Texinfo texi2dvi Texinfo texindex Texinfo texspell TeX tfmtodit Groff tftopl TeX tgrind TeX time time timer Emacs touch Fileutils tput tput tr Textutils troff Groff true Shellutils tty Shellutils uname Shellutils uncompress gzip unexpand Textutils uniq Textutils unprotoize GCC uuchk UUCP uucico UUCP uuconv UUCP uucp UUCP uudecode uuencode uudir UUCP uuencode uuencode uulog UUCP uuname UUCP uupick UUCP uurate UUCP uusched UUCP uustat UUCP uuto UUCP uux UUCP uuxqt UUCP v Fileutils vcdiff Emacs vdir Fileutils vftovp TeX vi nvi virmf TeX virtex TeX vptovf TeX wakeup Emacs wc Textutils wdiff wdiff weave TeX who Shellutils whoami Shellutils x2p perl xargs find xbfe Fontutils xboard xboard xditview Groff xdvi TeX xms MandelSpawn xplot Graphics xshogi xshogi yes Shellutils yow Emacs zcat gzip zcmp gzip zdiff gzip zforce gzip zgrep gzip zmore gzip znew gzip [ Shellutils
Some of the files on the tapes may be compressed with `gzip' to make them fit. Refer to the top-level `README' file at the beginning of each tape for instructions on uncompressing them. `uncompress' and `unpack' *do not work*!
This tape contains MIT Scheme 7.1, which conforms to the "Revised^4 Report On the Algorithmic Language Scheme" (MIT AI Lab Memo 848b), for which TeX source is included. It is written partly in C, but is presently hard to bootstrap. Binaries that can be used to bootstrap Scheme are available for:
The X11 Required tape also contains all fixes and patches released to date. We update this tape as new fixes and patches are released for programs on both tapes. See ``Tape & CD-ROM Subscription Service''.
We will distribute X11R5 on tape until X11R6 is stable, and on the ``November 1993 Source Code CD-ROM'', while supplies last.
You can build most of the software without copying the sources off the CD. You only need enough disk space for object files and intermediate build targets.
The software on our disk is free; anyone can copy it and anyone can run it. What we charge for is the physical disk and the service of distribution.
We charge two different prices depending on who is buying. When a company or other organization buys the May 1994 Source CD-ROM, we charge $400. When an individual buys the same disk, we charge just $100.
This distinction is not a matter of who is allowed to use the software. In either case, once you have a copy, you can distribute as many copies as you wish, and there's no restriction on who can have or run them. The price distinction is entirely a matter of what kind of entity pays for the CD.
You, the reader, are certainly an individual, not a company. If you are buying a disk "in person", then you are probably doing so as an individual. But if you expect to be reimbursed by your employer, then the disk is really for the company; so please pay the company price and get reimbursed for it. We won't try to check up on you--we use the honor system--so please cooperate.
Buying CDs at the company price is especially helpful for Project GNU; just 80 May 1994 Source CDs at that price supports an FSF programmer or tech writer for a year.
In the past, our distribution tapes have been ordered mainly by companies. The CD at the price of $400 provides them with all of our software for a much lower price than they would previously have paid for six different tapes. To lower the price more would cut into the FSF's funds very badly, and decrease the software development we can do.
However, for individuals, $400 is too high a price; hardly anyone could afford that. So we decided to make CDs available to individuals at the lower price of $100, but not do the same for companies.
Our stated prices are minimums. Feel free to pay a higher price if you wish to support GNU development more. The sky's the limit; we will accept as high a price as you can offer. Or simply give a donation (tax-deductible in the U.S.) to the Free Software Foundation, a tax-exempt public charity.