Static analysis of non-local transfers: a proposal

Zdenek Tronicek tronicek at fel.cvut.cz
Sun Nov 23 01:55:25 PST 2008


Quoting John Longley <jrl at staffmail.ed.ac.uk>:

>
>     {==> int} m() {
>         class c {
>            {==> int} f = {==> return ;}
>         } ;
>         return new c().f
>     }
>

Hi John,

such restriction already exists under the current prototype. For example,
this

   interface X {
     int methodX();
   }

   public static X makeX() {
     X p = new X() {
       { => void } e = { => return null; };
       public int methodX() {
         e.invoke();
         return 42;
       }
     };
     return p;
   }

does not compile.

Zdenek
-- 
Zdenek Tronicek
Department of Computer Science and Engineering
Prague                   tel: +420 2 2435 7410
http://cs.felk.cvut.cz/~tronicek






More information about the closures-dev mailing list