On Nov 11, 2007 3:34 PM, David MacIver <[EMAIL PROTECTED]> wrote:
> > Per-function type annotations are considered good practice in Haskell 
> > because
> > it has an undecideable type system but not in ML, where you generally see no
> > type annotations whatsoever.
>
> Haskell's core type system isn't undecidable as far as I know. Type
> inference is entirely possible and no less straightforward than in ML
> with Haskell's core Hindley Milner + type classes type system. It's
> more a case of readability and explicit public contracts for the
> module. Haskell's type system + a bazillion add-ons found only in GHC
> head is of course. ;-)

Sorry, talking at cross purposes (and I made a mistake). Type
*checking* for the core type system is decidable. Type inference isn't
(e.g. show(read "1") needs a type annotation).

In general I'm willing to live with features that can't be inferred as
long as a large enough subset of the language can be. Adding explicit
type annotations for features which allow more expresivity doesn't
strike me as an unreasonable trade off.

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to jvm-languages@googlegroups.com
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to