Partial application and function composition
#define F_IMPL(x, y, z) v(x + y + z)
#define F_ARITY 3
// 1 + 2 + 3
ML99_EVAL(ML99_appl(ML99_appl(ML99_appl(v(F), v(1)), v(2)), v(3)))// 4 5 6
ML99_LIST_EVAL(ML99_listMap(ML99_appl(v(ML99_add), v(3)), ML99_list(v(1, 2, 3))))#define ADD_3_IMPL(x) ML99_add(v(x), v(3))
#define ADD_3_ARITY 1
// 4 5 6
ML99_LIST_EVAL(ML99_listMap(v(ADD_3), ML99_list(v(1, 2, 3))))Last updated