
Hi, Am Mittwoch, den 17.07.2013, 09:46 +0200 schrieb Henning Thielemann:
On Wed, 17 Jul 2013, Bardur Arantsson wrote:
On 2013-07-16 23:45, Henning Thielemann wrote:
I think his wish was to ensure that e.g. 'map' has the same type in GHC, fay, JHC and others, although it might be implemented differently (with foldr/build, or stream-fusion, or whatever).
Exactly!
(But perhaps I'm just a natural pessimist -- it may not matter much in practice.)
I guess that it can happen easily, that a function type has different class constraints based on the implementation. A type enforced by the 'base' package would avoid that people rely on weak constraints of a certain implementation.
there won’t be many base re-implementations, and these will be carefully crafted. I’d leave it to those people to pay attention to these details, without over-engineering a technical solution. It should be easily to whack up a script that extracts the API of a package (e.g. a list of modules and their contents); just run in on both implementations and diff them. In fact, I think I saw someone create such a tool already; I just don’t remember who or where. If you want to make it more formal, we can put this file somewhere as a „specification“. Greetings, Joachim -- Joachim “nomeata” Breitner mail@joachim-breitner.de • http://www.joachim-breitner.de/ Jabber: nomeata@joachim-breitner.de • GPG-Key: 0x4743206C Debian Developer: nomeata@debian.org