(Collected from various forums + my own, but ranking is based on my experience and judgment)
- OO
- – Not sure about perl6, but not many app developers create perl classes. Many CPAN modules are OO though. Python users don’t create many classes either but more than in perl. I guess procedural is simple and good enough.
- – not sure about perl6, I feel perl OO is an afterthought. Python was created with OO in mind.
- – even if you don’t create any class, out-of-the-box python relies (more deeply) on more OO features than CPAN modules. Object-orientation is more ingrained in Python’s ethos.
- OO is important for large-scale, multi-modular development project. Python is more battle tested in such a context, partly due to it’s OO design, but i think a more important reason is the python import machinery, which is probably more powerful and more widely used than perl’s
- – Python can cooperate better with other popular technologies like DotNet (IronPython) and Java (Jython). See also python project in boost.
- – perl’s text processing (and to a lesser extent unix integration) features are richer and more expressive. Using every key on the keyboard is like using all 20 fingers and toes. I immediately felt the difference when switching to java. In this aspect, pytyon is somewhere between those 2 extremes.
- – perl can be abused to create unreadable line-noise; python has a rather clean syntax
- – As part of unix integration, perl offers many practical one-liners competing effectively with grep/awk/sed. Perl one-liners integrate well with other unix commands
- – Perl was initially designed for unix, text and as an alternative for shell script programmers. It’s still very good for that purpose. For that purpose, I feel OO offers limited value-add.
- – for unix scripting, perl is more similar to unix shell scripting at least on the surface, but python isn’t hard to learn.
- – I feel perl was more entrenched and more established in certain domains such as unix system automation, production support, bio-informatics
- big data, data science and data analytics domains have already picked python as the default scripting language. Perl may be usable but not popular
- – some say Perl the base language is much larger(??) than Python’s base language so probably it takes longer(???) time to learn Perl than Python but in the end you have a more expressive language???
- – CPAN was once larger than python’s module collection. If CPAN’s collection is A and python’s module colleciton is B, then I personally feel (A-B) are mostly non-essential modules for specialized purposes.
- – Python has better support for Windows GUI apps than Perl.
- I feel the open source contributions are growing faster in python
- There are more books on python