Article View: comp.lang.objective-c
Article #279Re: Optional static typing limits
From: Dan Bernstein
Date: Wed, 17 Apr 1991 19:30
Date: Wed, 17 Apr 1991 19:30
38 lines
2366 bytes
2366 bytes
In article <LIBERTE.91Apr16164831@babbage.ncsa.uiuc.edu> liberte@ncsa.uiuc.edu (Daniel LaLiberte) writes: > What are some other categories of problems that don't fit in existing > static typing systems? Is it possible to come up with a "fix" for > these problems in the ideal language, or will dynamic typing always be > "necessary", like goto is. Can we organize these and maybe learn > something about the problem? Amazing! Someone else is actually trying to solve problems and make programming easier, instead of arguing about exactly how hard it is! I like this guy's attitude. I propose we focus on just one problem: What should a type system look like in order to allow everything people want to do with types? In other words, what kinds of constraints should the programmer be able to express upon objects (in the general sense, not the OO sense) in order to achieve both safety and generality? Let's not argue whether dynamic typing is necessary. Let's just do what we have to so that it's obviously unnecessary. (Is that too upbeat for comp.lang.misc readers?) As a starting point: Ben, could you describe the Russell type system in more detail, or point us to references? I think the basic idea makes sense. If you apply certain operations to a value inside function f, then f should specify the value as anything subject to those operations. And, as a first sample problem to be solved by a typing system: How do we write a generic, type-safe sorting routine? What's the best that available languages can do to make this work? Remember, type-safe means that the sort routine will never tell you ``can't apply < to glorps'' at run-time, as a dynamically typed system would. We may have to separate the issues of typing for storage management and typing for typechecking/security/etc. Followups to comp.lang.misc. ---Dan
Technical Details
Message-ID:
<8493:Apr1719:30:0791@kramden.acf.nyu.edu>Path:
arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!psuvax1!hsdndev!cmcl2!kramden.acf.nyu.edu!brnstndReferences:
<LIBERTE.91Apr16164831@babbage.ncsa.uiuc.edu>Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!news-server.csri.toronto.edu!rpi!zaphod.mps.ohio-state.edu!wuarchive!psuvax1!hsdndev!cmcl2!kramden.acf.nyu.edu!brnstnd From: brnstnd@kramden.acf.nyu.edu (Dan Bernstein) Newsgroups: comp.lang.objective-c,comp.lang.misc Subject: Re: Optional static typing limits Message-ID: <8493:Apr1719:30:0791@kramden.acf.nyu.edu> Date: 17 Apr 91 19:30:07 GMT References: <LIBERTE.91Apr16164831@babbage.ncsa.uiuc.edu> Followup-To: comp.lang.misc Organization: IR Lines: 38