





Unix's Founding Fathers 308
Dave B writes "There's a nice article on Economist.com about Dennis Ritchie, the genesis of Unix, and the C programming language."
A language that doesn't have everything is actually easier to program in than some that do. -- Dennis M. Ritchie
Stangely (Score:5, Insightful)
The funny thing is (Score:5, Interesting)
Re:The funny thing is (Score:5, Insightful)
Re:The funny thing is (Score:4, Informative)
Re:The funny thing is (Score:3, Informative)
Re:Stangely (Score:5, Insightful)
Simple - it would be dead. Just like the WWW if it were patented. Or Linux (well, not patented but placed under proprietary license).
Re:Stangely (Score:3, Interesting)
Re:Stangely (Score:5, Informative)
Re:Stangely (Score:5, Informative)
Re:Stangely (Score:5, Insightful)
There's a difference between proprietary software and patented software. BSD could easily reimplement all proprietary parts of UNIX and won the lawsuit that followed. But if these parts had been patented ("e.g. a method to write an OS using a programming language"), that wouldn't be possible. I think you're either uninformed or trolling, or both.
There was an implementation of UNIX and it was proprietary. But there were other implementations of UNIX that were free. What matters isn't some implementation, but ideas. And the idea of UNIX hasn't been developed only by AT&T, but also by the UNIX community - in a open way, since the beginning. Patent that and UNIX is dead.
Re:Stangely (Score:3, Informative)
AT&T was forced to license its software to anyone that wanted it. Patented or not, they had to license it. By the time they were no longer required to license their software, most every patent for the main gist of UNIX would have lapsed.
Re:Stangely (Score:2)
If that was your point you should have said it more clearly. A patent that is licenced to everyone for free is as good as no patent.
But I'm not sure I agree with your assessment of the situation. AT&T wasn't allowed to make money with computer software, but I don't think that means that they had to free every patent they couldn't sell. They could have patented it and simply refuse to license
Re:Stangely (Score:5, Informative)
University of California in Berkeley contributed many tools to UNIX and even started to recode UNIX from scratch, following the original UNIX just within the specification limits in 1977, but based everything on its own code.
When in 1984 AT&T was freed from the anti trust provisions given in 1958, AT&T tried to get the control back over UNIX, which lead to the founding of the GNU organisation and to a legal battle with UCB. The legal battle finally ended with a draw, so the BSD line of UNIX was cleared from copyright infringment accusions, and the BSD tools are still with the AT&T-based UNIX versions.
So UNIX was in the beginning something quite indifferent between proprietary and free software, basicly a proprietary system which was handled like a free and open source one. This was the fallacy of the system: After 12 years of free work on UNIX suddenly AT&T changed the licensing and the way the licenses were enforced. The GNU Project tied to make sure that no one contributing to GNU could pull an AT&T again by requiring all code contributed to GNU should be licensed via GPL.
Re:Stangely (Score:3, Interesting)
patents are meant to keep other people from writing the same thing..
so.. if the command line for example was patented..
.
Re:Stangely (Score:2)
Re:Stangely (Score:2)
Some old SF novel had a quote that applies to this: "When it is railroading time you build railroads". The 70's were the time of the command line - computing power would not allow any other sort of ui.
So no, they wouldn't have come up with something different.
Oh, yes they would.... (Score:3, Interesting)
Software patents would have killed progress than, as they are doing now.
Don't encourage the criminal Monopoly.... (Score:2)
After all, most of the software patents that seem to be granted are for things where there has been lots of prior art, this would be no exception if it was submitted to the overworked USPTO.
Unix WAS patented, which is WHY it spread (Score:5, Informative)
Back in the 70s, Bell Labs was required by an antitrust consent decree of January 1956 to reveal what patents it had applied for, supply information about them to competitors, and license them in anticipation of issuance to anyone for nominal fees. Any source code covered by such a Bell Labs patent also had to be licensed for a nominal fee. So about every computer science department on the planet was able to obtain the Unix source.
The patent in question was for the setuid bit, U.S. No. 4,135,240 [uspto.gov]. If you look at it, you will see that it is apparently a hardware patent! This is the kicker paragraph:
Technically, even though that said it "will be understood," and was understood by everyone as a software patent, it wasn't until the 1981 Supreme case of Diamond v. Diehr that it became enforcable as such. Perhaps that is why the patent took six years to issue back in the 70s.So, through the 1970s, Unix spread because it was covered by an unenforcable software patent! Doug McIlroy said, "AT&T distributed Unix with the understanding that a license fee would be collected if and when the setuid patent issued. When the event finally occurred, the logistical problems of retroactively collecting small fees from hundreds of licensees did not seem worth the effort, so the patent was placed in the public domain."
Re:Stangely (Score:5, Insightful)
Re:Stangely (Score:2, Informative)
Re:Stangely (Score:4, Interesting)
Computing would not be what it is today. Thank god they did not patent any of it.
I like to think that the GNU project (and FreeDOS for that matter) would still have found a way to make free operating systems, even if they had to not base them at all whatsoever on any existing ones.
Re:Stangely (Score:4, Informative)
But it was, to the limit of patentability that was available at the time. This was before Diamond v. Diehr [bitlaw.com]and the US patent office deemed software as "pure mathamatics" and unpatentable. The patent that was developed from Unix, the setuid patent [uspto.gov] was written in terms of the gates in memory that got flipped and read to check access control.
If Bell Labs hadn't assigned the patent to the public domain (supposedly over the cost of collecting license fees [mit.edu]) Then development on Unix clones would have started much later.
Re: Patents? Oh-the-irony (Score:2, Insightful)
These patent laywers can't even recognize the birth of a major technical breakthru even if it's placed in front of them. *grin*
Why didn't it occur to them to ask: -Is there something here, that we ought to patent? How about those pipe-thingies? Or the notion that everything is just a file? Or ''the use of an intermediate language to port a computer opera
On the fifth day... (Score:4, Funny)
Re:On the fifth day... (Score:3, Funny)
I think you misspelled "perl" there...
Re:On the fifth day... (Score:3, Funny)
Re:On the fifth day... (Score:3, Funny)
Re:On the fifth day... (Score:4, Funny)
In fact, if you study the history more carefully, you'll find that God only licensed some thought patterns and algorithms from SCO Group. God still has to abide by the licensing conditions stated therein.
"In the beginning there was the Word, and the Word was copyright (R) of SCO Group"
Re:On the fifth day... (Score:4, Interesting)
Personally I think C is a lousy language, but:
It is small.
It is compilable.
It is useable.
It is possible to make forward progress with minimal resources.
Something much better that requires resources you do not have is just pie in the sky.
Re:On the fifth day... (Score:5, Funny)
Rus
Re:On the fifth day... (Score:5, Informative)
I have. It's my job. For those of you who have not encountered COBOL, its reputation [catb.org] is warranted. It is actually designed for clueless suits and it will damage you [catb.org], both mentally and physically. This is true.
I do not wear a suit. I am not totally clueless. I am just doing this job to get some cash together to go to university next year.
The thing is, this place (like most COBOL houses) has a set of standards which may or may not match best practice (when they don't it makes things harder - you may be required to use GO TO!) Any opportunity for hackishness or clever code, small as this opportunity is anyway, is precluded by the necessity to adhere to standards so that the next drone that takes your place will understand your code. No amount of commenting inline on how your nice, elegant piece of code works will sway your manager on this topic. This leads to verbose, inelegant code and an acute difficulty in getting things done in a simple and timely manner.
This is why I love C, C++, Perl, bash, JavaScript, BASIC, HTML, Brainf*ck - hell, I even prefer VB - anything but fscking COBOL!
Re:On the fifth day... (Score:2)
Cobol fingers? But we are in XXI centure and do not need to type all this clueless staff in - we have text editor [vim.org] or two [xemacs.org] which do completion for us.
Re:On the fifth day... (Score:2)
A fine point, but I have to write this code on a clucky OS/390 editor. I would use an editor on this Windows host (another bane of my job) but the transfer facilities for transferring files from the host to the mainframe simply do not work.
Re:On the fifth day... (Score:2)
Forced to learn it... Hmmm... Sums it up, really
Thing is, verbosity does not denote efficiency or ease of use. Yes, it's very easy to read but it's a bloody trial to write and debug.
Re:On the fifth day... (Score:2)
Well, like is a little strong. I certainly prefer it to COBOL
Re:On the fifth day... (Score:2, Insightful)
Re:On the fifth day... (Score:4, Interesting)
Blasphemy! (Feel free to choose which half of the quote I'm talking about. :-)
At the time of its creation, C was a real work of brilliance. Without the shoulders of C on which to stand, computing wouldn't be nearly as mature as it is today.
Kernighan and Ritchie's little white book on C is a masterpiece. All language reference manuals should strive to its level of clear writing and careful presentation. Despite not having coded a line of C in over 10 years, I still keep K&R at arms length. (If nothing else, it's helpful for quickly verifying my spelling of Kernighan when writing Slashdot posts.) It was enjoyable to read a column about the old masters.
Peace,
Modules (Score:5, Interesting)
R
Re:Modules (Score:5, Insightful)
Re:Modules (Score:5, Interesting)
Another innovation was that each program did one thing only, and the wiring between programs was not hardcoded. One could write a million programs, each one doing a different task, but it was the capability of wiring them at will that gave Unix such flexibility.
The analogous of today would be if we did not program applications, we only programmed classes and then a 3rd party came and wired these classes together. Unfortunately, modern application development has chosen not to follow this way: applications consist of classes that are hardwired into a fixed set that makes change and rapid development difficult.
Finally, another good property of the Unix way is that there was no datatypes. Everything was text processing. We have come a full circle now that XML dominates the industry...it took us 30 years only to realize that text is the ultimate carrier of information.
Re:Modules (Score:3, Insightful)
Not just that - if you connected programs together with pipes they could run as parallel tasks. It was an easy way for even novice users to make full use of powerful machines.
This is why all users should learn the Unix command line.
Re:Modules (Score:4, Informative)
Object-oriented programming in Simula predates Unix by nearly a decade.
Re:Modules (Score:3, Informative)
Re:Modules (Score:2)
It is a rule completely forgotten in newer OSes -
If you don't like to read output of this program, let other program do it
quick history leason (Score:3, Interesting)
At least all Linux kernal mods have to be approved by Linus. It's more control than AT&T ever exerted when it mattered.
Re:quick history leason (Score:2)
They only have to be approved by Linus to make it into the "Official" tree. You, I or anyone else could make all of the patches we want and fork the kernel.
One huge difference between Linux and *NIX is that there is such a fanatical following that if someone does decide to fork the kernel there had better be a damned good reason or else the fork will have no users.
LK
Re:quick history leason (Score:2)
Re:quick history leason (Score:2)
And yeah, it's just the kernel. I thought that's what this thread was talking about: a linux fork.
Re:quick history leason (Score:2)
--Pat / zippy@cs.brandeis.edu
Re:quick history leason (Score:3, Insightful)
It wasn't about whether it was copyrighted or even patented. They were under order, just like
Re:quick history leason (Score:2)
Re:quick history leason (Score:3, Interesting)
Re:quick history leason (Score:2)
How things have changed.... (Score:4, Interesting)
Re:How things have changed.... (Score:2, Redundant)
Rus
Pass that bong, dude (Score:4, Insightful)
MS entered server market precisely because of this situation. It was a low cost, no hassle alternative to UNIX that was good enough for small and medium businesses.
Re:How things have changed.... (Score:2)
*snort* Unix development was funded as the basis for a typesetting system for the patent department of AT&T! Still, they didn't file a load of patents on their software - the setuid bit is the only patented Unix feature I'm aware of.
UNIX was meant as a hoax (Score:5, Funny)
Creators admit UNIX, C hoax [gnu.org]
I sure am glad times have changed (Score:2, Interesting)
Re:I sure am glad times have changed (Score:3, Informative)
Dear Dennis (Score:5, Funny)
Re:Dear Dennis (Score:3, Funny)
Re:Dear Dennis (Score:2)
Re:Dear Dennis (Score:3, Funny)
Re:Dear Dennis (Score:2)
UNIX forever? (Score:5, Interesting)
But I guess I'm curious as to why nearly all OS focus is on UNIX or a derivative? From Linus's knock off, to Mac moving to a UNIX core to even the pretty original BeOS. Why are we reinventing the wheel and not coming up with something completely new?
This is not a troll, I am just looking for the various opinions. Is UNIX the basis for everything non-Microsoft because it's the pinnacle of perfection? Or, like movie plots, did 1 person invent a good thing and everyone else just replicates it with their own flare? It seems to me by now we might have 20/20 hindsight, a whole lot of real world usage and a completely new operating system based on "nothing" might be even better? I've heard of course the "because as soon as you have UNIX, you have access to a zillion packages that port easily", which is great, but frankly, does it matter that I can get X's little "Eyes" app running under my new BobIX OS in under 15 minutes? Maybe writing a completely new "Eyes" under a new OS could be as fast or faster than a UNIX port to a UNIX OS if the new OS was built right? The UNIX filesystem is a mess, that's always bothered me. I dont know, again, not a troll, UNIX rocks - just wondering why there isn't (or if there is?) any group out there writing completely new from the ground up without using UNIX as their model?
Re:UNIX forever? (Score:5, Interesting)
Re:UNIX forever? (Score:2, Insightful)
Mimicing Unix.... (Score:2, Interesting)
With Linux being open source, and the BSD variants available as well, I don't see much of a need to reinvent the wheel. Not to flame Microsoft (though I definately never mind doing that), but they are living pro
Re:UNIX forever? (Score:3, Interesting)
I mean, there have been some really good efforts to de-unixify unix, such as the STEP's (NeXTSTEP, OPENSTEP, Rhapsody, OS X)
how many normal users are going to figure out what
I know a at least two Linux distros that are going to attempt to fix this, GenSTEP [sourceforge.net] and Komodo [komodolinux.org]
from what I have seen and heard from the developers, the release looks to be very promising in terms of leaving behind the old timey UNIX g
Re:UNIX forever? (Score:2)
For one, Unix got a lot of things right, right from the beginning. Second, some of those that it missed became the standard when added later (tcp/ip, threads). Third, writing an OS is a major undertaking, somewhere in the order of thousands of man-years. "Borrowing" ideas from another OS can help reduce this start up time. Lastly, lack of imagination. We teach our young geeks that linux/unix is the end-all and be-all and guess what?
Re:UNIX forever? (Score:3, Insightful)
To help answer your question (and it's a damn good one), I'd make two observations:
Re:UNIX forever? (Score:3, Insightful)
This is not a troll, I am just looking for the various opinions. Is UNIX the basis for everything non-Microsoft because it's the pinnacle of perfection? Or, like movie plots, did 1 person invent a good thing and everyone else just replicates it with their own f
I Just Hope... (Score:2, Insightful)
*listens carefully, hears distant wailing and gnashing of teeth*
Oh dear.
designers (Score:2, Interesting)
Re:designers (Score:3, Interesting)
Re:designers (Score:2)
I didn't RTFA because... (Score:5, Funny)
Re:I didn't RTFA because... (Score:2, Informative)
Please post a link to the original when you copy it to your post.
http://www.neystadt.org/john/humor/The-C-Bible.htm [neystadt.org]
The sad loss of the terminal room (Score:4, Insightful)
Even
Does anyone know.. (Score:3, Interesting)
Re:Does anyone know.. (Score:2)
Re:Does anyone know.. (Score:3, Informative)
Re:Does anyone know.. (Score:2)
Re:Does anyone know.. (Score:2)
Re:Does anyone know.. (Score:2, Interesting)
Bare facts (Score:5, Funny)
Re:Bare facts (Score:3, Funny)
That developers in those days could (like my mother apparently) do a hell of a lot with few resources.
Bragging... (Score:4, Interesting)
Don't believe me? My pics. [nortia.no]
Please don't link to the main site, though, it's very much under construction.
Re:Bragging... (Score:2, Funny)
I'm moving the site to that server, but there's still a lot to smooth out. That server can take anything
Historical errors in article (Score:5, Informative)
Also, the PDP-7 did NOT have a hard drive. Believe me, I have one. The PDP-7 did, however, have an optional model 24 Serial Drum (something like a low-capacity fixed-head hard drive, around 100KB IIRC), whose capacity I cannot recall, a 555 Dual DECTape unit, a directly addressable very-low-density even by its time magnetic tape system, and, of course, the 10 cps paper tape punch/ 300cps High-Speed Optical paper tape reader. But there was never a moving head hard drive. The PDP-8 had one, but I can't for the life of me remember the name.
The PDP-7 was an 18-bit, 15-bit adressed system.
Re:Historical errors in article (Score:2)
The moral of the story is... (Score:5, Insightful)
Say what? (Score:2, Insightful)
C++ is a further improved version of C? Excuse me whilst I double over with laughter. I understand OO very well; but OO as implemented in C++ just makes me want to gag. Objective C is an example of a good way to add OO to C. C++ is not.
I would definitely prefer programming in Java over programming in C++. Actually, come to think of it, I'd prefer programming in Visual Basic (*hack* *cough*) over
Re:Say what? (Score:2)
Better links for Dennis Ritchie (Score:4, Interesting)
It should be noted by detractors of C, that Mr. Ritchie himself does not think that his brainchild is perfect. This discussion contains a "Critique" section where he analyzes the strengths and failures of the language. At the end, he summarizes the language thusly: "C is quirky, flawed, and an enormous success."
Origins (Score:3, Funny)
Laugh, it's funny.
Re:Article text from server (Score:3, Funny)
To think that modern programmers would try to use a language that allowed such a statement was beyond our comprehension!
And this was before Perl...
Cheers,
Ian
Re:The article (Score:2, Informative)