new forum -- homework help/chit chat/easy communication

Mike Meyer mwm at
Sun Oct 9 14:07:38 CEST 2005

Lasse Vågsæther Karlsen <lasse at> writes:

> Fredrik Lundh wrote:
> <snip>
>>     "Unlike mainstream component programming, scripts usually
>>     do not introduce new components but simply "wire" existing
>>     ones. Scripts can be seen as introducing behavior but no
>>     new state. /.../ Of course, there is nothing to stop a
>>     "scripting" language from introducing persistent state -- it
>>     then simply turns into a normal programming language."
>>         -- Clemens Szyperski, in "Component Software":
> <snip>
> That description seems to describe whatever is written more than
> whatever it is written in, or in other words, it describes the
> difference between a script and a program, not between a scripting
> language and a programming language.

It also pretty solidly capture what a shell script does.

> I think that at one time, scripting languages was something that lived
> within other programs, like Office, and couldn't be used by themselves
> without running it inside that program, and as thus was a way to add
> minor functions and things to that program.

That's certainly one kind of scripting language. But I don't think
it's ever been the only kind - shells have always been stand-alone
applications. What they have in common with your definition is that
both types of languages are used to capture user actions for later
repetition. And that's what makes a scripting language: it's a
language in which one writes "scripts" that describe actions -
normally taken by a user - so that a series of them can be performed

For my take on the ontology of scripting languages, see <URL: >.

Mike Meyer <mwm at>
Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information.

More information about the Python-list mailing list