### Question:
BinaryProcedureBinaryFunction implements BinaryFunction<L, R, T> { public T evaluate(L left, R right) { procedure.run(left, right); return null; } BinaryProcedureBinaryFunction(BinaryProcedure<? super L, ? super R> procedure); T evaluate(L left, R right); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString(); static BinaryProcedureBinaryFunction<L, R, T> adapt(
            BinaryProcedure<? super L, ? super R> procedure);  }### Answer:
@Test public void testEvaluate() throws Exception { BinaryFunction<Object, Object, Object> f = new BinaryProcedureBinaryFunction<Object, Object, Object>(NoOp.instance()); assertNull(f.evaluate(null,null)); }