Re: Is python worth learning as a second language?



On Mar 9, 12:43 am, ZikO <ze...@xxxxx> wrote:
Hi

I hope I won't sound trivial with asking my question.

I am a C++ programmer and I am thinking of learning something else
because I know second language might be very helpful somehow. I have
heard a few positive things about Python but I have never writen any
single line in python so I do not know this language at all.

Do you think python would be good complementary language for C++? Do you
think it's worth learning it or let's say try Java? and how difficult it
would be for me if I know C++ pretty well I would say?

Thanks

I'm not even going to read the replies first because I have my own. I
was a C and C++ programmer exclusively for over a decade. During that
time I had a "whatever tool for the problem" approach to language
selection but C++ continued to be the best for the sort of thing I was
doing. During that time I continued to learn other languages at least
enough to consider them. I appreciated the role of interpreted
languages were filling, but also never felt comfortable in them.

Python, imo, is an excellent language to learn as a C++ programmer.
It is relatively easy to extend with C/C++ and so works together well.
When you find yourself writing some configuration language, you'll be
able to use python instead. Also, I have found that Python helped
open my mind a bit about object orientation and to realize that while
the compile-time decisions in C++ are great for the C/C++ linking
model, and provides a certain sort of power and control, that it also
really does (as many had complained to me) take a few blows at how you
really want OO to work.

So I love python's OO and things which can be done structurally in C++
(like metaclass programming) but with which the C++ syntax is not
cooperative, and which is very much harder to safely extend modularity
too (I could go into detail but why bother here, it's either already
clear what I mean or isn't that important)...

Finally, Python is a multiparadigmed language, like C++. It very much
seems to believe in Bjarne's original trust the programmer outlook on
languages. As a C++ programmer I enjoyed the responsibility and
power of choosing one's paradigms at the outset of a project. Such
choices are best made consciously, one learns a lot about their
project and develops a lot of philosophical standards for the design
and implementation by having to think first "what models and
programming paradigms will we adopt". It makes you think what sort of
code you will be writing often, and which idioms will be efficient and
maintainable.

Honestly, I've become more of a Python fan than I am really
comfortable with... it can't be as good as I think.

-craig
.



Relevant Pages

  • Re: Python or PHP?
    ... If it's one of the things for which Python ... every language here and there more ways to do something. ... you make Perl more complicated than it is:-D. ... Not the programmer. ...
    (comp.lang.python)
  • Re: OT: Should I learn bash/C/python/perl/other
    ... my grandma had me call my uncle since he was a programmer ... my suggestion here would be to find a language that will do ... >>and I still want to give one more suggestion. ... > or two to start learning C. ...
    (Fedora)
  • Re: Python or PHP?
    ... > every language here and there more ways to do something. ... The best the programmer can do, as you imply, is to ... parse out into proper perl expressions. ... > lists, dictionaries, etc. etc. ...
    (comp.lang.python)
  • (OT)Re: To C or not to C, that is the question...
    ... modifying source code of Linux applications, ... "The C Programming Language" ... Python so if you became comfortable in Python you will be able to do ... statement that someone could be an adequate C programmer ...
    (comp.lang.c)
  • Re: Python or PHP?
    ... >> every language here and there more ways to do something. ... The best the programmer can do, as you imply, is to ... I am curious of a list of extraneous methods in Perl (more about the ... I just had a glance on Python, ...
    (comp.lang.python)