[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: dynamic vs. static typing
On Nov 24, 2003, at 11:57 AM, Anton van Straaten wrote:
> Abstract interpretation is, essentially, running a program before
> runtime -
> i.e. before a full set of inputs exist. Compilers effectively do this
> when
> they analyze a program's types. In a program containing type
> annotations,
> those annotations essentially form part of an independent program that
> can
> be run before the program in which they are embedded is run. The
> notes that
> Shriram previously referenced are a nice and accessible intro for this
> concept[1].
So when we want to do something like have a development system where
everything is live (like older LISPs, Smalltalk, Self, etc), and we can
change anything at runtime (rearrange inheritance hierarchies, add and
remove methods, variables, etc), of what use are the checks that were
done at compile time and are no longer valid?
-- Steve