続・関数オブジェクト
必ずしもConsを使う必要は無かったらしい。
Functor.java
public interface Functor < Argument, Result > { Result evaluate(Argument arg); }
としておいて、
FunctorA.java
public class FunctorA < Argument extends Cons < Arg1, Cons < Arg2, Arg3 > >, Result > { Result evaluate(Argument arg){ return null; } }
というように複数の引数を取る際に指定すれば充分。*1