[Haskell-cafe] Re: exceptions vs. Either
alastair at reid-consulting-uk.ltd.uk
Thu Aug 5 07:24:48 EDT 2004
> I have a hard time understanding why functional programmers
> would not want more static typing guarantees, after all they
> can always use C if they dont like type systems!
I think the value of Haskell's type system is that it catches a lot of bugs
_cheaply_. That is, with little programmer effort to write the type
annotations, little effort to understand them and little effort to maintain
them as the program evolves.
In general, as we try to express more and more in the type system, the costs
go up so the goal in using a different programming style or extending the
type system is to catch more bugs without significantly increasing the cost.
At an extreme, we could probably use some variant of higher order predicate
calculus as our type system and specify that a sort function (say) returns an
ordered list but the programmer effort in doing so would probably be quite
Using Maybe and the like to catch more errors with the type system isn't as
expensive as using full-on specification and is often the right thing to do
but, in some cases, the benefits of programming that way don't justify the
effort required whereas the techniques suggested for reporting the location
of the problem are cheap and effective.
More information about the Haskell-Cafe