I have a few quibles with your summary of Python's properties: On 21 Mai, 08:16, John Nagle <[EMAIL PROTECTED]> wrote: > If you have a computer science background, here's all you need > to know: Python is a byte-code interpreted untyped
Python is strongly but dynamically typed. The fact that you don't have to declare which type a variable is, doesn't mean it's untyped. > procedural In Python you can programm in imperative/procedural, object-oriented and functional style. It can thus be called a multi-paradigm language. IMO it is best suited for the object-oriented paradigm. > dynamic language with implicit declaration. Syntax is vaguely C-like. It shares many syntax rules with C (variable names, literals, functions, ...) but it doesn't look at all like C (no braces, semicolons, assignment expressions, pointers, ...). > Block structure is determined by indentation. Objects use a class > definition/ > explicit instantiation/multiple inheritance model. Most important, classes are defined at run-time, not compile time, which makes them highly dynamic. Furthermore, classes, functions and methods are first-class data- types, i.e you can pass them (or more correctly, references to them) around as arguments or assign them to variables. > Memory management > is safe and managed by reference counts backed by a garbage collector. > Weak references are supported. Built in data types are numerics, ASCII > and Unicode strings, dynamic arrays, fixed size tuples, and hashes. Python lists are much more than arrays. More like a linked list. You forgot sets. And functions, classes, methods, instances.... (see above) > Implementation speed is typically 2% of C. Execution speed is approx. 2% - 150% of C :-) Chris -- http://mail.python.org/mailman/listinfo/python-list