[squeak-dev] The Inbox: Environments-cwp.1.mcz
Colin Putney
colin at wiresong.com
Fri Jul 20 19:26:43 UTC 2012
On Fri, Jul 20, 2012 at 11:55 AM, <commits at source.squeak.org> wrote:
> A new version of Environments was added to project The Inbox:
> http://source.squeak.org/inbox/Environments-cwp.1.mcz
>
> ==================== Summary ====================
>
> Name: Environments-cwp.1
> Author: cwp
> Time: 20 July 2012, 11:55:20.793 am
> UUID: aa58b5e6-eb76-4ef3-9299-e2407616aebe
> Ancestors:
>
> Introduce environments.
This is a first step: basic implementation of Environment, plus a test
case (Tests-cwp.150) and a tweak to LookupKey (Collections-cwp.470)
that's necessary to let the tests pass.
Here's how I see the roadmap:
Replace SystemDictionary
- move these packages over to trunk
- replace the SystemDictionary in Smalltalk globals with an
Environment (see Environment class>>install)
- fix bugs and tweak code that manipulates globals
Refactor the Compiler
- introduce CompilationContext and the protocol that uses it
- make the existing public protocol of Compiler call through the
new protocol
- fix bugs and tweak Compiler clients where that makes sense
Implement FileIn
- Introduce EnvironmentLoader
- refactor the fileIn code to use it
- fix bugs and tweak fileIn clients where that makes sense
Implement tool support
- Update Browser and friends to be environment-aware
- Update Monticello to be environment-aware
- fix bugs
I think those are major bits needed for Squeak 4.4. There are
undoubtedly pieces that aren't obvious now, but I doubt there's
anything big hidden in the weeds. Note that there's nothing here that
requires multiple environments, or even exposes environments to the
casual programmer. Squeak 4.4 should ship with a single environment,
plus the capability to create more, if you know what you're doing.
Colin
More information about the Squeak-dev
mailing list
|