home bbs files messages ]

Forums before death by AOL, social media and spammers... "We can't have nice things"

   comp.ai      Awaiting the gospel from Sarah Connor      1,954 messages   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]

   Message 53 of 1,954   
   Anthony Bucci to All   
   Re: Newbie Questions: Starting a Career    
   06 Sep 03 06:53:46   
   
   From: abucci@cs.brandeis.edu   
      
   > But the real point was that you were using "old" as a synonym for "outdated",   
   > with the implication that newer languages were "better".  After all, surely   
   > they were designed knowing the insights of the past, and improving on them?   
      
   You read that into what I said.  If you look back, I never said nor   
   implied that.   
      
   And of course modern languages weren't designed on top of insights of the   
   past.  Like any tool, they were designed for a purpose.  I'm beginning to   
   suspect you don't view programming languages as tools with particular   
   strengths and weaknesses.   
      
   > It is only very recently that some of the newest languages have rediscovered   
   > (inferior versions of) "old" Lisp concepts.   
      
   I can agree with that to an extent.  The lambda operator in python is   
   annoying.  The "closures" in perl are awkward and bizarre.  I view that as   
   the language losing its identity.  Those languages *shouldn't* be trying to   
   import LISP concepts and should stick to their strong points instead.   
      
   > You cleverly cut out the part where I clarified exactly what I meant.   
   > Namely, computation problems where the solution isn't necessarily known,   
   > nor even that there is a solution.   
      
   What?!  Maybe you've had your brain bent by LISP for too long to see that,   
   like any tool, it encourages you to think about problems in a certain way.   
   That way is good for some problems and bad for others.  LISP is superb for   
   writing tree searches -- LISP code is about as simple and elegant for such   
   code as any language conceiveably could be.  But, it's terrible for writing   
   numerical or mathematical algorithms, or randomized algorithms like   
   hillclimbers or genetic algorithms or neural networks, or numerical   
   algorithms like numerical integration, vector quantization...  As a random   
   example, it turns out object oriented languages make for very elegant neural   
   network code.  If you have your head stuck in LISP, you might never see   
   that.   
      
   > In fact, as it turns out, it's hard to find a programming problem that Lisp   
   > is not a strong contender for implementation.   
      
   Write a device driver for my video card in LISP that gets >= 30 frames per   
   second video rendering when I play Return to Castle Wolfenstein.   
      
   > But if you're really starting from scratch (as is often the case in AI   
   > problems), Lisp is probably good for you no matter what you're working on.   
      
   I cannot emphasize enough how strongly I disagree with this statement.   
   Perhaps best to let it rest there.   
      
   > The original poster was seeking to be educated.   
      
   Yes, educated about getting into robotics.  People don't use LISP in   
   robotics very much.  Oddly, BASIC turns up because some popular controllers   
   are programmed in BASIC.  And you thought that language would never be   
   useful.   
      
   > What you're missing is that, if you know Lisp, learning Fortran would be   
   easy.   
      
   What?!?!  Seems to me that you're narcotized by this language!  You're a   
   LISP evangelist.  Have you ever *seen* Fortran code?   
      
   > That is not true, if you haven't even been exposed to the basic programming   
   > language concepts.   
      
   Come on.  You get all the basic programming language concepts once you've   
   learned any language well.  Are you trying to suggest there's no way to   
   learn about recursion if you use C?  Some constructs are more elegant in   
   some languages than in others, that's all.   
      
   If you learned Smalltalk and LISP first, you'd find C and BASIC to be real   
   mind-benders, I'd guess.  From my own perspective, the languages I learned   
   in order were BASIC, 8086 assembly, C, Pascal, Mathematica, perl, Java, I   
   lost track, Scheme.  Learning Java was a breeze, as was learning Scheme.   
      
   Now, fess up: which languages did YOU learn first?  If you're like most of   
   us in the US and learned a procedural language like BASIC first, you're in   
   no position to claim what you said.   
      
   It sounds like you're saying that the language itself is what makes the   
   concept learning *possible*.  That doesn't make sense to me.  You can learn   
   any concept in any language.  The only question is, how easy and natural is   
   it to implement the concept in the language.  In reality, the concepts are   
   language-independent.  The languages are just tools instantiating the   
   concepts.   
      
   Anthony   
      
   [ comp.ai is moderated.  To submit, just post and be patient, or if ]   
   [ that fails mail your article to , and ]   
   [ ask your news administrator to fix the problems with your system. ]   
      
   --- SoupGate-Win32 v1.05   
    * Origin: you cannot sedate... all the things you hate (1:229/2)   

[   << oldest   |   < older   |   list   |   newer >   |   newest >>   ]


(c) 1994,  bbs@darkrealms.ca