[mercury-users] Any recent developments?

Peter Schachte pets at students.cs.mu.OZ.AU
Tue Jul 14 10:26:53 AEST 1998


In case someone else found this confusing...

On Tue, 14 Jul 1998, Fergus Henderson wrote:

[deletia]

> Changes to the Mercury language:
> ********************************
> 
> * The type system now includes support for Haskell-style type classes.
> 
>   Type classes let you specify an interface and then provide multiple
>   different implementations of that interface.  They're similar to
>   abstract base classes in C++ or "interfaces" in Java.
>   See the "Type classes" chapter of the Mercury Language Reference Manual
>   for details.
> 
>   Unlike Haskell 1.4, Mercury supports multi-parameter type classes,
>   but we do not (yet) support constructor classes, and nor do we
>   support default methods.

[*** insert line here ***]

>   The aim of this extension is twofold.  One aim is to provide more
>   fine-grained encapsulation control: nested sub-modules within a
>   single source file provide a convenient method for encapsulating
>   units smaller than a source file.  The other aim is to provide better
>   support for structuring large software packages that consist of many
>   source files.  Sub-modules can be defined in separate files, with
>   separate compilation, which means that you can also use this feature
>   to combine a group of existing Mercury modules into a single logical
>   package, with proper namespace control and encapsulation.
> 
>   See the "Modules" chapter of the Mercury language reference manual
>   for details.

[deletia]

[*** move this line up***]
> * The module system now includes support for sub-modules.

-Peter Schachte               | Logic is in the eye of the logician.
mailto:pets at cs.mu.OZ.AU       |     -- Gloria Steinem 
http://www.cs.mu.oz.au/~pets/ | 
PGP: finger pets at 128.250.37.3 | 




More information about the users mailing list