Dear all, I haven't got a reply from hugs-bugs, so I'll see if anyone here can answer the question. class foo a b | a |-> b where foo :: a -> b -> Int instance foo Int Float where foo x y = 0 instance foo [a] [b] where foo [x] [y] = foo x y g x y = (foo [x] y) + (foo [y] x) It is my conjecture that Hugs terminates on type-checking g because of a depth bound in the type-checker (although there is no indication from the type-checker that this is what is going on). Can anyone confirm or refute this conjecture? FWIW this is as part of the related work section for a paper that has been accepted to JFP: "Type-Checking Multi-Parameter Type Classes," by D. Duggan and J. Ophel. I'd appreciate cc-ing any replies to me, I'm not sure that I'm still on this mailing list. Cheers --dd
begin:vcard n:Duggan;Dominic tel;fax:(201) 216-8249 tel;work:(201) 216-8042 x-mozilla-html:FALSE url:http://guinness.cs.stevens-tech.edu/~dduggan/index.html org:Stevens Institute of Technology;Computer Science version:2.1 email;internet:[EMAIL PROTECTED] title:Associate Professor note:Web page: http://guinness.cs.stevens-tech.edu/~dduggan/index.html adr;quoted-printable:;;Department of Computer Science=0D=0AStevens Institute of Technology;Hoboken;New Jersey;07030;USA x-mozilla-cpt:;10656 fn:Dominic Duggan end:vcard
