Let's see just how many of these goal
s have been accomplished in the past seventeen years:
- To begin with, GNU will be a kernel plus all the utilities needed to write and run C programs -- GNU's native kernel, known as HURD, remains in heavy alpha as of last notice. The GNU utilities, on the other hand, form a large part of the operating systems collectively known as Linux or GNU/Linux.
- editor -- GNU Emacs is one of the world's most popular text editors for programmers, both on GNU/Linux and on Unix. However, its elephantine bulk leads many to prefer vi-based editors such as vim or nvi, or even oddities such as joe.
- shell -- bash, the GNU "Bourne Again Shell", is quite popular on Linux and Unix.
- C compiler, linker, assembler -- Many recognize gcc as superior in standards compliance to many commercial Unix C compilers. However, much of its popularity on commercial Unix systems may be due to certain Unix vendors' brain-damaged idea of charging extra for compilers.
- After this we will add a text formatter -- While RMS doubtless meant groff, today roff-based formatters are widely considered obscure. Even Project GNU has abandoned roff-based manpages in favor of Texinfo -- possibly unfortunately. Meanwhile, people needing to do real work use LaTeX.
- a YACC -- or at least a bison.
- an Empire game -- Does anyone play Empire any more?
- a spreadsheet -- Several, actually.
- and hundreds of other things. -- That's for sure.
- We hope to supply, eventually, everything useful that normally comes with a Unix system, and anything else useful, including on-line and hardcopy documentation. -- See the summary below. While GNU itself has not shipped a complete system, others have. Debian GNU/Linux and Debian GNU/HURD appear to be the direct inheritors of this intention, though other Linux distributions also qualify.
- GNU will be able to run Unix programs -- Indeed, most Linux distributions are POSIX-compliant in most of the interesting ways.
- ... but will not be identical to Unix. We will make all improvements that are convenient, based on our experience with other operating systems. -- Thank goodness! GNU utilities have improved in many ways on traditional BSD or SysV tools.
- In particular, we plan to have longer filenames -- How long do you want 'em?
- file version numbers -- This, a popular feature of VMS, has not to my knowledge been implemented in a GNU or Linux filesystem. However, tools such as RCS have made it less necessary.
- a crashproof file system -- This is only now (2000) coming to light, with the creation of ReiserFS and ext3fs for the Linux kernel.
- filename completion perhaps -- A standard feature of all reasonable shells.
- terminal-independent display support -- ncurses and terminfo, of course.
- and eventually a Lisp-based window system through which several Lisp programs and ordinary Unix programs can share a screen. -- For better or for worse, Lisp is no longer terribly important in computing. However, Scheme survives on in GNU in the form of GUILE, which is used for scripting in various GNOME applications.
- Both C and Lisp will be available as system programming languages. -- While Lisp is available under GNU/Linux, nobody uses it for system programming.
- We will have network software based on MIT's chaosnet protocol, far
superior to UUCP. We may also have something compatible with UUCP. -- Well, you could use Chaosnet and UUCP if you like, but most GNU users prefer TCP/IP these days.
The large majority of Project GNU
's initial goals have come to pass. Some have become overtaken by events
or simply obsolete
, but in each case have been supplanted by superior replacements. As a direct consequence of Richard M. Stallman
's intentions and plan, anyone may today make use of a completely free
form of Unix
The biggest difference between RMS's intent and today's state of affairs is that GNU does not itself provide this complete Unix-like OS. Instead, the GNU tools have been combined with the Linux kernel and other free software to create what we now know as Linux or GNU/Linux distributions.
Addendum, May 2001:
The "crashproof filesystem" is finally here -- in fact, we now have more of them than we know what to do with! SGI
have adapted their XFS
filesystems to the Linux kernel, and released them under the GNU GPL
. Neither has yet made it into the official kernel distribution, though. Hans Reiser
, though, is
in the official kernel, though it is not quite stable.