[plt-scheme] Why do folks implement *dynamically* typed languages?

From: Michael Vanier (mvanier at cs.caltech.edu)
Date: Wed May 30 17:01:57 EDT 2007

Ocaml's type system is actually pretty straightforward for the most part, though people do have 
problems with hard-to-understand error messages.  Haskell's type system is much more challenging 
(especially if you include the huge number of nonstandard extensions in a compiler like ghc).  But I 
would prefer either of these to the unholy mess that is the C++ type system.  Of course, in Scheme 
you don't have any of these problems, but your programs are more likely to break at run time. 
Here's looking forward to more (soft or hard) typing systems for Scheme!  How about modular type 
systems?  Import this module, get this kind of type checking...

Mike

Prabhakar Ragde wrote:
> kanishka <nish2575 at yahoo.com> wrote:
> 
>> OCAML (and Haskell)'s type systems pose such challenges that only  
>> people with a PhD from a good group can really grok it so you have  
>> more filtering there. [...] a guy can't self study is way through
>> Pierce et al. 
> 
> I don't think that's quite true. I have not looked closely at OCAML, but 
> the type inference algorithm in ML does largely what you would expect 
> (that is, nothing too esoteric). Writing programs that type-check is 
> another matter, especially coming from the Java sandbox or the C++ 
> snakepit. But I think that working through Ullman's book on ML would 
> give one a pretty good foundation without much hassle. As for Pierce, I 
> think the first several chapters at least are easily within reach of a 
> senior undergraduate with decent marks. You just have to not be 
> intimidated by the notation and the idea of using formal techniques. 
> Whether you have the motivation to do any of this without a supervisor 
> or instructor breathing down your neck is another matter. --PR
> _________________________________________________
>  For list-related administrative tasks:
>  http://list.cs.brown.edu/mailman/listinfo/plt-scheme


Posted on the users mailing list.