
Herbert Valerio Riedel
Maybe relevant to this discussion: the rejected paper "Controlling the scope of instances in Haskell" submitted for the 2011 Haskell Symposium together with the rejecting referee reports[2]
[1]: https://www.haskell.org/definition/from12to13.html
[2]: https://mail.haskell.org/pipermail/ghc-devs/2014-October/006876.html
Interestingly, the Review 4 states: ,---- | At a higher level, the paper did not address what could be described as | the "philosophy" behind type classes, which were built with the intent | of being used when there was only a single interpretation of an operator | on a type. `---- While this sounds intuitive to me, I have never heard it stated explicitly, and moreso, actually being specifically intended at design level. Is it possible to know more about this? It does seem relevant to this discussion.. -- с уважениeм / respectfully, Косырев Сергей