Teaching Programming

Chris Rebert clp2 at rebertia.com
Mon May 3 09:06:09 EDT 2010


On Mon, May 3, 2010 at 5:29 AM, Chris Rebert <clp2 at rebertia.com> wrote:
> On Mon, May 3, 2010 at 5:05 AM, Samuel Williams
> <space.ship.traveller at gmail.com> wrote:
>> Dear Friends,
>>
>> I'm looking for some help from the Python community. I hope this is the
>> right place to ask for information.
>>
>> I'm putting together a website aimed at high school students and teachers,
>> and would like to make sure the following page is as good as possible:
>> http://programming.dojo.net.nz/languages/python/index
>> In particular, "Why would I learn this language?" section needs to have a
>> few paragraphs. I don't use Python predominantly so I hoped that you could
>> provide the main reasons why Python is a language someone would want to
>> learn about.
<snip>
> - A very clean syntax and elegant design, compared to other languages

Also, I take issue with your classifying Python as orange with regard
to "Is the general syntax simple and concise?" on
http://programming.dojo.net.nz/resources/programming-language-comparison/index
Python's syntax is at least as simple, if not simpler, than Ruby's,
which you rate as green. Ruby may be /slightly/ more concise than
Python in certain cases due to its Perl influences, but those
instances of specialized syntax also make it more complex.
To wit, I refer you to
http://webcache.googleusercontent.com/search?q=cache:dyugd_KlqvcJ:blog.nicksieger.com/articles/2006/10/27/visualization-of-rubys-grammar+ruby+grammar+visualization&cd=1&hl=en&ct=clnk&gl=us
Note the complexity of the graph for Ruby's grammar. By comparison,
here is the same graph for Python (generated from a file linked to in
the post's comment thread):
http://rebertia.com/images/python_grammar_graph.png
(Disclaimer: Neither of the graphs are current.)

Additionally, you rate Python orange but Perl green for "Does the
language provide a useful and consistent set of object oriented
constructs?". Could you explain your reasoning for this? While neither
Python nor Perl have the level of object-oriented purity of Ruby or
Smalltalk, my understanding is that short of using CPAN libraries for
Perl or dealing in Perl 6, Perl and Python have a substantially
similar object model, so I don't how Python could rate below Perl in
this area.

Cheers,
Chris
--
http://blog.rebertia.com



More information about the Python-list mailing list