On 6 August 2010 03:30, Brian Goetz <brian.goetz at oracle.com> wrote: >>> #A.getB().getC() > > Greedy. Evaluate t=A.getB(), then evaluate to #t.getC(). Huh? That is seriously confusing to read. Whereas A.getB()#getC() is a lot clearer in terms of what will be evaluated now and what captured. Stephen