[TYPES] Interaction between type classes and modules

Derek Dreyer dreyer at mpi-sws.org
Tue Dec 4 05:24:43 EST 2018


Thanks for the plug, Steven, but I don't think my paper is the one
Phil is referring to.  We did point out an issue with coherence and
scoped instances (see §3.1), but the solution did not involve
signatures not mentioning a type class.  In fact, that wouldn't even
make sense in the MTC system since type classes were merely a specific
form of ML signatures (i.e., they were treated structurally, not
nominally) and so it would not even make sense to talk about
"mentioning" them.

Cheers,
Derek
On Tue, Dec 4, 2018 at 7:54 AM Steven Shaw <steven at steshaw.org> wrote:
>
> [ The Types Forum, http://lists.seas.upenn.edu/mailman/listinfo/types-list ]
>
> Hi Philip,
>
> That might be *Modular Type Classes* by Derek Dreyer, Robert Harper, and
> Manuel M.T. Chakravarty.
>
> https://people.mpi-sws.org/~dreyer/papers/mtc/main-short.pdf
> https://people.mpi-sws.org/~dreyer/talks/popl07.ppt
> https://people.mpi-sws.org/~dreyer/papers/mtc/main-long.pdf
>
> Cheers,
> Steve.
>
> [Re-sending as apparently I wasn't subscribed to the list]
>
> On Mon, 3 Dec 2018 at 23:39, Philip Wadler <wadler at inf.ed.ac.uk> wrote:
>
> > [ The Types Forum, http://lists.seas.upenn.edu/mailman/listinfo/types-list
> > ]
> >
> > I am trying to track down a paper I once read about type classes and
> > modules. The key result I recall is that if an instance of a type class is
> > declared in a module then, to preserve coherence, signatures exported by
> > the module should not mention the type class. Can someone please point me
> > to the paper? Cheers, -- P
> >
> > .   \ Philip Wadler, Professor of Theoretical Computer Science,
> > .   /\ School of Informatics, University of Edinburgh
> > .  /  \ and Senior Research Fellow, IOHK
> > . http://homepages.inf.ed.ac.uk/wadler/
> >
> > Too brief? Here's why: http://www.emailcharter.org/
> > The University of Edinburgh is a charitable body, registered in
> > Scotland, with registration number SC005336.
> >


More information about the Types-list mailing list