CompSci is SO bizarre! When I was knocking around CS (stork with twins 
ended my grad school hopes ;-)  ), there were so many conflicting facts 
and opinions about computers. This was at Wichita State. We had a Lisp 
genius who did automated math theorem proofs. I asked him in an email if 
I should maybe tackle Lisp. His email reply said "No, learn C". Three 
words. Short, concise, to the point.

And there was the UW(ash) professor who was a firm believer that any 
language that let you do the stuff C/Assembler/C++ etc. did should be 
left in the past. The argument goes that speed is good enough these 
days, CPU cycles are practically free, so it's time to move forward and 
stop the blood-and-guts pointer pennance and go-it-alone memory 
management games.

Then I find out that practically nothing MS has ever sold actually used 
Visual C++ (something they pushed relentlessly as THE Big Project 
environment). MS uses blood-and-guts C with the usual mountain of MS 
secret tricks. Then they push all these IDEs that do basically one 
thing: data management on Windows. Lord help you if you get off their 
straight line expressway through the jungle.

Then there's Big Eric Raymond with his "The Art of Unix Programming." He 
says C's great and scripting languages too. He's very happy with the 
byzantine, wooden-handled level of Unix--then, now, and in the future. 
Then there's Knuth who had his own home-brewed assembler (the latest 
runs on a virtual MIPS environment). For him even C is too low-brow. And 
then there's Lisp-Meister Paul Graham. I read about a functional 
language conference he attended where some Perl people showed up. A 
panel discussion left Perl a bloody pulp. Graham is famous for Yahoo 
Stores, which has lots of Lisp in it. Orbitz also has Lisp.

In general, if programmers get good at something, they have the 
subjective, self-serving if not paranoid tendency to see the computer 
world revolving around their skill set, their language(s). 
[your-language-here] can do everything!

Oddly enough, I (as well as Bill Joy, Ray Kurzweil and others) grok what 
the Unabomber Ted K. was saying about computers and technology. In a 
nutshell, if a system is running, and you depend on it for something 
critical, and you don't know how to do without it (can't turn it off and 
walk away), and you no longer know how it works), you are it's slave. 
Forget The Matrix or AI dystopias.

It's a real Alice in Wonderland out there. So many angles, so little 
time. Makes me want to just hack Emacs for the rest of my life.

Olwe

Leif Johnson wrote:

>I never heard of Scheme!  It's the first language that I've heard of
>that was designed to make recursion practical.  Now I'm curious to see
>if any other language has taken this approach.
>
>On Mon, 13 Sep 2004 18:34:21 -0500, rpgoldman at real-time.com
><rpgoldman at real-time.com> wrote:
>  
>
>>>>>>>"Leif" == Leif Johnson <leif.t.johnson at gmail.com> writes:
>>>>>>>              
>>>>>>>
>>    >>
>>    >> I remember being forbidden to use any looping constructs in my
>>    >> first semester of computer science.  It was a very helpful
>>    >> discipline.
>>    >>
>>
>>    Leif> Then tell them that they are never ever actually allowed to use
>>    Leif> recursion unless they can prove that the problem can be solved no
>>    Leif> other way.  (just contributing to the flame-war.)
>>
>>I suppose if you have a compiler that's so dumb it can't rewrite
>>tail-recursion to iteration, that might be true.  (JCTtF-w.)
>>
>>Seriously, the Scheme standard demands that this optimization be
>>performed, so why would you ever avoid tail recursion in Scheme?  I
>>dunno about other languages.  I think you pretty much want to avoid it
>>in C!
>>
>>    
>>


_______________________________________________
TCLUG Mailing List - Minneapolis/St. Paul, Minnesota
Help beta test TCLUG's potential new home: http://plone.mn-linux.org
Got pictures for TCLUG? Beta test http://plone.mn-linux.org/gallery
tclug-list at mn-linux.org
https://mailman.real-time.com/mailman/listinfo/tclug-list