Python

NAVIGATION
CATEGORIES
REFERRENCE
LINKS
  • Two Newbile Questions: porting drawmap.c,& Python as a lifetimelanguage

    5 answers - 1003 bytes - related search similar search Add To My Delicious Add To My Stumble Upon Add To My Google Mark Add To My Facebook Add To My Digg Add To My Reddit

    Relying heavily on the "newbies treated well" advertisment :^)
    I'm an old C programmer, which is to say (a) I am old, and (b) even
    when young, I somehow managed to program in "old C".
    I have been working years creating a personal variant of
    drawmap.c, Fred M. Erickson's wonderful
    , and I have finally
    hit the wall. I have managed to make things sooo complex that the
    effort to learn a new language no longer seems unaffordable.
    I am seeking opinions from seasoned veterans on the following two questions:
    1. What's involved in a port of a C program into Python? (drawmap is
    offered in
    a number of linux distributions btw.)
    2. Seeing Python hailed as a good language for learning programming,
    how do you
    rate it as a lifetime language? (I can imagine that many people have
    settled into one language for doing the remainder of their life's work. If
    I am pressed, I will choose Perl at this point.)
    Humbly,
  • No.1 | | 1534 bytes | |

    dnelson (AT) cae (DOT) wisc.edu wrote:
    1. What's involved in a port of a C program into Python? (drawmap is
    offered in a number of linux distributions btw.)

    It really (really) depends on the C program -- C's so flexible that you
    can write in a "Pythonish" style (specifically, avoiding pointer tricks,
    keeping S-specific stuff to a minimum, and using good functional / data
    abstractions) or in a style that's so obfuscated as to make any sort of
    translation impossible. The flip side of that is that Python is
    flexible enough to accommodate many programming styles. It sounds like
    this program basically parses an input file and produces an output file,
    so I would bet that you can find some existing code that will read the
    input file, and some other existing code that will write the output
    file. Then you just have to write the middle part.

    2. Seeing Python hailed as a good language for learning programming,
    how do you
    rate it as a lifetime language? (I can imagine that many people have
    settled into one language for doing the remainder of their life's work. If
    I am pressed, I will choose Perl at this point.)

    Eep, Perl! a polyglot, always a polyglot. My choice of language
    depends on the context. For quick web stuff, PHP (! How I hate thee!).
    For quick manipulation of files and/or using lots of external programs,
    shell. For just about everything else, Python.

    Tutor maillist - Tutor (AT) python (DOT) org
  • No.2 | | 626 bytes | |

    dnelson (AT) cae (DOT) wisc.edu wrote:
    2. Seeing Python hailed as a good language for learning programming,
    how do you
    rate it as a lifetime language? (I can imagine that many people have
    settled into one language for doing the remainder of their life's work. If
    I am pressed, I will choose Perl at this point.)
    Python is great as a general-purpose programming language and it is my
    language of choice today. But I'll be pretty surprised if it keeps the
    spot on the top of the heap for the rest of my working life

    Kent

    Tutor maillist - Tutor (AT) python (DOT) org
  • No.3 | | 1774 bytes | |

    Really depends on what you do, if you program for a living most
    probably you'll use whatever your employer tells you to use, if you
    work by yourself you can choose, personally i like python because of
    the enormous amount of modules available to do all sort of stuff, from
    GUI programing, to unittest, database, compression, graphics (GL),
    etc.

    I like it because is crossplatform, it may not be fast but most
    modules are written in C already and are fast.

    I like the ability to use py2exe and generate a windows executable in
    a folder with ALL that i need to deploy on windows, i just copy the
    folder and i'm done.

    The Python comunity is very nice too, this is a big plus if you are
    learning a new languaje, the tutor list is always very helpful and
    active.

    You can always make use of your C skills even on Python, by writting
    modules to extend python functionability or to speed it up.

    Good Luck!

    Regards
    Carlos Daniel Ruvalcaba Valenzuela

    7/4/06, Kent Johnson <kent37 (AT) tds (DOT) netwrote:
    dnelson (AT) cae (DOT) wisc.edu wrote:
    2. Seeing Python hailed as a good language for learning programming,
    how do you
    rate it as a lifetime language? (I can imagine that many people have
    settled into one language for doing the remainder of their life's work. If
    I am pressed, I will choose Perl at this point.)
    Python is great as a general-purpose programming language and it is my
    language of choice today. But I'll be pretty surprised if it keeps the
    spot on the top of the heap for the rest of my working life

    Kent

    Tutor maillist - Tutor (AT) python (DOT) org

    Tutor maillist - Tutor (AT) python (DOT) org
  • No.4 | | 3051 bytes | |

    I missed the original post but I'll chip in anyway

    dnelson (AT) cae (DOT) wisc.edu wrote:
    >2. Seeing Python hailed as a good language for learning
    >programming, how do you rate it as a lifetime language? (I can
    >imagine that many people have settled into one language for doing
    >the remainder of their life's work.


    There is no such thing as a lifetime language (unless maybe its CBL
    or Fortran) because lanmguages are conmstantly changing.

    When I started programming in the mid 70's I was using BASIC and
    Assembler. Then when I went to University (as an adult student) I was
    tought Pascal and C. (While there I also came across Smalltalk and
    P but they weren't part of the core curriculum) After some years
    using C (and some Lisp) at work I needed to learn C and
    then C++ which became my prime language for about 5 years.
    (During all this time my personal projects were being done in
    Pascal or Lisp -- or Tcl which I'd found by accident).

    Nowadays almost all my work is done in either Python,
    Pascal (Windows GUIs), C (for my Apple) or Java.
    I only use Java while at work - I detest it as a language.
    But I've used over 30 languages in total over the years,
    some I've forgotten, others I still dabble with (such as Smalltalk
    and Lisp).

    The language is pretty well irrelevant, you can do almost
    anything in almost any language. The important thing is to
    understand how to structure code and to lay it out clearly
    for ease of maintenance. You can learn almost any new
    language in less than a week. Learning all the common idioms
    may take a few months.

    >I am pressed, I will choose Perl at this point.)


    Perl is just too lmited in scale for my purposes, it's great for
    small scripts and up to a thousand lines or so of code.
    But I had to maintain a 5000 line Perl program (ie quite small)
    and it was not much fun - too many different styles used
    and inconsistent design patterns, something Perl actively
    encourages.

    you get to large programs, say over 100,000 lines,
    and certainly over a million you need a language with good
    support for that kind of work. ADA, Eiffel, CBL,
    (and just maybe C++) etc

    The main reason CBL has remained the most commonly
    used language for large projects is its superlative support for
    that kind of environment. Small CBL programs are a pain
    because you have to do so much to set it up, but on big projects
    those very same constraints become a godsend. It's interesting
    to note that most of the very big projects that fail have tried to use
    other languages than CBL and run into problems. CBL isn't
    necessary but it has a huge culture behind it for these kinds of
    jobs - we have learned how to do it in CBL, we are still
    learing in Java, C++ etc.

    Alan G.

    Tutor maillist - Tutor (AT) python (DOT) org
  • No.5 | | 2038 bytes | |

    Tue, 2006-07-04 at 16:37 -0500, dnelson (AT) cae (DOT) wisc.edu wrote:
    I am seeking opinions from seasoned veterans on the following two
    questions:

    You're getting plenty of replies. Here's a bit more.

    You're probably aware that ESRI has adopted Python for scripting with
    their applications.

    1. What's involved in a port of a C program into Python? (drawmap is
    offered in a number of linux distributions btw.)

    http://ldots.org/pyrex-guide/
    pyrex integrates Python and C into a hybrid language that might be
    useful for porting existing C code.

    2. Seeing Python hailed as a good language for learning programming,
    how do you rate it as a lifetime language? (I can imagine that many
    people have settled into one language for doing the remainder of their
    life's work. If I am pressed, I will choose Perl at this point.)

    I think it is easier to learn to write complex applications in Python
    than Perl. Certainly Perl is rich in features and capabilities, but I
    find the rules for keeping everything straight are more complex than
    Python's and the possibility of uncaught errors in Perl seems much
    higher than in Python. My favorite example of this is:

    cat test.pl
    if ("abc" == "def") {print "all letters are =\n"};

    perl test.pl
    all letters are =

    )
    
    
    == is the numeric comparison. The strings are evaluated to numbers and
    both are treated as zero. 0 = 0 is true.
    "abc" eq "def" will behave as expected. Python has its own pitfalls,
    but I find the Python pitfalls much easier to live with.

    Python continues to evolve while preserving backwards compatibility.
    Recent additions such as list comprehension, generators, generator
    expressions, display a growth and dynamism that I think will continue to
    make Python a great choice among programming languages into the future.

    (You didn't really think you'd find people on this list urging you to
    use Perl.)

Re: Two Newbile Questions: porting drawmap.c,& Python as a lifetimelanguage


max 4000 letters.
Your nickname that display:
In order to stop the spam: 0 + 9 =
QUESTION ON "Python"

EMSDN.COM