Bruno Desthuilliers <[EMAIL PROTECTED]> writes:
> Because static type checks impose a lot of arbitrary restrictions,
> boilerplate code etc, which tends to make code more complicated than
> it needs to be, which is a good way of introducing bugs that wouldn't
> have existed without static type checks. 

Why do you say that?  By metrics and anecdotal evidence, Haskell code
appears to be at least as compact as Python code.

> Depending on the application domain and some technical and
> non-technical constraints and requirements, it (often) happens that
> it's better to have the application deployed now with an occasional
> error message than to have it next year...

I suppose that includes the thing I'm currently working on.  For
some other stuff I've done, such errors would have caused huge hassles,
lost customer money, etc.  

> And FWIW, when it comes to "weird piece of input data", statically
> typed languages are not specially better than dynamic ones...

I know that ML gives compiler warning messages if you have a pattern
match (sort of a variant of a case statement, not a regexp match)
which is non-exhaustive.  And Haskell's Maybe monad is part of an
idiom that handles failing computations (like regexp matches) much
more gracefully than Python can.  Both of those would help this
situation.
-- 
http://mail.python.org/mailman/listinfo/python-list

Reply via email to