[m-rev.] global store implemented using typeclass

Holger Krug hkrug at rationalizer.com
Wed Jul 25 19:36:10 AEST 2001


On Wed, Jul 25, 2001 at 06:32:24PM +1000, Fergus Henderson wrote:
> Thanks.  BTW, generally I find `diff -u' easier to read.

OK. No problem.

> > ! % Proposal for a language extension: If we could define an abstract
> > ! % typeclass `store' in the following way:
> > ! % :- interface.
> > ! % :- typeclass store(S).
> > ! % :- implementation.
> > ! % :- typeclass store(S) where [].
> > ! % we could assure that it would be impossible to declare/define instances
> > ! % of class `store' outside the current module.
> > ! :- typeclass store(S) where [].
> 
> That language extension is already a part of Mercury.

Which version ?

> The code here should use it.

I could use it. I'll try it once again.

> The only other problem is the backwards compatibility issues.
> I'm not sure what the best solution to the backwards compability problem is.
> I can't see any better way than creating a new module and deprecating the old
> one, as you suggested.

What module name would be appropriate ?

-- 
Holger Krug
hkrug at rationalizer.com
--------------------------------------------------------------------------
mercury-reviews mailing list
post:  mercury-reviews at cs.mu.oz.au
administrative address: owner-mercury-reviews at cs.mu.oz.au
unsubscribe: Address: mercury-reviews-request at cs.mu.oz.au Message: unsubscribe
subscribe:   Address: mercury-reviews-request at cs.mu.oz.au Message: subscribe
--------------------------------------------------------------------------



More information about the reviews mailing list