Re: Ken Thompson interview in IEEE Computer magazine (fwd)

Olaf Titz (olaf@bigred.inka.de)
Wed, 05 May 1999 11:53:02 +0200


> But in terms of features, Unix 7th Edition would simply suck compared
> to Linux. And parts of the Linux kernel (I don't claim to have read all
> of it) achieve a similar level of clarity. But hundreds of developers

Don't know Unix V7 but I have read more or less the complete source of
the Linux 0.11 and Minix 1.0 kernels, and I think these are the right
objects for comparison in terms of features. And both of them are
beautiful too. I have the impression that in today's Linux, generally
the oldest code, from the "small" days, is the most beautiful.[1]

Perhaps it is all mostly the difference between the 10kLOC order of
magnitude as in Minix or Linux 0.11, and the 1MLOC of Linux 2.2. (How
big is Solaris? :-) But to take an example from another world
(applications), Mozilla isn't that bigger than today's Linux and it is
really ugly and completely incomprehensible. Or OTOH you look at INN
(90kLOC) and immediately understand what each line does.

> be conscious of our weaknesses. There is a genuine danger that the
> Linux kernel will become harder and harder to develop because of the
> many different (and not necessarily compatible) ideas behind it. It
> isn't that folks like Linus will no longer be able to understand and
> work with the kernel confidently, but it will be harder for the rest
> of us to "get it right." Yet "making the kernel easier for new folks
> to understand" isn't exactly a priority. This could be our Achilles
> Heel...

When the parts of a project are clearly and cleanly separated, so that
one developer can concentrate on one part, it gets somewhat easier.
In an ideal world each one would be responsible for his own 10kLOC and
make them as beautiful as he would with a stand-alone project of that
size. (I know well the real world is trickier...)

Olaf

[1] except the floppy driver, but that didn't exist in 0.11 ;-) and
except the console driver, which used to be the single biggest and
most convoluted source file, and also big PITA to compile on a 4MB
box...

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/