python vs c#

Max M maxm at mxm.dk
Wed Sep 22 10:42:23 CEST 2004


Alex Martelli wrote:

> If you must troll, at least troll with some skill, "julio".  Better
> still, as many have already suggested, just go away, thanks.

Well, not to feed the troll, but there is a few relevant points in it's 
posting.

When writing big systems, it is nice to be able to have an enviroment to 
code in. Eg. an IDE.

I am mostly a Zope coder, and while it's a very powerfull system that 
now makes it possible to do a huge amouont of work in a short time, it 
has the famous Z-shaped learning curve.

It is really really hard to learn. This is caused by the system design 
(Which should be solved with Zope3). But I cannot help to think that a 
self-educating system would be of a big help. A system where 
introspection was well supported.

They do it in Z3 by making the programmer make more work, but it could 
probably have been nice if the language was able to do more of the work 
in that regards.

I have a feeling that the typelessness of Python can make this harder. 
Wrappers on top of wrappers on top of som kind unknown data type can be 
really hard to trace.

Eg. if I call a method called getAuthenticatedMember() what does it return?

In plain Zope it returns a user object, but if you have added the CMF to 
the system, it returns a user object that is wrapped with extra 
functionality.

Also the membership tool is wrapped itself several times. In Zope it is 
acl_users, in CMF it's the membership tool and in in Plone it's wrapped 
once more, but still called the membership tool.

Each layer adds functionality. This makes it really hard to find out 
what inteface you actually have available at what level.

An IDE that could make dynamic introspection on a system like that, 
would be of a big help. I think that static typed systems might be 
easier to write an introspective IDE for. This is an issue when the 
system get's a lot bigger than the language.


-- 

hilsen/regards Max M, Denmark

http://www.mxm.dk/
IT's Mad Science



More information about the Python-list mailing list