[Haskell] Applicative translucent functors in Haskell

Simon Peyton-Jones simonpj at microsoft.com
Wed Sep 8 11:27:23 EDT 2004


| cumbersome. This message is an attempt to interpret some of Ken's
| results in idiomatic Haskell with the full use of type classes. We
| will also show that type sharing constraints can be expressed in a
| scalable manner, so that the whole translation is practically
| usable. Thus we can enjoy the sophisticated, first-class higher-order
| module system in today's Haskell. No new extensions are required;

Crafty.  

You might want to show it to Derek Dreyer and other ML module experts.  

The ML orthodoxy says that it's essential to give sharing constraints by
name, not by position.  If every module must be parameterised by every
type it may wish to share, modules might get a tremendous number of type
parameters, and matching them by position isn't robust. I think that
would be the primary criticism from a programming point of view.  I have
no experience of how difficult this would turn out to be in practice.

Simon


More information about the Haskell mailing list