On Wed, 31 May 2000, Yatsen Ng wrote:
Hi there,
I need to learn a scripting language and I was just about to start with Perl. But then I read a very positive article about Python in the LinuxJournal (written by Eric Raymond). A lot of people recommend Perl, simply because the majority uses it. But is that a good enough reason?
To start with, I've never worked with either at all. I have a Python book around here someplace but haven't had time to start on it yet. I may also have a Perl book but I'm not sure. After a certain point, languages fall into just a few categories and if you've mastered a category, another language in the same category is no big deal. I have, literally, learned a new language (well enough to make major changes to a program) solely by reading badly-written and comment-free source code. (Except that I didn't learn how to write comments, which was very frustrating.) But then, I've been doing this for a living for more than twenty years, and as a hobby for even longer. I figure by now I've worked with maybe 20 dialects of Basic and maybe 20 other languages, NOT including the one college course I took that spent as much as two weeks on each language before moving on to the next. (The most important thing I learned in that course: APL is a write-only language, and APL language manuals and texts are written in APL. The second most important thing: if you want to learn Lisp, first find an instructor who understands Lisp. But some of the other languages were interesting, and SNOBOL was actually fun.) What matters a great deal more in any sort of event-driven and/or object-oriented language is the object model it uses for its environment and objects. By all reports I have read (not just that one), it appears that Perl's object model was shaped in several segments semi-independently and then rammed and mashed together until it sort of stuck. Whereas Python, again by numerous reports, has a pretty good object model. If you have not dealt with an object-oriented scripting language before, then I *strongly* recommend you pick the one with a good object model to start with. It's enough to learn the basic concept, without having to learn several overlapping object models simultaneously and remember when each one applies. If you already have dealt with several such languages, then it matters less - but it still matters, and the better object model will be easier to learn and to work with. -- To unsubscribe send e-mail to suse-linux-e-unsubscribe@suse.com For additional commands send e-mail to suse-linux-e-help@suse.com Also check the FAQ at http://www.suse.com/Support/Doku/FAQ/