Serpents: the Python language and Dragon Dynasty

Jul 23, 2006 23:32

To all programmers: What do you personally think of Python, the programming langauge?

1. Is it a good teaching langauge?
2. A good general-purpose language?
3. Is it "better" than C/C++ or Java?

How so, and why or why not?

In other news: ( Dragon Dynasty )

television, scifi, miniseries, programming languages, python, dragon dynasty, programming

Leave a comment

Comments 27

makingthematrix July 24 2006, 11:57:19 UTC
Personally, I find Python a bit... peculiar. On one hand, I think a teaching language should not have a garbage collector. Students have to learn that you should clean up after having a party. If you make them used to languages with garbage collectors, later it will be very hard for them to write in languages which do not have them. Like people who learn Java and then try to write something in C++. Syntax is very similar, inheritance rules are almost the same, everything's right and then... "err, what do you mean by a memory leak"? ;) On the other hand, for a person who learned C++ first, switching to Java is quite simple.
Also, I'd like to point out that I think it's a good practice to teach languages with a C-like and Pascal-like syntax first. These two are the most common among programming languages.
As for the second and the third point: IMHO, Python is good as a general-purpose scripting language, and in this field it can compete with Perl, Lua, and sometimes PHP. For big stand-alone applications I think C/C++ and Java are a ( ... )

Reply


(The comment has been removed)

(The comment has been removed)

An alternate viewpoint taiji_jian July 24 2006, 15:22:08 UTC
Well. It is just not true that you lose your affinity when tracking down a bug.

IME, people who dislike white-space delimiting are people who use bad style. Good style demands consistent indentation. It's a logical step for the parser to demand it and make use of it. In practical terms, white-space delmiting is a huge advantage in code legibility, it cuts down on line count, and makes debugging go faster by removing certain kinds of syntax error.

Reply

ws = sin zengeneral July 24 2006, 15:53:09 UTC
White-space should be thrown out at parse time; good style comes from discipline and a language should not try to restrict ones style.

Reply


altamira16 July 24 2006, 13:31:32 UTC
I had to use it in a graduate school CS course. It was interesting. I thought that the flexibility made it difficult to judge the code by anything other than its output. However, our teacher was laid back and judged it that way. Actually, he hated grading things.

Reply


Why Python is Cool taiji_jian July 24 2006, 15:13:36 UTC
So, as an alternative viewpoint, here is why some people think Python is a great teaching language:

http://www.ibiblio.org/obp/thinkCSpy/preface.htm

Reply


zengeneral July 24 2006, 16:12:14 UTC
A good teaching language requires discipline; Python, Java, C$, and others are powerful languages that reward students too early. Students need to be punished for carelessness; they deserve segmentation fauls/general protection errors when they mess up. With medieval thinking, would you let a youngster drive a hummer first? No, you let them drive a wagon, a ford fiesta, or a geo metro; they will learn that their driving influences whether or not they live or die. They will learn that others (library writers) influence there living potential. They learn because they are in a constant state of alert ( ... )

Reply

mapjunkie July 24 2006, 16:26:48 UTC
I disagree that students should work strictly low to high level. In my opinion, they should learn both a low-level (C or assembler) and a high-level language (scheme or lisp) at approximately the same time, such that they can be mentally flexible enough to use whatever language is appropriate to the task. There are certainly some very powerful ideas that they should master that are poor to communicate in C or assembler.

Reply

(The comment has been removed)

Re: to an extent. mapjunkie July 24 2006, 16:35:14 UTC
The risk is that they don't realize the need for a new language. One is not only cultivating skills, but cultivating taste.

Reply


Leave a comment

Up