Modules
stéphane ducasse
ducasse at iam.unibe.ch
Thu Feb 24 08:24:01 UTC 2005
sounds coooooool colin.
Stef
On 24 févr. 05, at 7:25, Colin Putney wrote:
>
> On Feb 22, 2005, at 7:53 PM, Dan Ingalls wrote:
>
>> Meanwhile, I'd like to proceed simply to ask for people interested in
>> putting modules into Squeak.
>
> Hi Dan,
>
> Chalk me up as interested in modularizing Squeak, as designer,
> implementor and user.
>
> One of the motivations for OmniBrowser was the observation that any
> modularization scheme would need tool support, and the current browser
> is an obstacle to that because it's difficult to modify. Indeed, the
> early versions of OB included package browsers based on PackageInfo
> packages, but I took those out on feedback from the community.
>
> I agree with Florin that versioning is a key part of organizing
> Smalltalk code. One of my biggest frustrations with Monticello is that
> it's not been of any use to the Guides and Harvesters. That is, it's
> great for applications built on Squeak, but not so good for Squeak its
> self. I'm now working on a version of Monticello with a redesigned
> versioning engine, which I hope will be more useful in managing the
> kernel and core libraries of Squeak. More on this in another post.
>
> I also implemented an experimental packaging system a few months ago,
> complete with an OB-based set of browsers. It's not quite finished,
> and I'm not sure it's the way to go, but it's interesting nonetheless.
>
> I quite like Alan Lovejoy's characterization of packages as units of
> separately deployable code, and I hope that doesn't get overlooked in
> the all the discussion of versioning, categories, namespaces,
> dependencies and so on. All those things are necessary to some degree,
> since they are ways of dealing with the additional complexity that a
> packaged image brings with it, but they're not end goals in
> themselves. Separately-deployable packages is what we're after.
>
> Some more specific things I'd like to see.
>
> - Decoupling the organization of the image (packages, environments or
> whatever) from the compiler's strategy for resolving names. This will
> make things like compiling in a sandbox, building small images,
> atomically loading packages and so on much easier.
>
> - Good tool support for packages. Browsers, debuggers, changesorters,
> testrunners, etc should all be package-aware.
>
> - Good tool support by packages. With a little care, we can make core
> execution machinery *much* easier to manipulate, and thus make it
> easier to write good tools. ClassBuilder is a good example: it is very
> difficult to deal with any other way than through the class definition
> doIts that appear in the browser.
>
> - A fast-loading and compact format for distributing code.
>
> Thanks for taking this on, Dan. I think it's really important.
>
> Colin
>
>
More information about the Squeak-dev
mailing list
|