
Ross Paterson writes:
On Mon, Apr 10, 2006 at 01:31:18PM +0800, Martin Sulzmann wrote:
You mention that nobody is really happy with FDs at the moment, but you don't provide concrete arguments why. I assume you refer to the following two issues:
1) FDs may threaten complete and decidable type inference 2) FDs are more verbose than say ATs
I find them unsatisfactory because the versions that are powerful enough (e.g. to allow the instances in the monad transformer library) need complex restrictions on the form of instances to ensure termination and confluence. They would make the language complex and unwieldy.
"Complex" termination condition I agree but the confluence conditions are natural. When it comes to termination it's pretty unlikely that simple conditions are sufficient (e.g. consider the simple AT extensions which results in undecidable inference). But I'm happy to be proven wrong. Martin