[Cuis-dev] [RFC] Namespaces, changes to SystemDictionary, Object and a dictionary class for tracking environment implementations

Gerald Klix cuis.01 at klix.ch
Tue Oct 6 23:19:36 PDT 2020


On 2020-10-06 21:29, ken.dickey at whidbey.com wrote:
> On 2020-10-06 08:52, Gerald Klix wrote:
> 
>> Please bear with me until I can provide a simple example
>> implementation that handles environments.
> 
> Gerald,
> 
> Thanks much for this quick response.
> 
> I am not the world's brightest light, so sometimes it takes me a while 
> to get things.
> 
> Also, apologies for not yet completing my PackageEnvironments proposal. 
> You are motivating me to get back to it.
> 
> With so many ways to implement Namespaces/Environments, it is good to 
> have a number of concrete implementations to explore to find/get the 
> best outcomes.
> 
> I am very much looking forward to the fruits of your efforts!
> 
> Good on ya,
> -KenD
> 

Good Morning Ken,

Mentioning your PackageEnvironments approach motivates me to try again 
explaining ths
EnvironmentImplementationsDictionary thing:

Suppose we have two packages (or set of packages) that implement 
environments.
One is your "package environments (PS) implementation", the other one a 
simple environment implementation (SE).
Both implementations should provide
a so called environment manager singleton,
that manages their implementation's environments. These managers should 
be registered with the EnvironmentImplementationsDictionary singleton.
Of course both must implement the protocol
demanded by this class.
This way two our more environment implementations can coexist in one 
Cuis image.

I tried to implement Juan's (soft) requirement:
"
Yes. I want Cuis to be a good place for doing any kinds of experiments. 
Adding hooks for optional pluggable behavior is a big part of that."

You can look at
https://gitlab.com/klgcuisstuff/environments/-/blob/master/EnvironmentsBase.pck.st

and

https://gitlab.com/klgcuisstuff/environments/-/blob/master/SimpleEnvironments.pck.st

to get the details.
Please don't file these packages in, they are
currently broken.


HTH and Best Regards,

Gerald


More information about the Cuis-dev mailing list