Python is the best and most popular general purpose scripting language; the universal scripting lang

P

Paul Prescod

PiedmontBiz said:
...

I have the answer. Scripts are concatenated sequences of instructions to the
computer operating system to perfom a certain task. The script I create for my
own purposes and my own personal use (or my work group) will always be known as
a script.
If my script is needed and used by others (outside my workgroup), it will now
be called an application. The source code of applications is not changed by the
user.

So then the same language is both a scripting language and an
application development language?

Remember that the goal is to classify _languages_, not programs.

Paul Prescod
 
K

Kirk Job-Sluder

Python is the best and most popular general purpose scripting
language. That is, Python is the best and most popular general
purpose, dynamic, interpreted language. Sure, there are other
scripting languages that are more popular for specific application
domains, and there are big company backed systems languages that are
far more popular; but in its niche, Python is tops.

....
Long live Python, the universal solvent!

I like python but I disagree. In addition I think that putting any
language as the "universal solvent" is not all that great. Back when I
considered perl the swiss army chainsaw of system administration, I
wasted a lot of time adding unnecessary fluff to a script when all that
was required was a set of pipes between existing programs.

For example:

awk '$1 !~ /^(127\.0\.0\.1|192\.168\.1)/ {print $1}' \
< /var/log/httpd-access.log | sort | uniq


A nice Bourne one-liner that does useful work, but which I really don't
feel is worth doing in python. The two hours I spent learning awk has
paid off whenever I need to pretty-print a character-delimited file.
 
D

Dennis Lee Bieber

So then the same language is both a scripting language and an
application development language?

Remember that the goal is to classify _languages_, not programs.
Slipping in late... I'm afraid my near decade of Amiga usage
spoiled me...

ARexx (the Amiga implementation of REXX) qualified, in my mind,
as a true scripting language. In comparison, Python is no more a
scripting language than K&K BASIC.

The first point of significance: Any statement that was not
parsable as an ARexx statement was automatically passed to the currently
defined command processor (normally the command shell, if started from
such). No fiddling with pipes, or special calls to execute commands
within a shell.

The second point of significance builds upon the above
parenthetical: Any application program that created an "ARexx port" in
the OS (these were just special variants of normal Amiga inter-process
communication ports -- the closest equivalent I've seen would be VMS
"mailboxes"; named queues maintained by the OS which tasks can "write"
to, and the creator can "read")... Any program that created an Arexx
port could become "the defined command processor".

So... ARexx effectively became the scripting language for any
serious application program. Some applications did go a step further, by
supplying a function library which ARexx could associate, and call
functions directly to affect the application -- instead of going though
a "command line equivalent". And since an ARexx script could dynamically
change the command processor, it made it very simple to write a script
which could pass commands to multiple applications to interchange data.

--
 
R

Ron Stephens

Kirk Job-Sluder said:
feel is worth doing in python. The two hours I spent learning awk has
paid off whenever I need to pretty-print a character-delimited file.

Kirk Job-Sluder said:
feel is worth doing in python. The two hours I spent learning awk has
paid off whenever I need to pretty-print a character-delimited file.

I agree, shell scripts are great. But my main point is not whether or
not to classify Python as a scripting language, or how to define a
scripting language, nor do I mean the "universal solvent" phrase to
mean Python is the only tool for all (or even most ) jobs.

Rather, I mean that Python is perhaps the best tool for writing actual
code, beyond the simplest shell scripts (although Python can be good
for that too) and short of Windows-only GUI forms-based Microsoft
Office add-ins to Access databases (although Python can be used to do
that too.)

In other words, one of Python's greatest strength's is enabling the
efficient writing of actual code that is easy to read and maintain and
to interface effectively with a very wide range of tools and
environments.

Like it or not, but for the foreseeable future, most people and
organizations that want to create and deploy GUI software exclusively
for Windows desktops and using exclusively Windows applications are
going to use Visual Studio .Net. In the same way, most people who want
to create and deploy truly cross platform GUI software may find Java
to be there main tool.

Sure, Python can be used to write and deploy the same kind of programs
on Windows or across all major platforms. But the real strength of
Python even in these cases in the writing of the actual code; that's
where Python's simplicity, power, ease, readability, maintainability
and efficiency really shines. The creation of the GUI's and the actual
deployment can be down the tools like wxPython, PyGtk, PyQt, and there
associated IDE's and tools, and the deployment can be done with
py2exe, McMillan's installer, etc etc, or, by using the platform
specific tools form Microsoft, Apple, and for the various Unices. But,
it would be hard, I think to argue that the use of Python makes the
creation of GUI's and the actual deployment (cross platform or Windows
only) easier and more efficient than the other (currently more
popular) alternatives to Pythonic tools.

After all, for cross platform deployment, it's hard to beat Java .jar
files; and for creation and deployment of Windows-only GUI frontends,
its hard to beat Visual Studio.

But for the actual writing of the code, that's were it can be argued
that Python brings added programmer productivity, efficiencies and
other advantages.

See my point? Or is it as clear as mud now ;-)))

Ron Stephens
www.awaretek.com/weblog.html
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,982
Messages
2,570,190
Members
46,736
Latest member
zacharyharris

Latest Threads

Top