What is different with Python ?

Andrea Griffini agriff at tin.it
Mon Jun 13 20:23:06 EDT 2005


On Mon, 13 Jun 2005 13:35:00 +0200, Peter Maas <peter at somewhere.com>
wrote:

>I think Peter is right. Proceeding top-down is the natural way of
>learning.

Depends if you wanna build or investigate.

To build top down is the wrong approach (basically because
there's no top). Top down is however great for *explaining*
what you already built or know.

>(first learn about plants, then proceed to cells, molecules,
>atoms and elementary particles).

This is investigating. Programming is more similar to building
instead (with a very few exceptions). CS is not like physics or
chemistry or biology where you're given a result (the world)
and you're looking for the unknown laws. In programming *we*
are building the world. This is a huge fundamental difference!

>If you learn a computer language you have to know about variables,
>of course.

There are no user defined variables in assembler.
Registers of a CPU or of a programmable calculator
are easier to understand because they're objectively
simpler concepts. Even things like locality of scope
will be appreciated and understood better once you
try to live with just a global scope for a while.

>The concepts of memory, data and addresses can easily be demonstrated
>in high level languages including python e.g. by using a large string
>as a memory model. Proceeding to bare metal will follow driven by
>curiosity.

Hehehe... a large python string is a nice idea for modelling
memory. This shows clearly what I mean with that without firm
understanding of the basis you can do pretty huge and stupid
mistakes (hint: strings are immutable in python... ever
wondered what does that fancy word mean ?)

Andrea



More information about the Python-list mailing list