In connection with the current debate about modules and classes, I will
describe the view we are trying to develop in Brisk, and then describe how
this gives a slightly different perspective on the global instance property at
the end.
We are trying to develop a meaning for overloading, including
Phil writes:
> GLOBAL INSTANCE PROPERTY: if an instance exists of a given
> class at a given type, this instance is in scope everywhere
> that the class and type are in scope.
>
> If this was not the case, then the point at which overloading was
> resolved (definition point or
Ian Holyer and Will Partain have both argued that the interaction
between type classes and the module system could be improved. I have
no doubt that they are right.
It may help to explain some of the motivation behind the current
system. As Haskell is designed currently, the following property
At last, an issue that I understand a bit.
Phil Wadler writes:
It may help to explain some of the motivation behind the current
system. As Haskell is designed currently, the following property is
satisfied:
GLOBAL INSTANCE PROPERTY: if an instance exists of a given