> Compared to Java and C++, Python has very meager facilities > for controlling how code is used. There is no const, and only > the slightest nod to access control .... my > suggestion is, just relax and try the Python way!
I'll second that. I came to Python after years of C++ (and Pascal - even more strict!) and initially thought that Python's approach, while great for a scripting language, would lead to problems on bigger projects. Well, I haven't written anything truly huge yet but I haven't hit any more problems than I did in C/C++ so far - and C/C++ introduce their own problems with overly strict typing, especially in OOP work. My experience of Smalltalk at university (and in Lisp too) should have made me less concerned but years of indoctrination by the software engineering establishment had led me to believe in the idea of the language controlling the programmer rather than the other way around... Although I haven't used it on big projects either, I suspect that Objective C as used in Apple's Cocoa framework may offer a good mix of freedom and strictness for large industry strength projects. The more I use Objective C the more I like its divisio of concerns betweentraditional C style coding and the OO features where dynamic dispatch is a huge win over C++/Java's strict typing. Similarly features such as __FILE__ and __LINE__ are often used in C because the debugger and error reporting support is so poor, in a duynamic, interpreted language with full exception handling the need is restricted to log files and audit trails etc. So while I miss __LINE__ especially, I don;t need it nearly as much as I did in C. And finally, because Python operates at a much higher level you only write a fraction of the code that you do in C, so the need for these navigation aids is much less. Alan G Author of the Learn to Program web tutor http://www.freenetpages.co.uk/hp/alan.gauld _______________________________________________ Tutor maillist - Tutor@python.org http://mail.python.org/mailman/listinfo/tutor