Had Phyton suggested
shoot at the.moon
Mon Feb 9 21:45:55 CET 2004
> Steve Horsley wrote:
>> P.C. wrote:
>>> My son like many youngsters been around computers, fast online games, he
>>> acturly for main part learned to read and write ,beside his second
>>> english , and may I say he is quite good at it age 15 , but as some
>>> of you
>>> know, 3D games also offer edditors and script options , or rather
>>> programming choppers and dust clouds in scenes.
>>> Now beside my bad english, my problem is, that I like him to learn
>>> programming ------- sure I know the best way to learn is looking at
>>> code and change a bit here or there to se the actural results, but
>>> with his
>>> knowleage about programming he proberly fail to se how functions work
>>> even he made some quite nice effects in the scenes in "Operation
>>> resistance" , I just know that he would profit from learning from
>>> buttom up,
>>> a real programming language.
>>> Now from an old friend I been advised Phyton, and as I know a bit about
>>> programming ( Lisp ) , I agrea after checking a few links ; guess
>>> Phyton is
>>> very much C++ like ,so investing in his interests programming scenes for
>>> games, could be in his faviour .
>>> Now I agrea that my own knowleage about compilers and more advanced
>>> programming are limited, and my fear is that I will need some sort of C.
>>> compiler causing day's and weeks of trouble setting up ------- or
>>> what do
>>> the group think ; my question is, if there today are compilers that
>>> is set
>>> up and work as simple as for instance the first Pascal compilers .
>>> Well I agrea that my own trouble programming, never been the actural
>>> programming, but all the silli trouble with compilers, as you se
>>> don't care if the program spend a bit more memmory ,as long as it
>>> work and
>>> acturly produce compiled code.
>>> Guess my question is, if it is possible to find a compiler that is
>>> fit for
>>> amatures, one that an amature will not have to fight before it is
>>> ready to
>>> use. One where you ,as when I learned programming , don't need to be a
>>> compiler specialist before you even learn programming.
>> Python is an interpreted language, not a compiled one. So you don't
>> need to worry about compilers at all. This makes it a little easier to
>> get into than compiled languages. I thin python is a very good
>> introduction to someone who knows nothing about programming.
>> At the risk of making a lot of python fans angry, I would also suggest
>> that you look at java. This IS a compiled language (although
>> ironically, the compiled bytecode is interpreted). I suggest this for
>> a few reasons:
>> * You cannot really avoid thinking in an object-oriented way when
>> writing java. I suspect that python will allow you to develop some
>> very nasyt habits.
>> * The java tutorial is massive, and has loads of examples.
>> * I have not seen anything like BlueJ for python. BlueJ is an
>> excellent beginners IDE with editor, debugger, and a UML-like diagram
>> that shows how your classes interconnect.
>> Better, learn a little of both languages.
> Angry, no. But I don't think your advice is very sound. First, Python
> "compiles" to bytecodes much the way Java does. If Java does anything
> different, it is that it can employ a JIT compiler to speed up the
> execution of the bytecodes. Second, I disagree that Python will make
> someone develop "bad habits". Using object oriented programming is not
> the end-all to all the world's problems. Java forces you into this model
> at all times, Python doesn't. If anything, I think Java's view of the
> world is flawed - sometimes objects aren't the answer to a programming
> problem. For a beginner, having to do all your thinking in objects makes
> learning the basics harder, in my view. Last, there are plenty of good
> (if not great) editors for Python. Pushing an editor that includes
> things as UML is not really very productive for a beginner, and it could
> be argued it not even very useful for advanced programmers (if your
> class hierarchy is s complex that you need (live) UML, you probably have
> too complex of a design.) I do agree with your last sentiment, learn
> lots of languages, Python, Java, C/C++, etc. and see which one(s) meets
> your needs best.
There _is_ a difference in the compilation. With java, you have to
compile to bytecode before trying to run the program. With python, you
just run the program. This is because the python interpreter accepts
text files, whereas the JVM doesn't. e.g.
As for not encouraging bad habits, I thought not until I came across a
34k python script where every variable was global and not one procedure
accepted any arguments or returned any values. I suspect that the only
chopping into procedures was to keep the text on the page. I now think
that a real beginner needs a better push in the right direction.
More information about the Python-list