[m-rev.] global store implemented using typeclass

Fergus Henderson fjh at cs.mu.OZ.AU
Thu Jul 26 00:50:42 AEST 2001


On 25-Jul-2001, Holger Krug <hkrug at rationalizer.com> wrote:
> 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 ?

I'm not sure exactly; it has been around for a while, but I think it only
*worked* properly since the 2001/05/03 rotd.

> > 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 ?

I don't have any great ideas about that... `mutvar'?

-- 
Fergus Henderson <fjh at cs.mu.oz.au>  |  "I have always known that the pursuit
The University of Melbourne         |  of excellence is a lethal habit"
WWW: <http://www.cs.mu.oz.au/~fjh>  |     -- the last words of T. S. Garp.
--------------------------------------------------------------------------
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