別の関数に渡された関数に基づいて、別の値を返す必要があります。
したがって、与えられた:fun inc x = x + 1;
と:fun double [] = [] | double (h::t) = 2*h::double (t);
私が取り組んでいる関数を呼び出すことができるはずです。
呼び出し例 (作成している関数の名前は test です):
test (inc, 5);
- そして、それは6を返します
-また-
test (double, [1,2,3,4]);
- そしてそれは[2,4,6,8]を返します
関数が額面どおりにこれを行うことができないことは知っていますが、これは抽象化のレイヤーを通じて可能ですか?