
24 Aug
2011
24 Aug
'11
9:17 p.m.
Dave Abrahams wrote:
I suppose the symmetrical non-lazy version looks like:
f(x) => doesn't call f f(x)(y) => doesn't call f f(x)(y)(z) => doesn't call f f(x)(y)(z)() => calls f
This allows you to express bind( f, x, y, z ), which was impossible before, but you've now lost the capability to express bind( f, x, y, _1 ), which was. bind( f, _1, y, z ), which is often needed in practice, is possible under neither, which makes me view this whole exercise as somewhat academic.