On Mon, Mar 31, 2008 at 09:23:36AM -0700, Christopher Smith wrote:
Darren New wrote:
I'm more on Meyer's side of the fence: if your language has warnings instead of errors, you've designed it wrong.
Yeah, 'cause we've been able to come up with a language where the compiler can prove that everything is correct. ;-) Haskell, ML, and to a lesser degree Eiffel come about as close as you can get, and you can see they don't exactly have a huge user base for some reason.

There are a lot of really simple things that languages can do, like not
requiring pointer manipulation for ordinary things that eliminate large
classes of errors.  There is a reason for the popularity of Java, Python,
and even C#.

Heck, we can't even solve the halting problem.

Anyway, here in the real world we have the option of treating warnings as errors. I encourage you to investigate this option.

It's always a tradeoff between what is permissible in the language and its
safety.  A language that requires extensive idiomatic knowledge of
low-level details isn't exactly condusive to writing correct programs.

I think Haskell and ML aren't popular because they are too extreme in the
other direction.  Anything slightly out of the ordinary requires extensive
hoop-jumping.

I'm also starting to feel that languages are often popular for the exact
same reasons that they are bad.

David

--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-lpsg

Reply via email to