 The proposal has been criticized by Joshua Bloch on terms of being needlessly complex (adding function types and non-local returns) while providing little benefit for the average Java programmer over other simpler proposals.Closures were added to Java 8, but based on a different proposal than the BGGA one.It has been proposed by Bracha that choice of type system be made independent of choice of language; that a type system should be a module that can be "plugged" into a language as required.