This link has been bookmarked by 6 people . It was first bookmarked on 01 Jun 2008, by Craig Snow.
-
17 Mar 10
-
09 Oct 09
-
11 Jun 08
-
I’ve been using Python for maybe 4 or 5 years now. On the whole, the experience has been very positive: big pluses include the excellent (although rather stylistically disjoint) standard library; built-in collection types and list comprehensions; the experience, at least, of finding that duck typing actually “sort of works”; and the clean syntax. However, the “elegant” indentation-based scoping for which it’s so famous is, all told, a very bad idea, regardless of what die hard Pythonistas may tell you.
Let’s start with a consideration of syntax — the most visceral feature of a language. Syntax is the most immediate feature of a language, and you know right from the start whether or not you like the feel of it. User interfaces appear secretly everywhere, from the symbols chosen to represent particular quantities in algebra to the syntactic sugar aspects of a programming language. Some experienced coders, especially those who know several languages well, may dismiss syntax-worrying as pointless and superficial, but I’m not so sure: a good syntax makes it not only fast to code up common tasks, but it will also emphasise the structure of an algorithm at a glance and be based on a few consistently applied core concepts. This is a lot more than lily gilding. Strictly, I can do anything in any Turing complete language, so the whole point of a good language is that it makes code for its target tasks readable, elegant and extensible: syntax plays a major role here. Python does well from this point of view: you can see right away that this is a language which doesn’t render your own code unreadable when you go for a whole week without reading it. Contrast Lisp or Perl, or PHP: all serious languages suffering from serious syntactic defects (okay, so the most serious is the least heavily used… but that’s got a lot to do with it having the worst syntax).
-
-
30 May 08
Would you like to comment?
Join Diigo for a free account, or sign in if you are already a member.