Java First Class Function Vs Higher Order Derivatives