On Thu, Mar 25, 2010 at 10:12 AM, Rémi Forax <fo...@univ-mlv.fr> wrote:
> I've also found useful to propagate expected type back to the calling
> method.
> Example:
> if (foo()) { ... }
>
> should be translated to indy foo ()Z instead of ()Object because if ()
> wait for a boolean.

Yeah, I suppose this is appropriate for any "call" that is seen to be
receiving a dynamic type, i.e.:

def foo(a:List, b:dynamic)
  a.get(b.size) # size should be indy size()I

I'll have to see what I'd need to do in Duby's type engine to have
"upstream" type requirements influence "downstream" inferred types.

- Charlie
_______________________________________________
mlvm-dev mailing list
mlvm-dev@openjdk.java.net
http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev

Reply via email to