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

From: hendrik at topoi.pooq.com (hendrik at topoi.pooq.com)
Date: Fri Jun 1 09:23:42 EDT 2007

On Thu, May 31, 2007 at 05:20:06PM -0400, Matthias Felleisen wrote:
> 
> 
> On May 31, 2007, at 5:13 PM, Robby Findler wrote:
> 
> >My experience teaching programmers suggests that they have no idea of
> >how to predict the performance of their programs, and thus there is a
> >natural bias against using such functions, even when there is no
> >performance issue.
> >
> >Also, IMO, basic safety is so ... well ... basic that I believe the
> >unchecked versions shouldn't even exist (I'd be willing to have
> >versions without the runtime overhead if there are static guarantees
> >that they cannot fail, of course).
> 
> 
> The question is not one of individual functions being safe and  
> allowing programmers to create safe programs if they so wish. Instead  
> it is a question of providing a safe language so that all programs in  
> the language guarantee the "safety" property.
> 
> And yes, safety is basic. It's universal and shallow but it is a  
> threshold that a language should pass in this day and age. The  
> concept is 40+ years old and it is an embarrassment that a huge chunk  
> of computing infrastructure was intentionally build atop an unsafe  
> language.

The technology for making the software safe and still allowing lots 
of interesting data structures was well-established by 1968.  This 
antedated C.  I see some of this heritage in C's type system, but the 
saety aspects were largely ignored.

Decent systems languages that pay attention to safety issues have been 
designed, implemented, and used, but C remains dominant because it was 
there first.  the first-to-market issue again.

-- hendrik


Posted on the users mailing list.