Actually, that's not true. Languages such as Perl and Python were designed to write scripts, not to code entire applications.
Prove it. Prove what the creators and initial shapers of the language intended! There is an argumentative fallacy called "hasty generalization" - surely you know what I'm talking about. This is a baseless claim without warrant or data, and is a generalization tantamount to saying something silly like "Lisp was only created to give Emacs users a way to change their colors."
Python is an exception because it can be successfully used to code large applications, unlike some other scripting languages.
Have you considered that you are trying to create a rule and find a way for the exception not to prove it false. Has it occurred that you are creating a false dichotomy? You sound as silly as clerics in medieval Europe in denial about retrograde motion of the planets in the night sky - after all, we all know that the Earth is the center of the universe. That analogy is apt because it is the same pattern of logic - try to scapegoat the obvious hole in your theory as an irrelevant outlier, label it, and hope that an inquisition of name-calling destroys it.
So it's best to call Python a "scripting programming language" because it has this dual nature.
So what really matters is what we call it? I must make a note to remember how much more important this is than how we use it.
All said and done, I prefer to use Java over Python for large applications
Good for you; there are others that share your tastes, but that's all it is: preference. A good coder could create an equally powerful suitably large application in either language in the same amount of time. The only difference is that the Python coder's wrists hurt 75% less from doing 25% of the typing, and the Python coder's peers' eyes hurt 75% less as they can read code quicker.
simply because it's cleaner and has mechanisms in place that support reusability of components and extensibility.
Huh? You can do pretty much the same designs, patterns, etc in Python. Why does language make a difference here in re-usability. Perhaps you are arguing for single-inheritance as a constraint (which you can self-impose in design in Python).
Also, OO concepts such as abstraction and inheritance are well defined in Java.
And they aren't in python. I think this is just another baseless statement.
Also, both compiled and interpreted languages have their advantages and disadvantages.
The real Java/Python debate is about dynamic strong typing versus static strong typing. Such debates have already been had, ad nauseum, elsewhere. This "interpreted" or "scripting versus programming" angle on a language flamewar is neither new, nor insightful. Sean +----------------------------------------------------------+ Sean Upton SignOnSanDiego.com Site Technology Supervisor The San Diego Union-Tribune 619.718.5241 sean.upton@signonsandiego.com 350 Camino De La Reina San Diego, CA 92108 Plone Powered! plone.org ++ python.org ++ zope.org +----------------------------------------------------------+