Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Why did RMS adopt Unix? (and other questions)

13 views
Skip to first unread message

Rory C-L

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
I am writing a longish paper on the free software movement. I am an
architect in the United Kingdom, where there is a long history of
adverserial building contracts. I believe the building profession may be
able to learn something from the collaborative work environments that have
helped form the GNU/free source movement.

Structure of the piece:
I am using the evolution of the free software program "Fetchmail",
outlined in Eric Raymond's piece "The Cathedral and the Bazaar" to
describe some useful features of software development. I am aware of some
of the reservations surrounding the accuracy of the analogy of the
cathedral and bazaar - nevertheless the actual process of co-developer
contributions to the project is valuable and interesting to document.

I also have sections in the paper supporting the Fetchmail story on the
origins of the free software movement, a description of RMS and the Free
Software Foundation, followed by short descriptions of the genesis of
Linux and Perl.

Problem:

I intend to record some of the ethos and excitement of programming laid
out in the book "Hackers". However I have become aware of a bald spot in
the story laid out in this book, which is that there is only one reference
to UNIX in the entire book. I have since done some research, and found
Dennis Ritchie's excellent documentation on Unix at
<http://cm.bell-labs.com/cm/cs/who/dmr/>.

My queries:

1) Prior to GNU, didn't the MIT lab and similar groups have
or make its own operating system?

2) Why did RMS decide to develop a Unix-type system if he came
from LISP?

3) Why did RMS work on Emacs and GCC before the GNU operating
system - presumably he was developing for Unix? A related
question: Did Linus Torvalds first develop Linux using Unix?

4) Was the Incompatible Timesharing System (ITS) a sort of oper-
ating system?

5) Is the GNU Hurd operating system now 'viable'? Why did it take
so long to produce?

6) What is the difference between GNU and the FSF?

7) The development of the free source movement since GNU appears
to have been helped by a standardisation on the C language,
promoted by the GCC compiler. Is this assertion true,
notwithstanding the developments since of Python, Perl etc.? Are
there important stories connected to Fortran or Lisp or any other
languages that I need to look at?

I realise some of these questions show a confusion about the difference
between languages and operating systems.

I would be most grateful for some answers to the above questions.
Rory

--
Rory Campbell-Lange
London

jkl...@bischof.mz.rp.schule.de

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
Answers:

1. Yes, they did indeed have their own OSes, MIT for example had ITS.

3. AFAIK, GCC and emacs were developed before HURD because HURD is being written
with them.

4. Yes. To find more information, see "The New Hacker's dictionary".
( I think you can get it at www.ccil.org somewhere).

5. I'm not 100% sure, but HURD is still not finished (at least I haven't
heard it was in beta).

6. GNU is a project spawned by the FSF. The FSF is the foundation behind
GNU.

Christopher B. Browne

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
On 18 Aug 1999 11:49:28 GMT, Rory C-L <campbel...@easynet.co.uk> posted:

>Problem:
>
>I intend to record some of the ethos and excitement of programming laid
>out in the book "Hackers". However I have become aware of a bald spot in
>the story laid out in this book, which is that there is only one reference
>to UNIX in the entire book. I have since done some research, and found
>Dennis Ritchie's excellent documentation on Unix at
><http://cm.bell-labs.com/cm/cs/who/dmr/>.
>
>My queries:
>
>1) Prior to GNU, didn't the MIT lab and similar groups have
> or make its own operating system?

ITS is probably the most notable; there was also involvement with Lisp
OSes.

>2) Why did RMS decide to develop a Unix-type system if he came
> from LISP?

The GNU Manifesto indicates that "Unix is not my ideal system, but it
is not too bad. ... And a system compatible with Unix would be
convenient for many other people to adopt."

Those represent reasonable causes, methinks?

>3) Why did RMS work on Emacs and GCC before the GNU operating
> system - presumably he was developing for Unix? A related
> question: Did Linus Torvalds first develop Linux using Unix?

Look to "forcible dependancies." Unix is a C-centric operating
system. Therefore, in order to build it, and the tools that stand
around it, you need a C compiler.

As for Emacs, RMS had already been working on Emacs, so it made sense
for him to continue to work on it.

On the "Linux side," Linux was originally "hosted" on Minix-based
systems.

>4) Was the Incompatible Timesharing System (ITS) a sort of oper-
> ating system?

Yes,

>5) Is the GNU Hurd operating system now 'viable'? Why did it take
> so long to produce?

Viability is not yet clear. There are a relatively small number of
developers, and probably very few users that are not developers. It
is not clear whether there will be much growth in numbers, not that
this prevents a small userbase from using it.

Cause for "slow production"? Part of it is that they were looking to
Mach as an underlying component, and the ability to use Mach as free
software was unclear for quite a long time.

>6) What is the difference between GNU and the FSF?

The Free Software Foundation is a nonprofit corporation, whereas GNU
seems to mean whatever anyone wants GNU to mean. It seems to me that
"GNU" is named on many occasions where "FSF" would be more proper.

>7) The development of the free source movement since GNU appears
> to have been helped by a standardisation on the C language,
> promoted by the GCC compiler. Is this assertion true,
> notwithstanding the developments since of Python, Perl etc.? Are
> there important stories connected to Fortran or Lisp or any other
> languages that I need to look at?

Note that neither Python and Perl use the GNU License, the GPL...

C is decidedly the most important language associated with the GNU
Project, as it was the first prominent one implemented, and since a
*vast* array of GPLed software uses it.

--
"I'm sure that nobody here would dream of misusing the Arpanet.
It's as unthinkable as fornication, or smoking pot." -- RMS
cbbr...@ntlug.org- <http://www.ntlug.org/~cbbrowne/lsf.html>

J.H.M. Dassen (Ray)

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
Rory C-L <campbel...@easynet.co.uk> wrote:
>2) Why did RMS decide to develop a Unix-type system if he came
> from LISP?
>
>3) Why did RMS work on Emacs and GCC before the GNU operating
> system - presumably he was developing for Unix?

These questions are partially answered in the GNU manifesto and the History
of the GNU Project; see http://www.fsf.org/philosophy/philosophy.html .

> A related
> question: Did Linus Torvalds first develop Linux using Unix?

What's your definition of Unix? Linus was working with Minix
(http://www.minix.org/) at the time; see
http://www.kde.org/food/linux_is_obsolete.html .

>5) Is the GNU Hurd operating system now 'viable'?

How do you define 'viable'? People are working on a distribution around the
Hurd now (http://www.debian.org/ports/hurd/), so it may start attracting
more people, although there do not seem to be many developers involved in
the Hurd kernel development itself.

> Why did it take so long to produce?

The initial focus of the GNU project was on free tools, so that a free
kernel could be developed later on. By the time the free tools were of
sufficiently high quality, there were quite a few free and freeish kernel
alternatives which worked fine.

>6) What is the difference between GNU and the FSF?

My perception: GNU is the project, FSF is the legal entity that mainly
supports the project.

>7) The development of the free source movement since GNU appears
> to have been helped by a standardisation on the C language,
> promoted by the GCC compiler. Is this assertion true,
> notwithstanding the developments since of Python, Perl etc.?

I'm not sure how much the standardisation has been an influence. The
availability of gcc as a high-quality, multi-platform compiler has been
quite important (both as a tool and as an excellent example of the free
software concept). It contributed to having a large pool of potential
developers of free C code. Perl and I believe Python too are written in C;
they have profited from the availability of gcc.

> Are there important stories connected to Fortran or Lisp or any other
> languages that I need to look at?

There is still a strong Lisp/Scheme influence on several parts of the GNU
project, e.g. emacs and guile.

HTH,
Ray
--
PATRIOTISM A great British writer once said that if he had to choose
between betraying his country and betraying a friend he hoped he would
have the decency to betray his country.
- The Hipcrime Vocab by Chad C. Mulligan

Doug DeJulio

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
In article <campbell-lange-...@campbell-lange.easynet.co.uk>,

Rory C-L <campbel...@easynet.co.uk> wrote:
>My queries:
>
>1) Prior to GNU, didn't the MIT lab and similar groups have
> or make its own operating system?

I'm pretty sure the answer is "several".

>3) Why did RMS work on Emacs and GCC before the GNU operating

> system - presumably he was developing for Unix? A related


> question: Did Linus Torvalds first develop Linux using Unix?

*How* could RMS work on the GNU operating system without an editor and
a compiler? What editor and compiler would he use? If they were not
free, wouldn't the resulting system be tied to assumptions relating to
the OS they were deployed on, since those assumptions would invariably
be built into the editor/compiler?

By picking an OS that has as its central philosophy "a bunch of small
tools that you string together", and starting by making free versions
of those small tools one piece at a time, it was possible to slowly
move towards having a complete free system. The fact that Unix was
available for multiple hardware platforms, and was fairly standardized
(C compiler, BSD and/or SysV system calls, etc) means it was more open
than many of the other possible choices (I don't think anyone would
dispute that Unix was more free than VMS or VM/CMS back then).

At each step of this process we had a complete system to use, and that
system gradually became more and more free. I was using GNU tools on
Sun, IBM and DEC hardware in the mid-80s, and I was grateful for them.
I *still* use a very GNU-ish environment on Solaris, SCO, AIX, and
other Unix operating systems.

Once there was a free kernel available, the last piece could be
snapped in. The FSF expected that kernel to be HURD, but this step
actually occured when the Linux kernel came out. A lot of the work
since then has been polish, refinement, productization, etc.

>4) Was the Incompatible Timesharing System (ITS) a sort of oper-
> ating system?

Oh, yes. I had an account on the last ITS machine. It ran on a
DEC-10, I believe.

>5) Is the GNU Hurd operating system now 'viable'? Why did it take
> so long to produce?

It's making progress. It's not "ready for prime time" yet. Why did
it take so long? Probably because it's not the top priority for many
folks, for reasons outlined above. Also, with Linux available, you
can get a complete system without it (further lowering its priority
for some folks).

>6) What is the difference between GNU and the FSF?

GNU = the OS named "GNU's Not Unix"
FSF = "The Free Software Foundation"

One is an operating system, the other is an organization. The FSF had
the goal of producing the GNU operating system.

You might call GNU an "operating environment" rather than an operating
system.

Compare with Windows 98. Under the hood, the lowest level kernel is
really quite DOS-like. But on top of it, there are all these more
advanced services, libraries, threading mechanisms, and even bundled
applications. When we call GNU an "OS" we're not referring to the
underlying kernel (the "DOS-like" part), but the total environment
(with all the goodies and apps).

So, folks who say "Windows 98 is not an OS, the OS is DOS" might also
say "GNU is not an OS, the OS is Linux/HURD/SunOS/IRIX". This last
view is popular partly for historical reasons. When folks started
with a SunOS box and gradually replaced all the components with GNU
components, they still tended to think of the underlying OS as the one
they started with -- even if the kernel was the only remaining
component, and everything else was GNU. A potentially interesting
distinction is that with SunOS, the SunOS component was the *first*
component, and with Linux, the Linux component was the *last*
component. This chronological distinction doesn't seem as obvious as
the question "what's the kernel?" to many people, so many people go by
kernel today (and thus call the OS "Linux").

Folks who say "DOS is just a component, the OS is Windows 98" might
say "the Linux Kernel is just a component, the OS is
GNU/RedHat/SuSE/Caldera". In this latter group, the only ones who
currently seem to have an active interest in promoting their point of
view are the GNU folks (witness RMS insisting, not always with perfect
tact, that people call it "GNU/Linux").

(My personal opinion on this one: just as GNU defined an OS that
included components not orignally part of GNU, like X11 and TeX and
the Linux kernel, some other folks can define an OS that includes many
components which *are* part of GNU, and that OS can be defined as
something other than GNU. So, take GNU (including the non-GNU X11,
TeX, etc), add in some other OS-specific components like a kernel and
"init" daemon, add in some distribution-specific components like
"YAST" or "rpm", and you've got a distinct OS such as "RedHat Linux"
or "SuSE Linux" that happens to contain GNU stuff, the same way GNU
contains X11 stuff. The name "Linux" then defines an OS standard in
almost the same way that "POSIX" does. I don't think my opinion on
this is a very popular one, but it lets me take the stance that both
Debian with their "GNU/Linux" system and other folks with their "just
plain Linux" systems are *all* actually completely and unambiguously
correct.)

>7) The development of the free source movement since GNU appears
> to have been helped by a standardisation on the C language,
> promoted by the GCC compiler. Is this assertion true,

> notwithstanding the developments since of Python, Perl etc.? Are


> there important stories connected to Fortran or Lisp or any other
> languages that I need to look at?

A standardized C language meant that the work that the FSF did could
be used by a much wider variety of people. It was easeier to get code
working on a wider variety of platforms. A natural consequence of
this would be that more people were interested in the work, and more
people helped out.

For example, *today* we can use GNU tools on a Windows system. So,
there are people interested in improving the GCC compiler toolchain so
they can use it to produce Windows programs. The improvements can
benefit everyone (one example might be better Pentium optimizations,
or MMX/3DNow support for inline assembler code).
--
Doug DeJulio | mailto:d...@hks.net
HKS, Incorporated | http://www.hks.net/~ddj/

Ottavio G. Rizzo

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
cbbr...@news.brownes.org (Christopher B. Browne) writes:
> Note that neither Python and Perl use the GNU License, the GPL...

Perl is licenced either under the GPL or under the "Artistic" license,
at your choice.

Ottavio
--
Ottavio Rizzo IRMAR, Campus de Beaulieu
ri...@maths.univ-rennes1.fr Université de Rennes 1
Tél +33 (0)2 99 28 67 92 35042 RENNES cedex
Fax +33 (0)2 99 28 67 90 FRANCE

Rod Smith

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
[Posted and mailed]

In article <campbell-lange-...@campbell-lange.easynet.co.uk>,


campbel...@easynet.co.uk (Rory C-L) writes:
>
> 1) Prior to GNU, didn't the MIT lab and similar groups have
> or make its own operating system?

Yes and no. Commercial UNIXes were available and in use before the FSF
or GNU came into being. I don't know offhand whether these were in heavy
use at MIT at the time, though. I do know that in the 1960s and 1970s
MIT, like many sites, had been using OSes that are little-known today --
things like ITS.

> 2) Why did RMS decide to develop a Unix-type system if he came
> from LISP?

LISP is a computer language. UNIX is an operating system. The two aren't
mutually exclusive, and in fact, as a language, LISP *MUST* run on an
operating system. UNIX is as good an OS as any for that task. (Actually,
I don't know enough about LISP to know what its optimal host OS would be,
but AFAIK there's nothing extraordinarily BAD about UNIX from a LISP point
of view.)

> 3) Why did RMS work on Emacs and GCC before the GNU operating
> system - presumably he was developing for Unix?

Because he needed those tools to develop HURD. Either that or use
commercial tools to develop HURD first and then develop the compiler and
switch compilers, but that could present all sorts of troubles. (No two
compilers for the same language produce identical binaries or take
identical options in their source code, so switching a compiler would
require rewriting at least some of the OS and debugging it all over again
-- not an enticing prospect when you're ALSO developing and debugging the
compiler! You'd also then have an OS with no applications and no
compiler, so you'd need to cross-compile everything until you got a
native compiler running, and that would be a nuisance.)

At least, that's what I imagine -- I don't have privileged access to RMS's
brain! ;-)

> A related
> question: Did Linus Torvalds first develop Linux using Unix?

Not exactly. Linus Torvalds began Linux as a sort of re-implementation of
Minix, which is another UNIX clone. Much of the original Linux coding was
done with tools under Minix, until Linux itself became stable enough to
host the development.

> 4) Was the Incompatible Timesharing System (ITS) a sort of oper-
> ating system?

Yes.

> 5) Is the GNU Hurd operating system now 'viable'? Why did it take
> so long to produce?

I've never used it, but my understanding is that it's now available. I
don't know if it's useable or "viable," whatever that might mean. My
understanding is that it took a long time mostly because the kernel
proved much more challenging to produce than the developers had
originally anticipated. The design was to be fairly leading-edge, so the
techniques required weren't well-understood. By contrast, the Linux
kernel uses relatively old and well-understood techniques, so instead of
spending a week trying to figure out how to accomplish something, the
developers could look it up in a textbook and have it done in half a
day. Again, though, I'm not "in" on either the HURD or the Linux core
development, so this is based on what I've heard, not first-hand
experience.

> 6) What is the difference between GNU and the FSF?

FSF (Free Software Foundation) is the organization that's written most
software that bears the GNU (GNU's Not UNIX) label. FSF is to GNU as
Hewlett Packard is to LaserJet, or as Intel is to Pentium. Except, AFAIK,
"GNU" isn't a trademarked term, so others can use it on software that
doesn't come from FSF.

> 7) The development of the free source movement since GNU appears
> to have been helped by a standardisation on the C language,
> promoted by the GCC compiler. Is this assertion true,
> notwithstanding the developments since of Python, Perl etc.? Are
> there important stories connected to Fortran or Lisp or any other
> languages that I need to look at?

That's probably a reasonable assertion. Certainly not as much would have
been accomplished if everybody had been using different languages. OTOH,
the open source movement is now big enough that there's room for programs
written in several other languages. Also, certain languages are popular
in certain specific subfields. LISP is big in AI circles, for instance,
though AFAIK there's not a lot of high-profile LISP software out there,
aside from Emacs. Various scripting languages are quite popular for
writing quick utilities and "glue" for separate components of packages.

You might want to pick up a copy of O'Reilly's _Open Sources: Voices from
the Open Source Revolution_, edited by Dibona, Stone, and Ockman. (I've
got a link to Amazon.com's ordering page for it on my web site at
http://members.bellatlantic.net/~smithrod/books.html.) It's got essays
that go into much of the history of the open source movement that you may
find interesting.

--
Rod Smith
smit...@bellatlantic.net
http://members.bellatlantic.net/~smithrod
Author of _Special Edition Using Corel WordPerfect 8 for Linux_, from Que

Vivek Khera

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
>>>>> "RC" == Rory C-L <campbel...@easynet.co.uk> writes:

RC> I am writing a longish paper on the free software movement. I am an
RC> architect in the United Kingdom, where there is a long history of
RC> adverserial building contracts. I believe the building profession may be
RC> able to learn something from the collaborative work environments that have
RC> helped form the GNU/free source movement.

You'll find quite a bit of history about the movement from the
O'Reilly book "Open Sources: Voices from the Open Source Revolution"
which can be read online at
http://www.oreilly.com/catalog/opensources/book/toc.html

I found it quite fascinating and very informative from a historical
perspective.

--
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Vivek Khera, Ph.D. Khera Communications, Inc.
Internet: kh...@kciLink.com Rockville, MD +1-301-545-6996
PGP & MIME spoken here http://www.kciLink.com/home/khera/

Russ Allbery

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
In gnu.misc.discuss, Rory C-L <campbel...@easynet.co.uk> writes:

> 7) The development of the free source movement since GNU appears
> to have been helped by a standardisation on the C language,
> promoted by the GCC compiler. Is this assertion true,
> notwithstanding the developments since of Python, Perl etc.? Are
> there important stories connected to Fortran or Lisp or any other
> languages that I need to look at?

C++. I'm seeing a growing percentage of free software written in C++, for
various reasons. (It's an extremely bad OO language, in my personal
opinion, but compatibility of a sort with C counts for quite a bit.)

Other people have said other things about this, but I feel obligated to
point out that Python and Perl are both fairly bad languages for doing
what the GNU Project has largely done with C. Neither of them are systems
programming languages (you wouldn't want to write a kernel in either of
them), so they were unsuitable for writing the core of the operating
system and things like libc or a C compiler (which you need regardless of
your implementation language just due to the already available code).

They're also slower on the average than well-written C, so you want to use
C for frequently used utilities like ls or places where speed matters a
lot to the interactive performance of the system, like X or emacs.

There are also still more C programmers out there than there are
programmers in any other language, at least in the free software
development community. This may eventually change, but it will take a
long time.

--
Russ Allbery (r...@stanford.edu) <URL:http://www.eyrie.org/~eagle/>

Russ Allbery

unread,
Aug 18, 1999, 3:00:00 AM8/18/99
to
In gnu.misc.discuss, Michael Coughlin <m-cou...@ne.mediaone.net> writes:

> Taking the best ideas and selling them as an easy to use system is not
> what MIT is supposed to do. Once a system or programming language works
> well enough so anybody can use it, it is no longer an academic research
> project, and should be sold by a business that can offer commercial
> support. There is a big problem with academic research and commercial
> interests. How and when should university research be turned to making
> a profit instead of being done for the benefit of humanity?

This is sort of an interesting phrasing of this perspective, for a
crosspost between gnu.misc.discuss and a Linux group. I'd strongly
disagree with the contention that Linux has been "turned to making a
profit," for example. People are making a profit off of Linux, certainly,
but it's not the primary purpose of the development of the operating
system.

There are some fairly prominant software systems that have been supported
by universities for quite some time. Sticking with MIT as an example,
consider Kerberos. There are various other states a software project can
be in other than an academic research project or the property of a
business.

(There's also no need for the business to own the software in order for it
to offer commercial support.)

> But Unix and C were literary masterpieces. They were to computer
> programming as Shakespeare was to English.

Hm. I really don't agree with this either. Unix and C have been as
successful as they are precisely because they're *not* literary
masterpieces; they're flexible, low-level, and easy to port, and they
expose a lot of the hardware to people who need the operating system not
to hide the details they need to get work done.

LISP or Smalltalk or the like is a lot closer to a literary masterpiece
than Unix is. Unix is more like a plumber's helper.

> Linus saw all the C code published on the internet with the GNU license,
> and knew that one key program was missing -- a Unix clone kernal. If he
> could write that last part, he would have everything needed to have a
> full industrial strength clone of Unix on his 80386 home computer. Not a
> simple student Minix, but the real thing. This was a very difficult
> project for one student to do, so he did it.

I'd have to go look up the interviews with Linus on this subject again,
but this doesn't sound like the way I've heard him tell the story of the
beginnings of Linux. In particular, I've never gotten the impression that
he set out specifically to write the last remaining piece of the GNU
system; that part sort of just happened.

> But he also discovered something more important. If you publish your
> source under the GPL, lots of people on the internet can and will help
> you. Now Andrew Tannenbaum could have done the same thing. After all he
> is a professor, and the author of the important textbooks that Linus
> studied. But he didn't see the importance of the GPL. So the student
> beat the professor, and we have Linux instead of Tannenbaumix.

To be fair to Tannenbaum, I haven't gotten the impression he's interested
in doing what Linus did or being what Linus is. He's a professor and a
researcher and has always, to me, sounded more interested in theoretical
models of operating system construction than in doing the vast amounts of
(often very uninteresting theoretically) work Linus puts into maintaining
an implemented one.

Rainer Joswig

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to

>
> > 2) Why did RMS decide to develop a Unix-type system if he came
> > from LISP?
>
> LISP is a computer language. UNIX is an operating system. The two aren't
> mutually exclusive, and in fact, as a language, LISP *MUST* run on an
> operating system. UNIX is as good an OS as any for that task. (Actually,
> I don't know enough about LISP to know what its optimal host OS would be,
> but AFAIK there's nothing extraordinarily BAD about UNIX from a LISP point
> of view.)

Unix *is* bad. It's ugly and full of crap.

You really don't want compare Unix to an OS
which is object-oriented down to the core.

At the AI Lab they had developed a Lisp OS,
which has been commercialized by several companies (Symbolics,
LMI, TI, ...). This Lisp OS ran on a special purpose
workstation hardware. Before 1980 this thing had
an object-oriented OS, bitmapped display, mouse, large
disks, virtual memory, garbage collection,
threaded object-oriented OS, networking, ...
Unfortunately the system was a bit too expensive for
the average guy and it was tailored to make software
development (in Lisp for AI) as easy as possible.
The Lisp machine card I'm using in my Mac once
was sold for $35000. At around 1991 it was available
for universities for $10000. Well, it shipped
with an object-oriented OS and most of the
source for the system.

Rory C-L

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
In article <x7d7wkr...@kci.kciLink.com>, Vivek Khera
<kh...@kciLink.com> wrote:

>You'll find quite a bit of history about the movement from the
>O'Reilly book "Open Sources: Voices from the Open Source Revolution"
>which can be read online at
>http://www.oreilly.com/catalog/opensources/book/toc.html
>
>I found it quite fascinating and very informative from a historical
>perspective.

Thanks for the pointer. I'll pick up a copy.

Best wishes
Rory

--
--
Rory Campbell-Lange
The Campbell-Lange Workshop, London

Bernhard Reiter

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
On 18 Aug 1999 19:59:48 -0700, Russ Allbery <r...@stanford.edu> wrote:
>In gnu.misc.discuss, Rory C-L <campbel...@easynet.co.uk> writes:

>I'm seeing a growing percentage of free software written in C++, for
>various reasons. (It's an extremely bad OO language, in my personal
>opinion, but compatibility of a sort with C counts for quite a bit.)

People don't know Objective-C enough.
Easier to learn and NeXTStep was written in it.

The story how the GNU C-Compiler got Objetive-C Support is well worth
a look, too. AFAIK it was as close as it got to testing the GNU GPL in court.

*sigh* we should edcuate more people in Objective-C and help the
gnustep people. Because NeXTStep still beats GNOME and KDE, IMHO.
(Hmmm where was that inofficial gnustep webpage again....)

Bernhard

--
Research Assistant, Geog Dept UM-Milwaukee, USA. (www.uwm.edu/~bernhard)
Association for a Free Informational Infrastructure (ffii.org)

Michael Coughlin

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
Rory C-L wrote:

> My queries:



> 1) Prior to GNU, didn't the MIT lab and similar groups have
> or make its own operating system?

Yes. MIT is a research institution. They are interested in
new and better ways to use and program computers. They developed
many computer languages and operating systems. But these were
made for and by highly educated people who can remember
complicated instructions. Taking the best ideas and selling them


as an easy to use system is not what MIT is supposed to do. Once
a system or programming language works well enough so anybody
can use it, it is no longer an academic research project, and
should be sold by a business that can offer commercial support.
There is a big problem with academic research and commercial
interests. How and when should university research be turned to
making a profit instead of being done for the benefit of
humanity?

> 2) Why did RMS decide to develop a Unix-type system if he came
> from LISP?

While RMS considers Lisp to be a better way to program a
computer than C, he realizes there are many more people who are
able to use C effectivley than those who use Lisp. But the most
important consideration is the availability of source code. You
have to be a programmer to understand how important it is to
have control over the source code. Everything RMS does revolves
around this fact. Unfortunately even many programmers don't seem
to pay attention to this point.

Now there was an interesting historical accident involving
Unix, C and the AT&T Corporation. Because of the monopoly
granted to AT&T to act as the main telephone company of the
United States, the Federal Government did not allow AT&T to
compete in the computer business. But AT&T had a research
operation at Bell Laboratories that took research as seriously
as MIT and they worked on computers. Unix was invented at Bell
Labs. C was invented to write Unix. And AT&T couldn't sell it.


But Unix and C were literary masterpieces. They were to computer

programming as Shakespeare was to English. Since it couldn't
sell it, AT&T allowed the source code to Unix and the C compiler
to be given to computer science departments all over the country
as its contribution to academic research. And the students at
these universities started doing amazing things with it. Unix
and C were just the right stuff to get the best results on the
computers of the day.

Now at the same time, MIT had projects that were doing very
well with Lisp. But instead of continuing to publish their Lisp
code as academic research, most of the Lisp researchers decided
to cash in and form their own computer companies with venture
capital. They made the wrong move. The computer problems they
thought they could solve were not ready to be solved even with
the large amounts of money they threw at them. They kept their
Lisp code a copyrighted trade secret. Meanwhile students all
over were learning to solve their computer assignments with C.
And RMS saw this first hand.

The government changed its mind about AT&T and the computer
business when they broke it up. AT&T tried to market Unix and
flopped. But it was too late. Unix source in C was all over
computer departments.
AT&T couldn't hide it with copyrights and licenses anymore.

> 3) Why did RMS work on Emacs and GCC before the GNU operating

> system - presumably he was developing for Unix? A related


> question: Did Linus Torvalds first develop Linux using Unix?

RMS worked on Emacs early in his career. He learned that
people would pay to get copies of it even when he supplied it in
source code form. He also decided that a good C compiler with
unencumbered source code was the most important project he could
work on. If there was one high quality C compiler on every
computer system, C would be a standard uniform computer language
that would work the same way everywhere. Other languages had
many incompatable varients created by commercial interests who
wanted to beat their competition.

Yes, Linus Torvalds did develop Linux using Unix, but not
directly.
By the time Linus started his work, AT&T had restricted the
distribution of Unix source code. Linus studied C programming
and operating systems by reading Andrew Tannenbaum's book on
"Minix" which is a simplified student version of an operating
system very similar to Unix. It had the complete source code in
C, with ample comments to aid learning. Unfortunately it was
copyrighted. Linus saw all the C code published on the internet


with the GNU license, and knew that one key program was missing
-- a Unix clone kernal. If he could write that last part, he
would have everything needed to have a full industrial strength
clone of Unix on his 80386 home computer. Not a simple student
Minix, but the real thing. This was a very difficult project for

one student to do, so he did it. But he also discovered


something more important. If you publish your source under the
GPL, lots of people on the internet can and will help you. Now
Andrew Tannenbaum could have done the same thing. After all he
is a professor, and the author of the important textbooks that
Linus studied. But he didn't see the importance of the GPL. So
the student beat the professor, and we have Linux instead of
Tannenbaumix.

--
Michael Coughlin m-cou...@ne.mediaone.net Cambridge, MA USA

Paul Eggert

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
Michael Coughlin <m-cou...@ne.mediaone.net> writes:

>Andrew Tannenbaum could have done the same thing. After all he
>is a professor, and the author of the important textbooks that
>Linus studied. But he didn't see the importance of the GPL. So
>the student beat the professor, and we have Linux instead of
>Tannenbaumix.

A nice retelling, but Andrew's last name is spelled `Tanenbaum'.
For more about Minix, please see:
http://www.cs.vu.nl/~ast/minix.html
An amusing thing about that web page is that it doesn't mention Linux,
not even once.

I talked to Tanenbaum several years ago when he was visiting Los
Angeles. He was consulting for a large, traditional print publisher
trying to make money off the net. The publisher was concerned that
people would (horrors!) just read stuff for free and not pay them for
copies. As far as I know, that publisher is still trying to figure out
how to make money off the net.

Rodger Donaldson

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
On Thu, 19 Aug 1999 00:01:48 -0400, Michael Coughlin
<m-cou...@ne.mediaone.net> wrote:

>He also decided that a good C compiler with
>unencumbered source code was the most important project he could
>work on.

Actually, he originally, according to a lecture I attended last year, wanted
to work with an exisiting C compiler, and approached a gentleman by the name
of Tannenbaum about his. When he was rebuffed, he made the early gccs the
highest priority.

>Linus saw all the C code published on the internet
>with the GNU license, and knew that one key program was missing
>-- a Unix clone kernal. If he could write that last part, he
>would have everything needed to have a full industrial strength
>clone of Unix on his 80386 home computer.

This is an interesting interpretation, but one utterly unsupported by any
interview I've ever read with Linus.

--
Rodger Donaldson rod...@ihug.co.nz
"Knuth is right: computer programming is not a science, but an art. System
administration is an art too, and a black one at that."
-- Adam J. Thornton

Doug DeJulio

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
In article <ylg11gc...@windlord.stanford.edu>,

Russ Allbery <r...@stanford.edu> wrote:
>Other people have said other things about this, but I feel obligated to
>point out that Python and Perl are both fairly bad languages for doing
>what the GNU Project has largely done with C.

This is true, but they're *great* for all sorts of things that "round
out" what has been done with C into a whole system. For example,
they're great for whipping out complex scripts to handle sysadmin
tasks with lots of steps ("Figure out which users have passwords that
will expire in a week and who are over quota, enter that info into
this SQL database, render a report in LaTeX, and fax it to Fred.").
They're also good for cron tasks. They provide good "glue" languages.

I'd consider using GUILE for this, but:

* I can't find documentation on Ctax, and I don't like Scheme. (I've
hunted for it! How do I use GUILE without ever being aware of its
Scheme syntax flavor?)
* It appears to be under full GPL and owned by a group that doesn't
take Linus's stance on dynamic-loaded modules, so it's not clear to
me that I can link in Oracle support for example. Until the whole
of an end-user GNU system is complete (eg. good temp-friendly word
processor, good temp-friendly spreadsheet, etc), I will have to use
*some* proprietary software, so even *ambiguity* on this point is
crippling.

Craig Brozefsky

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
d...@hks.net (Doug DeJulio) writes:

> I'd consider using GUILE for this, but:
>
> * I can't find documentation on Ctax, and I don't like Scheme. (I've
> hunted for it! How do I use GUILE without ever being aware of its
> Scheme syntax flavor?)

Sorry, you'll have to be lobotomized. Its much more than just Scheme
syntax that makes you aware that it's running on Scheme. I think that
the whole translator thing is a pipe-dream. And what good is working
with Guile if you can't use Scheme hygenic macros and Common Lisp
style defmacros? Those features are directly tied to the s-expr
syntax, and are incredibly powerful, I can't imagine working without
them.

> * It appears to be under full GPL and owned by a group that doesn't
> take Linus's stance on dynamic-loaded modules, so it's not clear to
> me that I can link in Oracle support for example. Until the whole
> of an end-user GNU system is complete (eg. good temp-friendly word
> processor, good temp-friendly spreadsheet, etc), I will have to use
> *some* proprietary software, so even *ambiguity* on this point is
> crippling.

Please check the Guile license, which has a clause that specifically
supports when you are talking about above, linking with proprietary
licenses.


--
Craig Brozefsky <cr...@red-bean.com>
Free Scheme/Lisp Software http://www.red-bean.com/~craig
I say woe unto those who are wise in their own eyes, and yet
imprudent in 'dem outside -Sizzla

Steven G. Johnson

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
d...@hks.net (Doug DeJulio) wrote:
>[...] I'd consider using GUILE for this, but:
>[...]

>* It appears to be under full GPL and owned by a group that doesn't
> take Linus's stance on dynamic-loaded modules, so it's not clear to
> me that I can link in Oracle support for example. [...]

The Guile library is under the GPL, but with a special exception that
allows linking to proprietary code. The following is from the Guile
source code:

* As a special exception, the Free Software Foundation gives permission
* for additional uses of the text contained in its release of GUILE.
*
* The exception is that, if you link the GUILE library with other files
* to produce an executable, this does not by itself cause the
* resulting executable to be covered by the GNU General Public License.
* Your use of that executable is in no way restricted on account of
* linking the GUILE library code into it.

It seems like it would have been clearer to just use the LGPL (although
this is slightly different), or at least to better-publicize this
exception, but it's there if you look.

Cordially,
Steven G. Johnson

Richard Kettlewell

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
bern...@alpha1.csd.uwm.edu (Bernhard Reiter) writes:

> People don't know Objective-C enough.
> Easier to learn and NeXTStep was written in it.

Where can one find documentation for the language?

--
http://www.greenend.org.uk/rjk/

Doug DeJulio

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
In article <87ogg3a...@duomo.pukka.org>,
Craig Brozefsky <cr...@red-bean.com> wrote:

>d...@hks.net (Doug DeJulio) writes:
>
>> I'd consider using GUILE for this, but:
>>
>> * I can't find documentation on Ctax, and I don't like Scheme. (I've
>> hunted for it! How do I use GUILE without ever being aware of its
>> Scheme syntax flavor?)
>
>Sorry, you'll have to be lobotomized. Its much more than just Scheme
>syntax that makes you aware that it's running on Scheme. I think that
>the whole translator thing is a pipe-dream. And what good is working
>with Guile if you can't use Scheme hygenic macros and Common Lisp
>style defmacros? Those features are directly tied to the s-expr
>syntax, and are incredibly powerful, I can't imagine working without
>them.

I guess you also feel that all users of Perl, Python, Java, TCL, or
PHP3 need to be lobotomized...

As for why I don't just use Perl, Python, et cetera -- I will for
now. But I'd been hoping to take full advantage of the scripting
capabilities being built into GNOME. It looks like that's at least on
hold for a while.

There are lots of folks who won't use Emacs because they can't
customize it without using Lisp. I thought "the whole translator
thing" was there in the first place to avoid exactly this.

Doug DeJulio

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
In article <stevenj-1908...@du20816950246.chicago.avenew.net>,

Steven G. Johnson <ste...@alum.mit.edu> wrote:
>d...@hks.net (Doug DeJulio) wrote:
>>[...] I'd consider using GUILE for this, but:
>>[...]
>>* It appears to be under full GPL and owned by a group that doesn't
>> take Linus's stance on dynamic-loaded modules, so it's not clear to
>> me that I can link in Oracle support for example. [...]
>
>The Guile library is under the GPL, but with a special exception that
>allows linking to proprietary code. The following is from the Guile
>source code:

[...]

Wow, that's great news. Why the heck didn't they just use the LGPL?

I'll point out that the minute that Guile incorporates a patch without
transfer of copyright (thus making Guile a derivative of GPLed code,
because any such patch would be derivative of Guile which is GPLed),
the Guile maintainers will no longer have the *right* to grant such an
exception. (I consider the fact that the Linux kernel is in exactly
this state right now to be a big benefit for Linux -- *NOBODY* can
un-GPL Linux because of it.)

Plus, it's all confusing (as should be obvious from my confusion).

If they'd used the LGPL instead, this would not be an issue. Please,
Guile-maintainers, switch to LGPL while you still can.

Michael Coughlin

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
Russ Allbery wrote:

> In gnu.misc.discuss, Michael Coughlin <m-cou...@ne.mediaone.net> writes:

> > But Unix and C were literary masterpieces. They were to computer
> > programming as Shakespeare was to English.

> Hm. I really don't agree with this either. Unix and C have been as
> successful as they are precisely because they're *not* literary
> masterpieces; they're flexible, low-level, and easy to port, and they
> expose a lot of the hardware to people who need the operating system
> not to hide the details they need to get work done.

> LISP or Smalltalk or the like is a lot closer to a literary
> masterpiece than Unix is. Unix is more like a plumber's helper.

Using the term "literary masterpiece" in connection with
computer languages and system programming is streaching the
meaning of the term a lot. Lets just say I'm using poetic
license. But I'm also thinking of a comparison with what was
used at Bell Labs when Unix was being invented,
circa 1970. This was in the days of punched cards, IBM JCL,
FORTRAN IV,
Snobol, time sharing systems that crashed before you could get
anything done, and Multics that never even was finished. Compare
Unix and C with those things. LISP and Smalltalk were probably
known to a few people at Bell Labs but I didn't hear of them
being used there when Unix was being written.

> > Linus saw all the C code published on the internet with the GNU
> > license, and knew that one key program was missing -- a Unix clone
> > kernal. If he could write that last part, he would have everything
> > needed to have a full industrial strength clone of Unix on his
> > 80386 home computer. Not a simple student Minix, but the real
> > thing. This was a very difficult project for one student to do,
> > so he did it.

> I'd have to go look up the interviews with Linus on this subject
> again, but this doesn't sound like the way I've heard him tell the
> story of the beginnings of Linux. In particular, I've never gotten
> the impression that he set out specifically to write the last
> remaining piece of the GNU system; that part sort of just happened.

Don't think I'm quoting what Linus said. I'm trying to
point out what he did. He might not have intended to write the
last missing part of the GNU operating system. He might not even
have realized he had done it when he did. But after he published
a certain amount of his code, it happened. Before Linus all GNU
code had to be compiled and run on propriatory systems. After
Linus, GNU code could be run on a system using all free
software. There were others who could have done the job, and
others who were trying to do the job, but Linus did it first.


> > But he also discovered something more important. If you publish
> > your source under the GPL, lots of people on the internet can and
> > will help you. Now Andrew Tannenbaum

[ oops, Tanenbaum -- I should get that right; everybody should
read his books and you have to have the right name to find them
in the library]

> > could have done the same thing.
> > After all he is a professor, and the author of the important
> > textbooks that Linus studied. But he didn't see the importance of
> > the GPL. So the student beat the professor, and we have Linux
> > instead of Tannenbaumix.

> To be fair to Tannenbaum, I haven't gotten the impression he's
> interested in doing what Linus did or being what Linus is. He's
> a professor and a researcher and has always, to me, sounded more
> interested in theoretical models of operating system construction
> than in doing the vast amounts of (often very uninteresting

> theoretically) work Linus puts into maintaining and implemented one.

Quite so. This thread started out with somebody asking why
the GNU system uses C instead of Lisp, why it is based on Unix
instead of some other operating system, and so on. The reasons
are varied and complex. A mixture of careful planning and sheer
acident. But the reasons are very interesting. They are also
hard to pin down.

john s jacobs anderson

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
Russ Allbery <r...@stanford.edu> writes:

> In gnu.misc.discuss, Michael Coughlin <m-cou...@ne.mediaone.net> writes:
>

> > But Unix and C were literary masterpieces. They were to computer
> > programming as Shakespeare was to English.
>

> Hm. I really don't agree with this either. Unix and C have been as
> successful as they are precisely because they're *not* literary
> masterpieces; they're flexible, low-level, and easy to port, and they
> expose a lot of the hardware to people who need the operating system not
> to hide the details they need to get work done.


From jwz.org, I think this does a decent job of explaining why the
first is incorrect, and the second isn't:

<http://www.jwz.org/worse-is-better.html>

A hopefully-pertinent-and-intriguing pullquote to inspire reading the
whole thing:

"The lesson to be learned from this is that it is often
undesirable to go for the right thing first. It is better to
get half of the right thing available so that it spreads like
a virus. Once people are hooked on it, take the time to
improve it to 90% of the right thing."

--
----------------------------------------------------------------
John S Jacobs Anderson jac...@azstarnet.com
www.treefort.org/~jacobs/ <-- GeneHack (bioinfo*linux*opinion)

Noah Roberts (jik-)

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
d...@hks.net (Doug DeJulio) writes:

> In article <stevenj-1908...@du20816950246.chicago.avenew.net>,
> Steven G. Johnson <ste...@alum.mit.edu> wrote:
> >d...@hks.net (Doug DeJulio) wrote:
> >>[...] I'd consider using GUILE for this, but:
> >>[...]
> >>* It appears to be under full GPL and owned by a group that doesn't
> >> take Linus's stance on dynamic-loaded modules, so it's not clear to
> >> me that I can link in Oracle support for example. [...]
> >
> >The Guile library is under the GPL, but with a special exception that
> >allows linking to proprietary code. The following is from the Guile
> >source code:
>
> [...]
>
> Wow, that's great news. Why the heck didn't they just use the LGPL?

RMS is anti LGPL.

Craig Brozefsky

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
d...@hks.net (Doug DeJulio) writes:

> In article <87ogg3a...@duomo.pukka.org>,
> Craig Brozefsky <cr...@red-bean.com> wrote:
>
> >Sorry, you'll have to be lobotomized. Its much more than just Scheme
> >syntax that makes you aware that it's running on Scheme. I think that
> >the whole translator thing is a pipe-dream. And what good is working
> >with Guile if you can't use Scheme hygenic macros and Common Lisp
> >style defmacros? Those features are directly tied to the s-expr
> >syntax, and are incredibly powerful, I can't imagine working without
> >them.
>
> I guess you also feel that all users of Perl, Python, Java, TCL, or
> PHP3 need to be lobotomized...

No, just that that is the only way in which you would be able to use
Guile without fearing the s-expr syntax.

> There are lots of folks who won't use Emacs because they can't
> customize it without using Lisp. I thought "the whole translator
> thing" was there in the first place to avoid exactly this.

The "translator thing" is a pipe-dream, and yes that is ostensibly the
problem it is trying to solve.

Noah Roberts (jik-)

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
ste...@alum.mit.edu (Steven G. Johnson) writes:

> d...@hks.net (Doug DeJulio) wrote:
> >[...] I'd consider using GUILE for this, but:
> >[...]
> >* It appears to be under full GPL and owned by a group that doesn't
> > take Linus's stance on dynamic-loaded modules, so it's not clear to
> > me that I can link in Oracle support for example. [...]
>
> The Guile library is under the GPL, but with a special exception that
> allows linking to proprietary code. The following is from the Guile
> source code:
>

> * As a special exception, the Free Software Foundation gives permission
> * for additional uses of the text contained in its release of GUILE.
> *
> * The exception is that, if you link the GUILE library with other files
> * to produce an executable, this does not by itself cause the
> * resulting executable to be covered by the GNU General Public License.
> * Your use of that executable is in no way restricted on account of
> * linking the GUILE library code into it.

So what the hell does this mean exactly? What can be proprietery and
what cannot?

Craig Brozefsky

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
d...@hks.net (Doug DeJulio) writes:

> >The Guile library is under the GPL, but with a special exception that
> >allows linking to proprietary code. The following is from the Guile
> >source code:
>

> [...]
>
> Wow, that's great news. Why the heck didn't they just use the LGPL?

Because it did not do what they wanted. I would guess that section 6
of the LGPL was not quite what they wanted. Unlike the LGPL, there
are no weird requirements that the linking application must conform
to, you simple can link anything with guile. The LGPL is quite a bit
different than this.

> I'll point out that the minute that Guile incorporates a patch without
> transfer of copyright (thus making Guile a derivative of GPLed code,
> because any such patch would be derivative of Guile which is GPLed),
> the Guile maintainers will no longer have the *right* to grant such an
> exception.

The Guile maintainers are fully aware of this, and not only are they
insisting on patches bearing this exception, but they also collect
copyright assignments, as all official GNU projects do. Jim Blandy,
the present head there, is a very capable developer and diplomat, and
it cognizant of the myriad issues involved with accepting patches.

> If they'd used the LGPL instead, this would not be an issue. Please,
> Guile-maintainers, switch to LGPL while you still can.

If they used the LGPL, their license would not do what they wanted it
to do, and thus would be broken. As it stands now, you can
effectively treat guile as if it was LGPLed if you are just linking
against it, in fact it is even more lenient than the LGPL, as you do
not need to conform to the requirements of Section 6. I'm not sure
why you would want to add even more complexity to the already quite
simple license, particular when you're claming that you want to mmake
it simpler and a non-issue.

Craig Brozefsky

unread,
Aug 19, 1999, 3:00:00 AM8/19/99
to
"Noah Roberts (jik-)" <j...@foxinternet.net> writes:

> > * As a special exception, the Free Software Foundation gives permission
> > * for additional uses of the text contained in its release of GUILE.
> > *
> > * The exception is that, if you link the GUILE library with other files
> > * to produce an executable, this does not by itself cause the
> > * resulting executable to be covered by the GNU General Public License.
> > * Your use of that executable is in no way restricted on account of
> > * linking the GUILE library code into it.
>
> So what the hell does this mean exactly? What can be proprietery and
> what cannot?

You use the code, you have to GPL, you link, you can use whatever
license you want.

So, I grab libguile source and hack it up. If I distribute, gotta GPL
it, without or without the exception. If I write a web server and
want to link against libguile to support server side scripting, I can
do that and release the webserver under whatever license I please.

That is my understanding of it, and the only thing that is foggy there
is wether or not I have to have the exception in my "work based on
guile". As far as my "work using/linking guile" I have no
restrictions.

Christopher Browne

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
On 19 Aug 1999 16:43:45 -0400, Doug DeJulio <d...@hks.net> wrote:
>I thought "the whole translator thing" was there in the first place
>to avoid exactly this.

That's more or less right.

The problem is that something like C-TAX is neither "fish nor fowl."

It's not really C; it's not really Scheme.

It's not unlike the situation way back when Bourne shell was written,
where (if the apocryphal tales are correct) Mr. Bourne created a set
of C macros that basically allowed the gentle programmer to write C
using a syntax that looked rather similar to Pascal/Algol.

This unfortunately made the code nearly unmaintainable, as it wasn't
recognizable as either C *or* Pascal.

The Casbah project (<http://www.casbah.org/>) was planning to create
an infrastructure that would emulate/rewrite Perl code into Scheme
that would be executed using DrScheme. This proved impractical; the
language that would result would not really be Perl, but rather a
language-that-gets-transformed that-somewhat-resembles-Perl. And for
some purposes, it would be preferable to work with the "original
Perl," and for others, the Scheme that gets generated.

Better to say: "Guile *is* a Scheme implementation" and be done with
it...
--
As of next Monday, MACLISP will no longer support list structure.
Please downgrade your programs.
cbbr...@ntlug.org- <http://www.hex.net/~cbbrowne/lsf.html>

Bernhard Reiter

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
On 19 Aug 1999 09:22:51 +0100, Richard Kettlewell <r...@sfere.greenend.org.uk> wrote:
>bern...@alpha1.csd.uwm.edu (Bernhard Reiter) writes:
>
>> People don't know Objective-C enough.
>> Easier to learn and NeXTStep was written in it.
>
>Where can one find documentation for the language?

http://www.santafe.edu/projects/swarm/ObjC/objective-c.html

I was told that Brad Cox's book about it contains too much advertisment,
because he wanted to sell his Stepstone Compiler. The NeXT documentation
was pretty okay from what I recall.

Noah Roberts (jik-)

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
Craig Brozefsky <cr...@red-bean.com> writes:

> "Noah Roberts (jik-)" <j...@foxinternet.net> writes:
>
> > > * As a special exception, the Free Software Foundation gives permission
> > > * for additional uses of the text contained in its release of GUILE.
> > > *
> > > * The exception is that, if you link the GUILE library with other files
> > > * to produce an executable, this does not by itself cause the
> > > * resulting executable to be covered by the GNU General Public License.
> > > * Your use of that executable is in no way restricted on account of
> > > * linking the GUILE library code into it.
> >
> > So what the hell does this mean exactly? What can be proprietery and
> > what cannot?
>
> You use the code, you have to GPL, you link, you can use whatever
> license you want.
>
> So, I grab libguile source and hack it up. If I distribute, gotta GPL
> it, without or without the exception. If I write a web server and
> want to link against libguile to support server side scripting, I can
> do that and release the webserver under whatever license I please.

What about the script?

Noah Roberts (jik-)

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
bern...@alpha1.csd.uwm.edu (Bernhard Reiter) writes:

> On 19 Aug 1999 09:22:51 +0100, Richard Kettlewell <r...@sfere.greenend.org.uk> wrote:
> >bern...@alpha1.csd.uwm.edu (Bernhard Reiter) writes:
> >
> >> People don't know Objective-C enough.
> >> Easier to learn and NeXTStep was written in it.
> >
> >Where can one find documentation for the language?
>
> http://www.santafe.edu/projects/swarm/ObjC/objective-c.html
>
> I was told that Brad Cox's book about it contains too much advertisment,
> because he wanted to sell his Stepstone Compiler. The NeXT documentation
> was pretty okay from what I recall.
> Bernhard

I have some objc crap at my mebsite
http://web3.foxinternet.net/jik-

Leslie Mikesell

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
>d...@hks.net (Doug DeJulio) wrote:
>>[...] I'd consider using GUILE for this, but:
>>[...]
>>* It appears to be under full GPL and owned by a group that doesn't
>> take Linus's stance on dynamic-loaded modules, so it's not clear to
>> me that I can link in Oracle support for example. [...]
>
>The Guile library is under the GPL, but with a special exception that
>allows linking to proprietary code. The following is from the Guile
>source code:
>
> * As a special exception, the Free Software Foundation gives permission
> * for additional uses of the text contained in its release of GUILE.
> *
> * The exception is that, if you link the GUILE library with other files
> * to produce an executable, this does not by itself cause the
> * resulting executable to be covered by the GNU General Public License.
> * Your use of that executable is in no way restricted on account of
> * linking the GUILE library code into it.
>
>It seems like it would have been clearer to just use the LGPL (although
>this is slightly different), or at least to better-publicize this
>exception, but it's there if you look.

It would be even better if all GPL'd libraries just included this
exception in the first place. Obviously the people who put it
there wanted to promote the widest possible use of their free code
as opposed to whatever it is the rest of the FSF is thinking. Besides,
in the case of dynamic linking or 'user-does-the-link' it is not
at all clear there there is any possible copyright claim on the
distributed components that don't contain the covered work anyway.

Les Mikesell
l...@mcs.com

Craig Brozefsky

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to

Same as it ever was dewd. No claim on the script. Perl scripts do
not need to be artistic or GPL, nor do TCL scripts have to be licensed
the same as TCL.

Noah Roberts (jik-)

unread,
Aug 20, 1999, 3:00:00 AM8/20/99
to
Craig Brozefsky <cr...@red-bean.com> writes:

> "Noah Roberts (jik-)" <j...@foxinternet.net> writes:
>
> > > So, I grab libguile source and hack it up. If I distribute, gotta GPL
> > > it, without or without the exception. If I write a web server and
> > > want to link against libguile to support server side scripting, I can
> > > do that and release the webserver under whatever license I please.
> >
> > What about the script?
>
> Same as it ever was dewd. No claim on the script. Perl scripts do
> not need to be artistic or GPL, nor do TCL scripts have to be licensed
> the same as TCL.

The Artistic licence specifies that the script is not in any way
considered a derivative and can be licenced any way the author sees
fit. Not sure what the TCL licence is, but I am pretty sure it is not
GPL.

The GPL does make claims to derivative works, I am not sure what the
legal implications are in a script for a program which depends on a
GPLed library but it seems to me that this would be covered by the
GPL...and if the licence only leaves an exception for the linked
program and not the script then who can know besides someone well
versed in copywrite laws. I know Title 17, but I don't know well
enough to tell what a judge would say in these matters.

Christopher Browne

unread,
Aug 21, 1999, 3:00:00 AM8/21/99
to

Russ Allbery

unread,
Aug 21, 1999, 3:00:00 AM8/21/99
to
In gnu.misc.discuss, Michael Coughlin <m-cou...@ne.mediaone.net> writes:

> Using the term "literary masterpiece" in connection with computer
> languages and system programming is streaching the meaning of the term a
> lot.

Okay, I'll grant that. :) But still, using that term implies something
of artistic merit, whereas I would argue that the primary merit of Unix
and C, to their users and their creators, was entirely practical. The
idea of a literary masterpiece is from a different tradition of work than
the practical efforts that went into a portable operating system and a
portable programming language to write it in.

C isn't a language I'd ever describe as pretty, even by the standards of
the 1970s. Practical, efficient, and useful, yes.

> Before Linus all GNU code had to be compiled and run on propriatory
> systems. After Linus, GNU code could be run on a system using all free
> software.

You may want to check the timing of *BSD systems in here. I know that
there was a lawsuit threat that cast a shadow over those OSes for a while,
but I was under the impression that they were still available to some
degree.

--
Russ Allbery (r...@stanford.edu) <URL:http://www.eyrie.org/~eagle/>

Mark Galassi

unread,
Aug 21, 1999, 3:00:00 AM8/21/99
to

>> 2) Why did RMS decide to develop a Unix-type system if he came
>> from LISP?

Rod> LISP is a computer language. UNIX is an operating system.
Rod> The two aren't mutually exclusive, and in fact, as a
Rod> language, LISP *MUST* run on an operating system. UNIX is as
Rod> good an OS as any for that task. (Actually, I don't know
Rod> enough about LISP to know what its optimal host OS would be,
Rod> but AFAIK there's nothing extraordinarily BAD about UNIX from
Rod> a LISP point of view.)

Actually the question is on the money, even though LISP is a language
and UNIX is an OS.

LISP teaches you something about intelligent exception handling -- an
area where language and OS design come closer.

Jamie Zawinski keeps a link to an interesting essay on this subject by
Richard Gabriel; you can find it at
http://www.jwz.org/worse-is-better.html

Isaac

unread,
Aug 22, 1999, 3:00:00 AM8/22/99
to
On 20 Aug 1999 11:02:29 -0500, Leslie Mikesell <l...@Venus.mcs.net> wrote:
>
>It would be even better if all GPL'd libraries just included this
>exception in the first place. Obviously the people who put it
>there wanted to promote the widest possible use of their free code
>as opposed to whatever it is the rest of the FSF is thinking. Besides,

I suspect that what they really want is the widest possible use
for guile. The exception encourages people to embed guile into
propietary apps as the scripting language.


>in the case of dynamic linking or 'user-does-the-link' it is not
>at all clear there there is any possible copyright claim on the
>distributed components that don't contain the covered work anyway.

I agree, but the FSF of course does not (and really cannot). Hence they
would say that the exception has a purpose.

Isaac

Kai Henningsen

unread,
Aug 29, 1999, 3:00:00 AM8/29/99
to
r...@sfere.greenend.org.uk (Richard Kettlewell) wrote on 19.08.99 in <wwvu2pw...@sfere.greenend.org.uk>:

> bern...@alpha1.csd.uwm.edu (Bernhard Reiter) writes:
>
> > People don't know Objective-C enough.
> > Easier to learn and NeXTStep was written in it.
>
> Where can one find documentation for the language?

http://developer.apple.com/techpubs/macosx/

Kai
--
http://www.westfalen.de/private/khms/
"... by God I *KNOW* what this network is for, and you can't have it."
- Russ Allbery (r...@stanford.edu)

0 new messages