Why do we call python a scripting language?

Donn Cave donn at u.washington.edu
Fri Aug 27 13:42:37 EDT 1999


Quoth tdixon.no at spam.fwi.com (Timothy Dixon):
| On Fri, 27 Aug 1999 10:18:55 GMT, guy_oliver at yahoo.com wrote:
|> Why do we call python a scripting language?  
|>
|> For me, and for most of the people I try to tell about the benefits of
|> python, the title 'scripting language' implies that its not a real
|> language capable of real programs.  It implies to most of them that it
|> is good for simple sysadmin and maybe short cgi scripts.
|
| I put it in the class of scripting languages because it's embeddable
| (as I understand it; I'm actually just a newbie) in other applications
| where it can be used for scripting another app.

Yes!  This is the useful meaning for "scripting", as I see it!  The
definitions that try to distinguish between ``quick, inconsequential''
vs. ``serious, production'' etc. are hopelessly lame, regardless of
their distinguished sources, because it's a useless struggle to assign
importance this way.  A 3 line Bourne shell script can be mighty
important production software.

I think this fits in with the other contexts where people use the term,
too.  I'm mostly a UNIX geek, but on platforms like MacOS, BeOS, AmigaDOS,
(Windows?) etc. I gather ``scripting'' is very much tied to the context
of some application.

But in these contexts the scripting language isn't always embedded, there
may (should) be other ways for it to be integrated with its application.
And as an embedded application language frankly I think Python isn't really
at its best.  The plasticity of languages like Lisp and Tcl make them easier
to adapt in some ways.  Like the UNIX shell is adapted to its application
environment, UNIX commands.

| It's not *just* in that class, of course; polymorphism and multiple
| inheritance are great real-world characteristics. :-)

Fer sure.  My vote would be to leave ``scripting'' out of it, or use
the term only with explanation.  The references to rapid prototyping,
etc., are somewhat along the lines I think people really have in mind
here, and perhaps someone who's fond of the term can articulate a useful
meaning for it without making it sound unduly trivial.

	Donn Cave, University Computing Services, University of Washington
	donn at u.washington.edu




More information about the Python-list mailing list