Squeak Starter

Scott Wallace scott.wallace at squeakland.org
Tue Oct 15 23:02:24 UTC 2002


At 8:38 AM -0700 9/24/02, Randal L. Schwartz wrote:
>...Walkback in current image: "You can't add Modules at the top level".
>
>{sigh}


This noxious "You can't add Modules at the top level" roadblock probably explains, more than any other single thing, why a large percentage of the Squeak community, including most of our most illustrious and powerful members who until the arrival of Modules had *always* lived and worked in the leading-edge Squeak development system, have steered away from 3.3a.

It was a shock initially, and then a source of ongoing annoyance over many months, when it turned out that once the Modules arrived, perfectly good fileouts were being rejected by the system.  People who wanted just to get on with their work were being thwarted.  Being told RTFM did not seem to make things better.

People had *thought* that they could keep living the way they had been living, and than when they *needed* to get into Modules, the technology would be there waiting.

But then it turned out that much old code couldn't file in, so that even people with no interest in Modules, and with no perceived current need for them, could not go on about their business.


I attach FWIW a tiny workaround that has helped lower *my* blood pressure as I operate in 3.3a, since I have frequent need to load code written in earlier Squeaks.

My solution does not modularize non-module-aware code, but it should at least allow you to *file in* your code.  Classes which previously generated the "You can't add Modules at the top level" error will now be graciously accepted and placed in submodules of People.  Once you have the code on board, you can proceed to use the Modules tools to make your code more module-savvy when and if you want to.

I'd be interested in hearing feedback on this naive but expedient little hack.  Should it go into the image?  It does not deal with any potentially awkward issues, it just brings code in, rather than rejecting it, so that you can start working with it from within Squeak.

Or would this be too much of an affront to the integrity of the Modules system?  Or does anyone care anymore?

Cheers,

 -- Scott
-------------- next part --------------
Skipped content of type multipart/appledouble


More information about the Squeak-dev mailing list