Python and Ruby , object oriented questions

Elf Sternberg elf at halcyon.com
Sat May 19 21:44:07 EDT 2001


In article <mailman.989895622.17826.python-list at python.org> 
    Paul Prescod <paulp at ActiveState.com> writes:

>There is some truth to this but I don't think it is the whole truth.
>Most people become Python advocates while they still have much larger
>investments in other languages. The new converts are often the most
>vocal, right?

        True.  When I shifted over, it was something of a religious
conversion to the point where I felt guilty when I tossed off a 'perl
-pi.bak' construction.

>It's like political parties. You want your programming language to
>succeed because it captures your beliefs about how the (computer) world
>should work.

        One of the things I've learned over the years is that there
isn't much to languages themselves.  I have a bit of trouble wrapping my
head around some language classes, such as those examplified by Haskell,
Scheme, or Forth.  But when it comes to the procedural languages (like
C) and those with an object-oriented option (such as C++, Java, Perl,
and Python) I have no trouble with the language _syntax_, because, to be
honest, there isn't much there there.  Do I use '==' or '=' (or 'eq'!)
in an if statement, do I use '=' or ':=' in an assignment, what do I use
for scoping: these are all trivial.

        The real barrier to any language is the libraries that come with
it.  What made Perl and Python _real_ successes with its users was that
the libraries are similar enough to the C which we had to work with in
the late 1980's.  When these languages came along, the regular
expressions were familiar to us and the things we could do were things
we were used to doing.  Plus, the authors of these languages had the
foresight to make interfacing with even a poorly-thought-out C interface
a task even a mediocre programmer could accomplish.  

        I suspect this is the reason why Java is such a hit among
college students learning a language for the first time, but has had
trouble inroads into the existing Unix/Linux communities.  The Java
libraries, however well-conceived and paradigmatically "pure" they may
be, are unfamiliar to those of us who have been programming to the Unix
'C' libraries for so long.

        Any language that hopes to acquire a significant amount of
mindshare must have both a compellingly useful syntax and a library that
the user can readily grasp and do something with.  Python and Perl both
succeed in the second, and whether or not they succeed at the first is,
well, a matter of personal preference (and religious wars).

                Elf

--
Elf M. Sternberg, rational romantic mystical cynical idealist
http://www.halcyon.com/elf/

Dvorak Keyboards: Frgp ucpoy ncb. ru e.bu.bj.



More information about the Python-list mailing list