Stallman/Torvalds Story, definition of 'Hacker' 168
/dev/random writes "I found this quaint little story by David Warsh about GNU, Linux, Opensource, and "hacker"s in the Globe today. I suppose it can pay off to read the business section. "
Poor History (Score:1)
confused regarding the events.
> But first there would have to be tools. His first big achievement was EMACS, a compiler
and text editor that rendered possible
more ambitious programming. Other
programs followed.
The lisp thing not withstanding. I think he is
confusing emacs and gcc. gcc should be mentioned.
> decided to try an alternative
approach - a ''monolithic kernel,''
simpler, but far faster and already
Far faster is overstating the case.
>
for a certain task - for memory management, say - that would
be on the most popular chips, he put it out to an extensive list
of correspondent hackers to see how it could be improved. At
first it was written to suit just one architecture: the Intel 386.
> So Torvalds read up on the systems in use, in search of
common denominators between them. Once he had a design
for a certain task - for memory management, say - that would
be on the most popular chips, he put it out to an extensive list
of correspondent hackers to see how it could be improved. At
first it was written to suit just one architecture: the Intel 386.
> Gradually a kernel emerged that could control the most
popular microprocessors - the 68K, the Sparc, the Alpha and
the Power PC. Torvalds then combined his kernel with a good
bit of the GNU programs Stallman and his friends had
written, and presto! The operating system that has become
known as Linux - similar in spirit to AT&T's Unix system
but not based on it - was ready to be distributed and more or
less continually improved.
This is confusing. It makes it seem as if the
kernel were designed piece by piece, and then
assembled. Perhaps he is thinking of new designs being worked
out before replacing older ones.
The kernel was not developed for several
architectures and then released along with
GNU software. It was intimately bound with
GNU software from the beginning (first bash and gcc). Furthermore
complete distributions were available before
any ports were even considered. And the ports
were not gradual, of course, but were projects
that had definite beginnings.
The "linux is obsolete" thread, and
retrospectives by Linus are much more accurate
and informative than this piece. And some of
Linus's statements are rather brief (not this
brief, however)
To be fair, this piece is fairly typical.
John Lapeyre lapeyre@physics.arizona.edu
Linus takes his place among the gods (Score:1)
This tribute in the Boston Globe does not even provide a shadow of how great Linus is, and what he has accomplished. Linus succeeded in a field of battle still littered with the decaying corpses of those who tried and failed. Where other groups were torn appart by bickering and acrimony, Linus sowed strength and peace. He unified an army of like-minded programmers with his cool headed omniscient wisdom. He paved the road where none had gone before, with a success unlikely to be duplicated by any other in our time. He is as a crusader of old, retaking the sacred places from the Saracen horde.
The millenium is upon us, a millenium made less frightening and more hopeful thanks to this mighty self-effacing Scandinavian. This December, in the waning seconds of the old millenium, the genius of Linus Torvalds will be in the hearts and minds of millions upon millions of celebrators welcoming in a new dawn. He has given future generations a taste of what love and cooperation on a grand scale can achieve. He has given us more than the most successful operating system of all time. Linus Torvalds has given us a blueprint for a nobler society itself.
Re:Linus takes his place among the gods (Score:1)
Re:Emacs text editor and compiler? (Score:1)
---
"Hardware hacking" (Score:1)
Well, I'm shure tons of people here have heard the term "hardware hacker" (hey, there even was a column in Popular Electronics I think called like that), so there is certainly a big prcedence for a type of hacking that involves things other than software.
---
Python (Score:1)
So I'd say that my languages of choice would be the last two (or another LISP, maybe Common), depending on the app. Personally, I'd go with Python first, but a nice module system and tons of libraries in Scheme would level the field for me..
---
Re:Emacs text editor and compiler? (Score:1)
---
Re:Monolithic is far faster? (Score:1)
I think the "MINIX clone" part is a bit pretentious, though.
---
Interpreters and compilers (Score:1)
Really, a compiler is a device that associates a source program (in some language) to a semantically equivalent target program in another language (semantically equivalent == the two programs are "mean" the same thing, perform the same actions).
An interpreter is a device that directly associates a program in some language to its "meaning", that is, actually performs the actions that the program "means".
For example, Python is (has?) both a compiler and an interpreter. Source code written in the python language is compiled into semantically equivalent byte-code. Byte-code is interpreted.
---
On the proper extension of the concept 'compiler' (Score:1)
I'm not shure if we can have a definition of what is a compiler that does no include some degree of arbitrariness.
For example, is TeX a compiler? I personally think not; however, it is built very nearly like a compiler is. Lexical analysis, syntactic analysis, semantical analysis, and then synthesis and code generation (I don't know if some analogue to optimization is present; I think not).
The difference is in the "meaning" of the sources processed by TeX; they specify boxes in a page, rather than actions. But technically speaking, it is not different from a compiler.
---
Re:Python (Score:1)
Though I still plan to look harder at Perl; maybe next year.
---
Re:Python (Score:1)
Don't worry, I certainly know C is useful. How much of my system software is written in it? :-)
I think I dind't make the implicit explicit on my original post. There is a certain range of programming tasks that fall under my interests. I am not a programmer or computer scientist, after all; I am a computer-savvy linguistics student. If I'm gonna write a program myself, and it's not performance-critical, Python is an optimal tool. If it is performance critical, well, though I did learn C, I was never too good at it; but I can try finding good C programmers to help out, and I can understand their code, so the end result is not a black art to me :-)
---
OFFTOPIC: French Language Academy (Score:1)
Any frenchmen out there can tell me how much of it is true and how much U.S. urban legend?
From my experience with the Spanish Language Academy, if the French one were to be similar, I would conclude that the stories are mainly legend (or at the very least exagerations, or citing a few kooks or reactionaries as an example). However, I know very little about the French Academy.
---
Re:Python (Score:1)
Yeah, I've used lisp too (scheme), so I've tried it. It's good, but somewhat messier than just using the indentation, IMHO. For example, when you are deleting/replacing code, it's not easiy to see right away which parenthesis goes with which one when you have a string of them. Though I would just delete the whole bunch of them and reenter them, trusting emacs match-paren feature.
---
Re:Crackers call themselves hackers (Score:2)
I think you hit the point far more precisely than you seem to show. The fight over the meaning of the word 'hacker' is not semantical, but political. It is not about what words actually mean (as ascertained by looking at the use of words in communities), but about what words whould mean.
Personally, I support not calling computer criminals 'hackers', no matter how much some people reply (correctly, but not satisfactory, IMHO) that it is usage that determines meaning, and that in general usage 'hacker' by now means 'computer criminal'. So what. There is a certain outlook on life, a certain world view, in general, a certain set of values that hackers attach to the word 'hacker', that I don't want to be silenced by a mass of script kiddies who have taken over the word, with the aid of a sensationalist and ignorant press.
I won't lose sleep over this, anyway.
---
Re:Python (Score:2)
It isn't. When I first heard of such a feature, it was in another language, and I though the exact same thing about it. But when I tried it with Python, it felt just right. Actually, it felt better than having to match braces or forgetting semicolons. What I experienced, simply, was having one less thing to worry about. You just indent your code uniformly (which is good practice, anyway). If you need an expression to span more than one line, you just put it in parenthesis. Python figures out what goes with what.
---
Re:BZzzzzt (Score:1)
Something of an oversimplification, as the original EMACS didn't run in stock TECO -- it required a special version of TECO that had the ability to address the full screen. Also, Guy Steele reportedly had a lot to do with that first version.
What does "true lisp" mean? Mocklisp was definitely a lisp dialect, albeit an even crummier one than elisp.
Gosling's contribution was the first version of Emacs that ran on Unix. It was also, I believe, the first version that was extended by a language other than the one in which it was written (C, Mocklisp.)
The first Emacs that was extensible using Lisp was Multics Emacs, by Bernie Greenberg.
I wrote up an Emacs timeline a while back, that I posted to comp.emacs. You can find it in DejaNews at http://www.deja.com/%3Ddnc/%5BST_rn%3Dps%5D/msgid. xp?MID=%3C36E42FA1.46F8E7B8@mozilla.org% 3E . (I don't know why Slashdot is changing that HREF to point to a different place -- anyway, if the URL above doesn't work (looks like it wrapped too, arrrgh!), search for ``emacs timeline.'')
Re:Python (Score:1)
I just wish Sun hadn't screwed the pooch with Java. It's a good language; if only they hadn't saddled it with so much other baggage (political and technical.)
Re:Time to set the record straight on RMS and on L (Score:2)
On what do you base this insane statement? What is your basis for comparison? C?
Lisp is the single easiest language to learn, teach, or write. And this is in large part the reason for its bad reputation -- since it's easy to write, it's easy for people who have no clue to come up with something that barely works. (Whereas someone of a comparatively low skill level, faced with accomplishing the same task in C, probably won't ever get it to compile -- so you don't get to even see how crummy their C code is.)
Java is interesting in that it slips under the radar of the anti-Lisp bigots by being, essentially, a Lisp dialect with C's abhorrent syntax and bondage-and-discipline approach to data typing grafted on. An interesting hack -- giving up ease-of-use in order to get the rest of what Lisp brings to the party to be more widely accepted.
Re:BZzzzzt (Score:2)
Well it seems to be (mostly) fixed now. There is still a length limit, but it's higher. For the record, that Emacs timeline I mentioned is "> here .
Re:Emacs text editor and compiler? (Score:4)
Then you have some funny definition of the word "compiler" that the rest of the world doesn't share. You seem to think that compilers targetted at virtual machines are not "real" compilers, but that compiler targetted at hardware machines are.
Ok, so I've got gcc, and it's emitting x86 code. Now I execute that code in an x86 emulator. Is gcc suddenly not a "real" compiler?
Now turn it around: I've got a compiler targetted at a virtual machine (the Emacs byte-code engine, the Java VM, whatever.) You say it's not a "real" compiler. Now someone builds a chip that executes that instruction set directly. Now suddenly, magically, it's a "real" compiler again?
Shades of Schrodinger's Cat! You can't know whether it is or isn't a compiler until you open the box?
Re:Emacs text editor and compiler? (Score:1)
Given that elisp only runs inside emacs, that's trivially true. I haven't seen a program using xlib that wasn't `just meant' for extending the X Window System
In the _interesting_ sense, though, how do you claim that a mail reader, a news reader or a web browser are extensions of a text editor?
I won't address your other comments about Lisp, as they're either flamebait or chronically ill-informed. If anyone else is more interested in learning things than pissing on them (someone mentioned 'hackers'?) could do worse than start at the ALU [elwoodcorp.com] web pages
-dan
Re:Emacs text editor and compiler? (Score:1)
Well, almost anything is Turing complete (including, I believe, sendmail rewrite rules), so that's not a terrifically interesting basis to compare things on.
More interesting? Object-orientated, functional, imperative, reflective, introspective, non-deterministic - all these styles of programming and more are supported, and many were pioneered using Lisp as a prototyping vehicle. Incremental compilation, interactive debugging, native code, the first ANSI standard OO language ...
And it's not that slow either. I'll race my CMUCL against your Java any day. In fact, I'll race my CMUCL against your C and expect to see same order of magnitude times for the same problem.
Nor is it especially bloated by today's standards:
26214 dan 5 5 24976 23M 12236 S N 0 0.0 25.0 1:21 lisp
18935 dan 15 5 54096 18M 3944 S N 0 2.3 19.8 14:16 navigator-sm
219 root 8 0 13992 12M 1116 R 0 2.5 13.7 33:34 XF86_SVGA
26107 dan 5 5 10608 9M 2124 S N 0 0.0 10.6 7:47 emacs
One of those top two is a fully-programmable web server (comparable to apache/mod_perl except for the native code aspect) and the other is a glorified help browser with a sockets interface
I'll stop ranting now.
-dan
Re:Python (Score:1)
Actually, it felt better than having to match braces or forgetting semicolons. What I experienced, simply, was having one less thing to worry about. You just indent your code uniformly (which is good practice, anyway).
See, indenting lisp is even easier. You put parens around the blocks and then hit TAB and it indents for you. If it indents in a way you weren't expecting, add and remove brackets until it does.
Wrapping a section of code in a conditional becomes a complete no-brainer
Re:Emacs text editor and compiler? Trivialization (Score:1)
Time to set the record straight on RMS and on LISP (Score:3)
There must be only a few people on /. who appreciate true hackers. To take an example from the Levy classic Hackers (p. 426):
For the clewbies out there, Greenblatt is also one of the greatest hackers of all time.
One of the other great hackers, Gosper, noted at that time:
"But wait a minute--Stallman doesn't have anybody to argue with all night over there. He's working alone! It's incredible anyone could do this alone!"
Yes, I am appealing to authority here, and if you cannot appreciate the likes of Greenblatt and Gosper (you can read about them in Part One and the Epilogue of Hackers), then you you certainly cannot appreciate any hacker, including Linus.
Finally, this ignorant bashing of LISP is so typical of clueless folk. To take a seldom-mentioned example of its performance feats, the STALIN scheme (variant of LISP) compiler has outperformed even FORTRAN on some numerical tasks.
Re:Emacs text editor and compiler? (Score:1)
Lisp is every bit the real programming language. It is Turing Complete, and extremely powerful. Much software has been written in it. The flip side is that Lisp code tends not to be very fast at all, nor is it applicable to a lot of problems, thus it is less used than C.
That, however, does not make it "not a real programming language".
Furthermore, let it be pointed out that Lisp predates things like C by a number of years, and along with Fortran (and perhaps Cobol, though after Jan. 1 it won't be on the list) is really the only language from that era that I can think of still in use.
Lisp laid a lot of the foundation for the paradigm of functional programming.
Re:LISP: was(EMACS) (Score:1)
Re:Time to set the record straight on RMS and on L (Score:1)
I would agree, however, that lisp is one of the nicest languages around, sytactically and otherwise. I'm more partial to scheme out of lisp's children languages than elisp, but that's neither here nor there.
As for lisp being easy to learn, teach, and write, as someone who learned to program first in scheme, I'd agree that it works very well for getting people to think the right way about approaching programming. As for people of low skill writing ugly code in lisp, I used to grade that same course the semester before the course went from scheme to java, and the semester after. Let's just say, it got a lot more painful to read that code.
Re:LISP: was(EMACS) (Score:1)
Re:Scientist (Score:2)
And even today the word "scientist" hasn't been totally defined -- some people limit it to people in the big three natural sciences (physics, chemistry, and biology) and others define it more broadly to include basically any field in which the goal is to publish papers in overpriced journals.
Re:hacker definition (Score:2)
wow, you just described Richard Feynman there...
Re:LISP: was(EMACS) (Score:1)
Every time you run it, anyways.
Re:hacker definition (Score:2)
FRB
Finland = Scandanavia (Score:1)
Scandinavia
region of N Europe, consisting of NORWAY and SWEDEN (on the Scandinavian Peninsula), DENMARK, and usually also including FINLAND, ICELAND, and the FAEROE ISLANDS. Its people share similar histories and cultures, and most, except for the Finns and Lapps (see LAPLAND), speak closely related Germanic languages.
I don't know where you learned *your* geography, Coward, but keep your mouth shut if you don't know what you're talking about...
Re:Whoa... (Score:1)
Re:Emacs text editor and compiler? (Score:1)
Unfortunately, that cruel truth made it hard to sell even during the AI-mania of the 80s. I worked for one of the MIT-spinoff Lisp Machine companies (LMI, the other was Symbolics), and while commercial AI was overhyped, I beleived (and still do) that Lisp is a great purpose for building and maintain all kinds of complex systems, "intelligent" or otherwise.
And, by the way, I actually worked a bit with Stallman in those days. First, at MIT, trying to bring some sense to the MIT (non-Symbolics) branch of the system software would do network file access (it was fine for its "native" network system but was awkward for adding the new TCP-based access methods that were coming out), and at LMI, doing TeX and other document-processor hacking (a long story). Some of the latter work might still survive as texinfo -- are the TeX macros still there or is everydone done in elisp now ?
Anyway, the joke at LMI had to do with the way our workstation competitors at Sun, Apollo, and so on would refer to Lisp processor as "special" purposes machines. Poppycock ! Their CPUs and memory systems were only good for modular arithmetic and chasing pointers, while Lisp processors could dispatch on byte fields (useful for dynamic type checking), support generational garbage collection, and in general support all kinds of data structures easily, not to mention numbers that behaved like mathematical entities instead of PDP-11 registers.
So there !
Re:Emacs text editor and compiler? (Score:1)
Well, you can compile e-lisp code (EMACS's dialect of lisp) into a sort-of e-lisp bytecode. Check your site-lisp directory; it probably has a mixture of .el and .elc files - the .elc ones are precompiled.
Scientist (Score:1)
Did it really take them that long to #define the word "scientist"?
Perhaps we still have a realistic chance to get "hacker" into the mainstream, in thirty years to come...
--
"The use of COBOL cripples the mind.
Its teaching, therefore, should be
Re:Emacs text editor and compiler? (Score:1)
JG
Portability? (Score:1)
Yes, we know we overcame that a long time ago, but it wasn't in the original design.
CENTI-billionaire? (Score:1)
Most amusing.
--
RMS's mug (Score:1)
Re:Unmerited Worship (Score:1)
Re:Unmerited Worship (Score:1)
The GPL isn't viral if it's used inhouse.
Re:Unmerited Worship (Score:1)
Re:Emacs text editor and compiler? (Score:1)
Re:You're a year early (Score:1)
Re:You're a year early (Score:1)
Re:Unmerited Worship (Score:1)
Re:Emacs text editor and compiler? (Score:1)
I wouldn't count the lisp psuedocompiler as a "real" compiler, either. That would be like saying that MS Excel or Word are "compilers." (Think VBA)
Re:Emacs text editor and compiler? (Score:1)
Re:hacker definition (Score:1)
Even my dad, who is totally clueless about technology, pronounced the modification another friend of mine and I made to my car a "hack." (We diked-out a sensor that controlled the fan and replaced it with a toggle switch as the sensor was like $300 and the car wasn't really worth it...)
Re:Monolithic is far faster? (Score:1)
The article is right in its main advantage, though and that is monolithic kernels are easier to implement than microkernel systems.
Re:Unmerited Worship (Score:1)
swear AT them as well
Re:Time to set the record straight on RMS and on L (Score:1)
Since this is Slashdot, I would assume that he's talking about Perl, which of course is famous for its straightforward syntax and elegant readability.
Emacs text editor and compiler? (Score:1)
Re:Whoa... (Score:1)
Re:Emacs text editor and compiler? (Score:1)
I haven't seen a program in elisp that wasn't just meant for extending emacs.
Lisp basicly sucks, elist doubly so, except for customizing emacs.
(Don't get me wrong I love emacs, but I don't think elisp is a
Re:Emacs text editor and compiler? (Score:1)
Re:Emacs text editor and compiler? (Score:1)
>meant' for extending the X Window System
True... But If you recall, this discussion started with the article claiming that emacs contained a compiler with which a lot of software was written.....
>In the _interesting_ sense, though, how do you claim that a mail reader, a news reader or a web browser are
>extensions of a text editor?
I can just imagine it now... What OS do you run? Me? Emacs...
>I won't address your other comments about Lisp, as they're either flamebait or chronically ill-informed. If
>anyone else is more interested in learning things than pissing on them (someone mentioned 'hackers'?) could do
>worse than start at the ALU web pages
I'll admit, I have very little experience with lisp, and definately not enough to properly compare it to other programming languages. This was not meant as a serious criticism of lisp. Note the lack of arguments and the smiley.
Nonetheless, I'd like to apologize to all the lisp fans out there who took it so seriously....
Emacs (Score:1)
Re:hacker definition (Score:1)
Technically speaking, that's a Kludge, not a Hack. A kludge is a fix that does the job effectively, but not necessarily elegantly. The terms are often (incorrectly) used interchangeably. Had it been a true hack, the manufacturer would have given you both engineering jobs upon your return. : )
EMACS (Score:1)
"I have no respect for a man who can only spell a word one way." - Mark Twain
Re:Linus takes his place among the gods (Score:1)
Re:HACKER (Score:1)
Re:Python (Score:1)
Lots of languages, lots of uses...don't knock it until you've learned it, and learned to hate it.
LISP: was(EMACS) (Score:1)
--
Weasel
--
Re:Monolithic is far faster? (Score:1)
In that case, monolithic won't really cut it...
Wrong in the details, but generally right. (Score:1)
-russ
Re:Right in the details (Score:1)
If the author meant that emacs has an elisp "compiler", then I can claim that Freemacs has a MINT "compiler".
-russ
p.s. it doesn't, and it doesn't (you get to figure out which it means what).
Re:CENTI-billionaire? (Score:1)
Re:BZzzzzt (Score:1)
(I've never seen
Re:hacker definition (Score:1)
Personally I've always thought of the nouns 'hack' and 'hacker' not necessarily being related.. a 'hack' is, to me anyway, anything done to take care a problem that isnt the accepted solution. In programming this usually tends to be a kludge that works for now and will eventually need to be fixed.. but i've also seen cases that would defenitly qualify as a hack that were Better than the accepted solution. In other things it varies as well.. as another poster mentioned, tying the muffler back onto your car is a hack in the 'kuldge that works for now' sense.. but then were you to throw together something that replaced the muffler and did as good or better a job, i'd probably call it a righteous hack.
The word 'hacker' however, i view as not being applicable to any specific type of person. One may be a programmer.. most likely they'll know a programming language or two no matter what, but it may not necessarily be their main occupation. A 'hacker' to me is anybody with a thirst for knowedge above and beyond that which is considered normal. Computers tend to draw them because there's so Much knoweldge to be had.. that's why I said they would likely know a language, because they couldnt resist knowing how the thing works. Anyone who calls themself a hacker shouldnt Just know computers though.. i've never found a person that's generally known as a hacker (in the good sense) who didnt know a reasonable amount of philosophy, theology, literature, and a smattering of all the sciences. A hack isnt necessarily clever or simple.. but a hacker is defenitly clever, quick-thinking, and has a desperate thirst for knowledge.
So my idea of the conclusive defenition?
Hacker: ha-kur n. One who desires to know the inner workings of everything he surveys and has the ability to apply that knowledge.
Dreamweaver
Re:hacker definition (Score:1)
Hey, cmdr taco & friends, can we start a ZX81 and ZX spectrum hardware hackz thread
HaCkEr (Score:1)
I agree. I couldn't sit here and say I'm a hacker, that's for sure, but I'd like to think that hacking extends far beyond the world of programming. There are billions of things in this world that can be hacked, taken over, changed, and dominate, only for the same thing to be done the next moment.
Re:Emacs text editor and compiler? (Score:2)
Name one of the aforesaid operating systems please (Score:1)
I know not of one OS that fits your discription for you to have been able to draw this conclusion from the usage of.
If you are just randomly pulling this conclusion out of your @ then please don't be bothering us with your baseless opinions
Whoa... (Score:1)
Canar
Re:HACKER (Score:1)
My goodness... (Score:1)
If this is actually true, then even I could qualify for the title to a small extent...I think a lot of us could.
hacker definition (Score:3)
So basically, are we changing the definition of "hacker" again? Or was it always meant to just relate to programming? One thing is for sure, the denizens of alt.hackers certainly agreed that any negative connotation it had was the fault of the press, and wasn't what they were about.
As for myself, I rather like the inclusive definition of doing something clever.
You're a year early (Score:1)
Our wretched species is so made that those who walk on the well-trodden path always throw stones at those who are showing a new road.
common use (Score:1)
As a aside, one of the silliest things about the French is how they have committee to stop words like CD from infecting the purity of the language. How far away from that is this overly pendatic assertion that 'hacker' must never mean 'cracker'?
Re:hacker definition (Score:1)
I go back to the 70s, the AI hype and all that.
My use of the term 'hacker' during the 80s was someone who codes fast to get something done quickly without necessarily doing a good job of design or thinking through all consequences of the hack.
Real programmers don't hack -- they design, then they implement. :-)
However, that being said, hacking is fun and sometimes necessary. But most programs have far more hacks in them than they should.
Oh, by the way, the recent pejorative use of the term 'hacker' to describe people who hack into systems via devious means is a perfectly normal evoluation of lanaguage. Most words in English have several meanings, some of which end up having little to do with one another. The is no single meaning for the verb 'to hack' or the noun 'hacker', rather there are two or three current usages.
Cheers,
Dennis
http://oceanpark.com [oceanpark.com]
Re:You're a year early (Score:1)
Re:Linus takes his place among the gods (Score:1)
Re:LISP: was(EMACS) (Score:1)
If it compiles the source at runtime (Python also does this), then it's a compiler. An interpreter 'interprets' every line of code while the program is running. Run-time compilation gives you the flexibility of code you can change 'on the fly' during debugging, but the speed of a compiled language (granted, not optimized the way a modern C compiler is.)
Hacker (Score:1)