What is different with Python ?

Claudio Grondi claudio.grondi at freenet.de
Mon Jun 13 10:19:02 CEST 2005


> They're things that can be IMO genuinely accept
> as "obvious". Even "counting" is not the lowest
> level in mathematic... there is the mathematic
> philosohy direction.
I am personally highly interested in become
aware of the very bottom, the fundaments
all our knownledge is build on.
Trying to answer questions like:
    What are the most basic ideas all other
    are derived from in mathematics and
    programming?
keeps me busy for hours, days, years ...

Any insights you can share with
me(and/or this group)?

Claudio



"Andrea Griffini" <agriff at tin.it> schrieb im Newsbeitrag
news:5q5qa1lotp0fbjru7i4492lloec251664v at 4ax.com...
> On Sun, 12 Jun 2005 20:22:28 -0400, Roy Smith <roy at panix.com> wrote:
>
> >How far down do you have to go?  What makes bytes of memory, data busses,
> >and CPUs the right level of abstraction?
>
> They're things that can be IMO genuinely accept
> as "obvious". Even "counting" is not the lowest
> level in mathematic... there is the mathematic
> philosohy direction. From "counting" you can go
> "up" in the construction direction (rationals,
> reals, functions, continuity and the whole
> analysis area) building on the counting concept
> or you can go "down" asking yourself what it
> does really mean counting, what do you mean
> with a "proof", what really is a "set".
> However the "counting" is naturally considered
> obvious for our minds and you can build the
> whole life without the need to look at lower
> levels and without getting bitten too badly for
> that simplification.
>
> Also lower than memory and data bus there is
> of course more stuff (in our universe looks
> like there is *always* more stuff no mattere
> where you look :-) ), but I would say it's
> more about electronic than computer science.
>
> >Why shouldn't first-year CS students study "how a computer works" at the
> >level of individual logic gates?  After all, if you don't know how gates
> >work, things like address bus decoders, ALUs, register files, and the
like
> >are all just magic (which you claim there is no room for).
>
> It's magic if I'm curious but you can't answer
> my questions. It's magic if I've to memorize
> because I'm not *allowed* to understand.
> It's not magic if I can (and naturally do) just
> ignore it because I can accept it. It's not
> magic if I don't have questions because it's
> for me "obvious" enough.
>
> >> Also concrete->abstract shows a clear path; starting
> >> in the middle and looking both up (to higher
> >> abstractions) and down (to the implementation
> >> details) is IMO much more confusing.
> >
> >At some point, you need to draw a line in the sand (so to speak) and say,
> >"I understand everything down to *here* and can do cool stuff with that
> >knowledge.  Below that, I'm willing to take on faith".  I suspect you
would
> >agree that's true, even if we don't agree just where the line should be
> >drawn.  You seem to feel that the level of abstraction exposed by a
> >language like C is the right level.  I'm not convinced you need to go
that
> >far down.  I'm certainly not convinced you need to start there.
>
> I think that if you don't understand memory,
> addresses and allocation and deallocation, or
> (roughly) how an hard disk works and what's
> the difference between hard disks and RAM then
> you're going to be a horrible programmer.
>
> There's no way you will remember what is O(n),
> what O(1) and what is O(log(n)) among containers
> unless you roughly understand how it works.
> If those are magic formulas you'll just forget
> them and you'll end up writing code that is
> thousands times slower than necessary.
>
> If you don't understand *why* "C" needs malloc
> then you'll forget about allocating objects.
>
> Andrea





More information about the Python-list mailing list