Varsha Purohit wrote: > Hello everyone, > I wanted to know what are the differences between perl and > python, since both of them are scripting languages...
There is plenty of difference between them and between all the other scripting languages. Look beyond the notion of "scripting" and look at the programming language and the paradigm it supports. Personally, I don't see Python as much of a scripting language in the sense that Perl is, where Perl is the "king of the quick hack"... powerful, easy to throw together a script to get a job done in a hurry. Not so easy (but undeniably possible) to keep a disciplined, careful approach to writing a sizable application which will be maintained over time. Python, on the other hand, feels more to me like a solid, disciplined object-oriented (dare I say "real") programming language which happens to be high-level, dynamic and compiled to bytecode at runtime (much as Java is). It takes a little more work to make a program in Python than Perl, but the code tends to be more solid and easier to maintain. Those are gross generalizations, and depend on programmer skill, but the languages approach programming from such different angles, and encourage such different mindsets that it's worth considering as a difference. Each language has separate strengths. Python is less ambiguous about what expressions mean (Perl tries hard to "guess" at an appropriate way to interpret almost anything to do *something* while Python rejects things that are not clear and explicit as to your intent). Python is *far* stronger at OOP support than Perl. Perl has more convenient short-cuts for many things, but I've found the completeness of the Python standard lib and the flexibility of the methods and functions inside it to ultimately give me more power even if I can't do it in three characters. The list could go on and on, but it really comes down to what you want to accomplish. I'd use Perl for a lot of "scripting" kinds of needs, one-off scripts, simple data reformatting, process automation, but would prefer Python for creating more complex applications. Likewise, TCL and Ruby have their own particular domains they do well within. _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor