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

Re: Strong Typing, Dynamic Languages, What to do?

Shriram wrote:

> Michael Vanier wrote:
> > As for the first comment, I've been interested in hybrid approaches
> > (usually called "optional static typing") for some time.  I guess the
> > canonical example is Dylan, though Common Lisp also qualifies to some
> > extent (depending on the compiler).  Such systems don't seem to have had as
> > much impact as you'd expect, for reasons I don't entirely understand (never
> > having worked with them).  
> One possible reason is that the type system is a hodge-podge that
> nobody can quite fathom -- a problem that none of the other type camps
> (ML, Scheme, Java or even C) suffer from.  

Is this primarily an academic objection - i.e. no-one can reason formally about these type systems - or a practical one, i.e. it somehow complicates programming without providing sufficient benefit in return?  Or equal measures of both (perhaps the former implies the latter)?  

If it's primarily an academic issue, I'd argue that's not necessarily a bad thing, since actual use of language features regularly gets ahead of formal understanding of those features.

> Your parenthetical phrase ("depending on the compiler") 
> points to one of the problems.

That's a function of standards and available implementations, presumably, which doesn't detract from the concept of optional static typing.

I like the idea of the hybrid/optional approach myself, but like Michael, don't have any direct experience with it.  Aren't there some Schemes with that capability, e.g. RScheme?  Anyone have experience with those?  Do they suffer the same "unfathomable hodge-podge" effect?

P.S. Is that a technical term?