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

Re: the forward method [dynamic vs. static typing]

From: "Pascal Costanza" <costanza@iai.uni-bonn.de>
> Peter van Rooijen wrote:
> > Based on this I started to wonder, "what exactly is the goal of a type
> > system?" and quickly googled for "goal of a type system" and found an
> > interesting variety of insights, and on "goals of a type system" and
> > what I quote below in :
> [...]
> There's something wrong with the wording of that question IMHO.

I don't understand. Are you saying that I should not be interested in the
goals of type systems?

I think that the goals of type systems are very interesting to know about.

If I know the goals of something, in the sense of the benefits it is
intended to provide, I can judge whether I am interested in the first place,
even before I need to start looking at which ones are best or which ones
have the best price/quality ratio or whatever.

For instance, if I know that the goal of door lock defrosters is to make
sure I can get in my car even when it has been freezing cold for a long
time, I can use that information to determine that I am not interested in
door lock defrosters, because I live and drive my car in Jamaica.

I am currently not using an annotation-based type system. Various people say
such systems are useful (just like people might say about door lock
defrosters). Isn't it reasonable for me to ask what the goals of such things
are, so that I may form an opinion on whether it might solve any problem
that I actually have?

> It's not that some people sat together, wrote up some requirements for
> something they later called "type system", and then tried hard to
> implement these requirements.
> It's more that it's somewhat natural to implement static checking in
> certain ways, and that people later realized that this can have certain
> benefits.

I don't buy that. If they didn't think there would be benefits, they
wouldn't have taken the trouble to implement them in the first place. I can
see that they may have discovered unanticipated benefits in certain
implementations, and those are relevant too, of course.

Let me know if I misunderstood your point.