Something that is worth considering if we want functional interfaces to be declared covariant/contravariant/invariant in Java.next http://www.cs.cornell.edu/~ross/publications/mixedsite/ Rémi