I agree with you Keith. As you pointed out, redefining compilerClass should allow you to relax the rules we are talking about. Alexandre On 24 Dec 2008, at 08:30, Keith Hodges wrote:
Michael Rueger wrote:
On Wed, Dec 24, 2008 at 10:58 AM, <bryce@kampjes.demon.co.uk> wrote:
This is a language design point. Is the convenience of knowing that an argument is never modified worth more than the convenience of being able to modify the argument?
What really is the convenience of modifying an argument? Having not to
Breaking the kind of conventions makes you think harder about what code does and that distracts you from what you really trying to do. Or should be doing ;-)
But you are not getting it. The point is about context. In the context of smalltalk the conventions make sense. BUT the whole point being there are other contexts even within the same environment.
Sake/Packages uses a smalllalk class as a database of package definitions, this is another context. My Mantis package uses a class to document fixes this is another context.
Class returns #compilerClass, this means it is possible to put a different compiler in there. Therefore it is expected that there be different contexts within the one environment.
I am not saying that the smalltalk conventions are bad, what I am saying is that the flexibility to break the conventions is useful in OTHER CONTEXTS, and in many ways makes it possible to have other use cases in the first place.
Keith
_______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
-- _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;: Alexandre Bergel http://www.bergel.eu ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.