From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham autolearn_force=no version=3.4.4 X-Google-Thread: a07f3367d7,39579ad87542da0e X-Google-Attributes: gida07f3367d7,public,usenet X-Google-NewGroupId: yes X-Google-Language: ENGLISH,UTF8 X-Received: by 10.66.13.3 with SMTP id d3mr5406691pac.40.1368583666069; Tue, 14 May 2013 19:07:46 -0700 (PDT) Path: ln4ni2140pbb.0!nntp.google.com!npeer03.iad.highwinds-media.com!news.highwinds-media.com!feed-me.highwinds-media.com!border3.nntp.dca.giganews.com!border1.nntp.dca.giganews.com!border4.nntp.dca.giganews.com!border2.nntp.dca.giganews.com!nntp.giganews.com!newsfeed.news.ucla.edu!nrc-news.nrc.ca!News.Dal.Ca!news.litech.org!news2.arglkargh.de!newsfeed.fsmpi.rwth-aachen.de!news-1.dfn.de!news.dfn.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Niklas Holsti Newsgroups: comp.lang.ada Subject: Re: Seeking for papers about tagged types vs access to subprograms Date: Fri, 10 May 2013 21:04:42 +0300 Organization: Tidorum Ltd Message-ID: References: <17ceq51ydy3s0.s94miqqzbg5w.dlg@40tude.net> <1vrhb7oc4qbob$.q02vuouyovp5$.dlg@40tude.net> <19lrzzbgm77v6.1dzpgqckptaj6.dlg@40tude.net> <1bfhq7jo34xpi.p8n2vq6yjsea.dlg@40tude.net> <12gn9wvv1gwfk.10ikfju4rzmnj.dlg@40tude.net> Mime-Version: 1.0 X-Trace: individual.net WhShgamQHfaL5FFT4oVjqQIHNUpYPmLdRrFM7W8XVdXSHRtxBa Cancel-Lock: sha1:0QeZapS6e4ucizU/UWS6YWvs0eM= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.6; rv:17.0) Gecko/20130328 Thunderbird/17.0.5 In-Reply-To: X-Received-Bytes: 3044 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Date: 2013-05-10T21:04:42+03:00 List-Id: On 13-05-10 06:29 , Yannick Duchêne (Hibou57) wrote: > Le Fri, 10 May 2013 00:19:14 +0200, Randy Brukardt ... >> Yes, because we need to move beyond typing to other forms of static error >> detection. Typing is too rigid to do a good job -- you need to include >> statically known information about the contents of variables and >> parameters, >> which can change from line-to-line in a program. > > I feel the same. I often though typing can't do everything if it comes > with value type checking, while in some occasions, I tried to express > each validity condition with types and then type checking (that ends to > be crazy, indeed). A simple example, is paired invocation, where > whenever a sub‑program is is invoked, sooner or later, another > sub‑program must be invoked too on the same argument, ex. like `Open` > and later `Close`. This cannot be expressed with types and indeed > requires assertions. Are you familiar with the "typestate" concept? As I understand it, the intent is to check state-sequence rules such as Open-followed-by-Close. See http://en.wikipedia.org/wiki/Typestate_analysis. -- Niklas Holsti Tidorum Ltd niklas holsti tidorum fi . @ .