[Squeakfoundation]An architecture for sustainable Squeaking

Bob Hartwig squeakfoundation@lists.squeakfoundation.org
Mon, 04 Jun 2001 10:46:42 -0500


I agree with much of what you've said here, but have a bit of a problems with:

>(*) This means no more "String asUrl", because this makes the core module
>with String depend on the much less vital module PWS or whatever, so you
>have to load PWS to use strings. _Maybe_ we need to allow outer layers to
>add code in inner-layer-classes

One of the big advantages that a dynamically typed language gives us is the
ability to add class extensions without pain.  For the module system to
ignore this would be a real shame.  Let's not impose on ourselves, through
our tools or through our best practices patterns, the same constraint that
the Java folks have.

> but this creates spurious sideways
>interactions between modules. Perhaps only applications should be allowed to
>do this.

I've heard this before, by intelligent people, but I haven't seen
convincing evidence.  I've made several base class extensions over the last
8 years, and have never been bitten.  Can you give an example of the problem?