> IME "nullable by default" is one of the biggest
> sources of runtime crashes in high level OOP languages like C#, which is a
> shame because it really isn't that difficult to statically eliminate the
> vast majority of them, especially when you're sort of hand-waving the
> semantics of your language anyway and don't require it to be super
> rigorous...

I definitely agree.  After I'd been learning Haskell for 6 months and
then wrote a program in Java & C++, almost the first thing I did was
code up a generic Maybe<T> class in each language.  It is so much
clearer and more obvious to _explicitly_ have no value
(Maybe.Nothing()) as opposed to _implicitly_ having no value (null).
Now I find my Java & C++ Maybe<T> class indispensable when I am
programming in those languages.

Eric
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to