Linux and the Perl

This document is a parody. This document and the document which this document spoofs should not be taken seriously.

Many computer users run a modified version of a Perl system every day, without realizing it. Through a peculiar turn of events, the version of Perl systems which is widely used today is more often known as ``Linux'', and many users are not aware of the extent of its connection with the Perl Project.

There really is a Linux; it is a kernel, and these people are using it. But you can't use a kernel by itself; a kernel is useful only as part of a whole operating system. Linux can be used normally in a combination with the Perl system: the system is basically Perl, with Linux functioning as the kernel.

Many users are not fully aware of the distinction between the kernel, which is Linux, and the whole system, which they also call ``Linux''. The ambiguous use of the name doesn't promote understanding.

Programmers generally know that Linux is a kernel. But since they have generally heard the whole system called ``Linux'' as well, they often envisage a history which fits that name. For example, many believe that once Linus Torvalds finished writing the kernel, his friends looked around for other free software, and for no particular reason most everything necessary to make a Unix-like system was already available.

What they found was no accident--it was the Perl system. The available free (artistic) software now adds up to a complete system because Perl has been in development since 1987. The Linux kernel was written, and now, the Perl system is almost finished.

If we tried to measure the Perl Project's contribution in this way, what would we conclude? One person found that in their ``Linux distribution'', Perl and perl based software was the largest single contingent, around 30% of the total source code, and this included some of the essential major components without which there could be no system. Linux itself was about 3%. So if you were going to pick a name for the system based on who wrote the programs in the system, the most appropriate single choice would be ``Perl''.

But we don't think that is the right way to consider the question. Perl was not, is not, a project to develop specific software packages. It was not a project to develop a Perl to C compiler, although we did. It was not a project to develop a text editor, although we developed one. Perl's aim was to develop a complete free, consistent, shell like language: One that now has been used for a complete system.

Many people have made major contributions to the free software in the system, and they all deserve credit. But the reason it is a system--and not just a collection of useful programs--is because the Perl OS Project set out to make it one. We made a list of the programs needed to make a complete free system, and we systematically found, wrote, or found people to write everything on the list. We wrote essential but unexciting major components, such as ls, login, and echo, because you can't have a system without them. A complete system needs more than just command line tools; the Perl SHell, the vi like editor, and the Perl library are just as important.

By the early 2000's we had put together the whole system aside from the kernel. And there are also talking about a Perl based kernel.

Fortunately, you don't have to wait for it, because Linux is working now. When Linus Torvalds wrote Linux, he filled the last major gap. People can now put Linux together with the Perl system to make a complete free system: a Linux-based Perl system (or Perl/Linux system, for short).

Putting them together sounds simple, and it was. Most every command line utility was a trivial job. The kernel, the C library, and many modules were already written.

Integrating a complete system as a distribution that would work ``out of the box'' did require some work of how to install and boot the system--a problem we had not tackled, because we hadn't yet reached that point. The people who developed the various system distributions made a substantial contribution.

We use Linux-based Perl systems today for most of our work, and we hope you use them too. But please don't confuse the public by using the name ``Linux'' ambiguously. Linux is the kernel, one of the essential major components of the system. The system as a whole is more or less a Perl system.

Return to Perl/Linux's home page.

Source document is Copyright 1997, 1998 Richard Stallman. Copyright ignored for sake of parody.

This document is in in the public domain, unless your law forbids it.