Choosing Python

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Guest's Avatar

    #1

    Choosing Python

    The choice is made. The school where I teach has finally
    made its decision to teach Python first. For several years,
    we have been teaching Java first, and before that, C++.

    I introduced Python in one of my courses and got a lot of
    flak from some of the other faculty. I also introduced Ruby,
    and got even more flak. In my course, the students loved
    Python for its simplicity, its power, and its flexibility.

    It is clear that Python is not the ultimate, one-size-fits-all
    language. No language is. However, for a beginner's
    language it is nearly ideal. Further, it is a great language
    for a wide range of serious programming problems.

    For large-scale, safety-critical software, I still prefer Eiffel
    or Ada. Java could vanish tomorrow and, with Python
    and Ruby available, no one would miss Java at all. As for
    C++, for any serious software systems, it should always be
    the language of last resort. C++, as an object-oriented
    assembler, is pretty much its own virus.

    Already, students are turning in really good projects in Python,
    and some in Ruby. Not all the professors are on-board with
    this decision, but in time I think they will be.

    Richard Riehle


  • Guest's Avatar

    #2
    Re: Choosing Python


    "Dennis Lee Bieber" <wlfraed@ix.net com.comwrote in message
    news:q7oLh.1138 0$PL.6562@newsr ead4.news.pas.e arthlink.net...
    On Mon, 19 Mar 2007 02:21:35 GMT, <adaworks@sbcgl obal.netdeclaim ed the
    following in comp.lang.pytho n:
    >
    >or Ada. Java could vanish tomorrow and, with Python
    >and Ruby available, no one would miss Java at all. As for
    >
    Except for all those software firms that have based their entire
    production on Java <G{Most of which, based on a limited example of
    tools at work, tend to be klutzy, idiosyncratic, slow... and for some,
    new versions are incompatible with projects created with older ones}
    --
    Dennis,

    The same can be said for those who have chosen other languages
    and used them in non-standard ways. COBOL comes to mind.

    One of the many things I like about Ada is that it is the same wherever
    you use it. Python seems to be that way too. Java started out that way.
    It was the intention for Java to be more portable than it is. I have heard
    that Java was released before the developers were finished designing it.
    That would account for some of the upheaval in the language. I do know
    of one set of software systems that has simply stopped working after the
    initial release of Java was revised. The appliation was versioned it out
    of compliance.

    The hype surrounding Java, and the overly optimistic expectations of
    C++ are a small sample of good intentions gone awry. The same thing
    could happen to Python or Ruby if those who control it are not careful.

    Both languages, in my view, could benefit from a model of pre-, post-,
    and invariant assertions, but done badly, that could do more harm than
    good. So let's hope that Python and Ruby evolve better than C++. For
    C++, every new version seems designed to compensate for something
    that was wrong with some earlier version.

    Richard


    Comment

    • John Salerno

      #3
      Re: Choosing Python

      adaworks@sbcglo bal.net wrote:
      One of the many things I like about Ada is that it is the same wherever
      you use it. Python seems to be that way too. Java started out that way.
      It was the intention for Java to be more portable than it is. I have heard
      that Java was released before the developers were finished designing it.
      That would account for some of the upheaval in the language. I do know
      of one set of software systems that has simply stopped working after the
      initial release of Java was revised. The appliation was versioned it out
      of compliance.
      When Python 3.0 comes out, there will be some backwards incompatibility ,
      but I doubt this will be a huge factor. It might just take some time
      before everyone switches to it.

      Comment

      Working...