I missed the original post but I'll chip in anyway... > [EMAIL PROTECTED] wrote: >> 2. Seeing Python hailed as a good language for learning >> programming, how do you rate it as a lifetime language? (I can >> imagine that many people have settled into one language for doing >> the remainder of their life's work.
There is no such thing as a lifetime language (unless maybe its COBOL or Fortran) because lanmguages are conmstantly changing. When I started programming in the mid 70's I was using BASIC and Assembler. Then when I went to University (as an adult student) I was tought Pascal and C. (While there I also came across Smalltalk and OOP but they weren't part of the core curriculum) After some years using C (and some Lisp) at work I needed to learn Objective C and then C++ which became my prime language for about 5 years. (During all this time my personal projects were being done in Pascal or Lisp -- or Tcl which I'd found by accident...). Nowadays almost all my work is done in either Python, Pascal (Windows GUIs), Objective C (for my Apple) or Java. I only use Java while at work - I detest it as a language. But I've used over 30 languages in total over the years, some I've forgotten, others I still dabble with (such as Smalltalk and Lisp). The language is pretty well irrelevant, you can do almost anything in almost any language. The important thing is to understand how to structure code and to lay it out clearly for ease of maintenance. You can learn almost any new language in less than a week. Learning all the common idioms may take a few months. >> I am pressed, I will choose Perl at this point.) Perl is just too lmited in scale for my purposes, it's great for small scripts and up to a thousand lines or so of code. But I had to maintain a 5000 line Perl program (ie quite small) and it was not much fun - too many different styles used and inconsistent design patterns, something Perl actively encourages. Once you get to large programs, say over 100,000 lines, and certainly over a million you need a language with good support for that kind of work. ADA, Eiffel, COBOL, (and just maybe C++) etc The main reason COBOL has remained the most commonly used language for large projects is its superlative support for that kind of environment. Small COBOL programs are a pain because you have to do so much to set it up, but on big projects those very same constraints become a godsend. It's interesting to note that most of the very big projects that fail have tried to use other languages than COBOL and run into problems. COBOL isn't necessary but it has a huge culture behind it for these kinds of jobs - we have learned how to do it in COBOL, we are still learing in Java, C++ etc. Alan G. _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor