Is Python really a scripting language?

John Nagle nagle at animats.com
Sat Dec 15 15:09:42 EST 2007


Eric S. Johansson wrote:
> John Nagle wrote:
>>      Yes.  One of the basic design flaws of UNIX was that interprocess
>> communication was originally almost nonexistent, and it's still not 
>> all that
>> great.  It's easy to run other programs, and easy to send command line
>> parameters, but all you get back is a status code, plus console-type 
>> output.
>>
>>      The UNIX world might have been quite different if, when you ran a
>> subprocess, at the end you got return values for the command line
>> parameters (argv/argc) and the environment back.  Then programs
>> would behave more like big subroutines. 
> 
> not if you use pickle.  

     That assumes both programs were designed to intercommunicate that way.
Most UNIX applications aren't.  There's no accepted standard on how
UNIX programs should intercommunicate, other than the 1970s technology
of piping human-readable strings around.  Yes, there are marshalling
systems, of which Python's "Pickle" is one.  But there's no standard
interprocess call system.  And Pickle is only a marshalling system,
not a full IPC system.  There's no resource location system. ("Where's
the browser process?" "Where's the database back-end?")

     Both Gnome and OpenOffice use CORBA. But they use incompatible versions,
and you have to have a "CORBA ORB" running for that to work.  There's
OpenRPC, which isn't used much any more.  There's "System V IPC", which
isn't used much.  There are XML-based systems. There's REST, JSON, and
similar approaches.  None of these approaches ever got the kind of
widespread use that OLE did in the Microsoft world.

				John Nagle



More information about the Python-list mailing list