Is Python really a scripting language?

Ron Provost ron.longo at cox.net
Tue Dec 11 19:24:06 EST 2007


OK, I don't mean to start any sort of war or flaming or anything here but I really need to discuss this with other afficionados of Python - I know none other than myself.

I'm a software developer.  Where I work, the dominant development language is Java with some mostly-legacy C/C++ software.  In places where I don't need to directly integrate with our Java suite of apps, the first thing I ask is, "do you mind if I do that in Python?"  in several cases I was given approval after demonstrating stuff I've already done (These people giving approval are generally not very technical).

Now, I've also shown my applications (both work related and my own projects) to other developers at work.
Some of the applications I've written are quite sophisticated.  I have software which uses pymedia to playback media files and Tkinter/Tix apps with quite-good (infact called "very professional looking" by a few coworkers) GUIs.  Apps that process thousands of records of data in less than a second, and an application I developed which launches our suite of Java applications (previously everything needed to be launched by hand with lots of command-line parameters).  Configurations (that specify which apps and which command line parameters) can be created, edited, deleted, saved and loaded.  In addition, once the suite of applications is running, my application continues to monitor all the processes (many of which don't have GUIs).  The application alerts the user if an app appears to start taking over memory or %CPU (Our app suite is extremely large and complex) and allows a user to selectively terminate apps.  It's incredibly useful and I've gotten nothing but complements on the app.

But here's my problem, most of my coworkers, when they see my apps and learn that they are written in Python ask questions like, "Why would you write that in a scripting language?"  Whenever I hear a comment like that I can feel myself boiling inside.  While many call Python a scripting language, I acutally use it as a full-fledged programming language.  To me a scripting language is sort of like a shell language where I may process output of one app, feed it into another, etc.  That is, a scripting language (by my definition) pulls apps together.  I don't use python like that (in fact, after my suite launching app I feel subprocess is very immature).  What's so different from python generating .pyc files and executing them from javac producing .class files which you then run on java?

I've been in the Python world since version 2.3 final was released, so I don't know a lot about the history of Python.  Was Python originally more like a scripting language and the "culture" of refering to it as scripting has just stuck?  I would like to see the Python world get away from the "script" term, perhaps starting in Python 3.x.

Ron
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-list/attachments/20071211/450b0397/attachment.html>


More information about the Python-list mailing list