[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: dynamic vs. static typing

Joe Marshall <jrm@ccs.neu.edu> writes:
> > Also, in an evolving system, providing static information that turns
> > out to be incorrect may be more costly than if we didn't bother to
> > encode that information explicitly (an arguable point).
> Any time you ask someone to provide redundant information, you strictly
> increase the error rate.

Errors detected statically and errors caught at run-time shouldn't be
lumped together.  Adding type information increases the rate of false
positives (errors reported for correct programs), but decreases the
rate of false negatives (errors not reported for incorrect programs).
Since the latter are only discovered at run-time, they're much more
important to reduce.

(I *think* I thought that through right.  No?)

But what you wrote is a great argument for type inference over
explicit annotation.