You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When a Java class implements multiple functional interfaces with different arities, and used as callable function in Javascript,
GraalJS doesn't automatically resolve the appropriate method based on the number of arguments passed from JavaScript, unlike Nashorn.
It always resolves to the first implemented interface in the source code regardless of number of method args.
This creates migration challenges for existing Nashorn applications and reduces the ease of Java-JavaScript interoperability.
This functionality worked seamlessly in Nashorn, and while we understand GraalJS might have different design goals regarding JavaScript compliance, this automatic resolution of multiple functional interfaces was a useful feature for Java-JavaScript interoperability. The current behavior requires explicit handling which adds complexity to the codebase