> personal preference, I think. > > And perl/python is apples and oranges: python is object oriented (like java, > C++), while perl is more like C. >
Perl is more like C, but with objects (and lots of other stuff). > A lot of people take issues with perl's lack of standards-- where {}, (), etc, > may or may not be required. A lack of standards is also what makes a language hard to learn. Also keep in mind that if you are learning a language for the first time, you need to be able to get a strong grasp of fundamental concepts such as data types, arrays, variables, and so on. That would call languages like Perl, C and C++ into question (great languages though they are). Even with ANSI standards, C and C++ carry so many subtleties that a person has to learn all at once, that things could be legitiamtely confusing first time out. You also have to wonder if it is really meaningful to learn an object-oriented language first time out. Should you not teach the fundamentals - procedures, functions, parameter passing, recursion, and so on, before you teach OO? I know that OO is in many places taught as a first language anyway, and I even admit to owning two books teaching OO as the first language (one in C++ and one in Java). It depends on where you want to go. But that is why abstract "teaching languages" had been developed - such as ANSI Pascal (which is now largely a dinosaur), or more modern languages such as OO-Turing (a latter-day successor to Pascal): to teach concepts such as procedures and fucntions in an environment where the syntax is clear to the programmer and data is strongly typed. It even allows for the learning of OO later on. Once you have a sure grounding in the basic concepts, you can move on to a more "relevant" language where things are less clear-cut. However, nowadays, I am noticing more and more campuses turning to Java as the beginning language. That is, Java without a GUI and without a graphical interface (other than Notepad or Emacs). Admittedly, typing is as strong and the syntax is about as predictable as the Turing, but it is pure O-O, even if you try to teach it as a procedural language, which is done for much of the first course. I thought it was difficult to teach pointers in that language. However, it appears that Java has "something" about it that beahves like a pointer, so a lot of time in the university course (which doesn't use Savitch's book) is devoted to that also. Actually, I have 3 books: "Introduction to Programming Using Java", by Arnow and Weiss (used in the beginning University course mentioned above) "Java: An Introduction to Computer Science & Programming", 2e, by Walter Savitch - uses Borland/Inprise JBuilder 3 Foundation (for which it provides an installation CD) - This one begins the student in a GUI/RAD environment first time out. I have not tried the book out myself to see how successful it is. "C++: An Introduction to Programming", by Jesse Liberty and Jim Keogh - a surprisingly good book on C++. It is how I learned C++. Hope this helps. Paul King > > As to having {} and ;, it's a matter of the language structure, and that's > all. > Whether or not you use them is simply a matter of how you structure the > language. > > glen > > > On Tue, Dec 25, 2001 at 12:30:34PM +0100, [EMAIL PROTECTED] wrote: > > J?rgen A. [EMAIL PROTECTED]@Mon, 24 Dec 2001 19:20:09 +0100: > > > Correction: If you want to learn programming, Perl is the *wrong* > > > language. > > > > > Nope, not at all. Perl is like C, C++, Java, etc. Python is like Basic. To > > become a good programmer you should get used of ; and { and } as soon as > > possible. ;-) > > > > So you can spend some time on Python, but do switch to C (or Perl first) > > ASAP. > > > > -- > > *=-+-______________________ > > |[EMAIL PROTECTED]: _ Ugh! Nio2f says something: ______ > > : http://www.lintux.cx/ | / gnat a fo be to con httpww.codec \ > > ~~~~~~~~~~~~~~~~~~~~~~-+-=-+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~+-=* > > > > > > -- > > To UNSUBSCRIBE, email to [EMAIL PROTECTED] > > with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED] > > > > -- > Glen S Mehn > Lead Systems Administrator SquareTrade, Inc > [EMAIL PROTECTED] Building Trust in Transactions (sm) > > > -- > To UNSUBSCRIBE, email to [EMAIL PROTECTED] > with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED] > ========================================================= Paul King http://www3.sympatico.ca/pking123/ (905) 842-7451 (416) 428-7451 (cell)