
"Peter Dimov" <pdimov@mmltd.net> writes:
David Abrahams wrote:
Peter Dimov <pdimov <at> mmltd.net> writes:
David Abrahams wrote:
Is it really true that I can write
bind(f, _1) > _2
but can't write
_1 > _2
??
A limitation of the current implementation. On some compilers, the placeholders are function pointers and _1 > _2 can't be overloaded. There's no other technical reason that prevents _1 > _2 (or _1 > 0) from working; it'd fall out of the specification.
Peter, is there still a good reason for this implementation detail?
The reason is still as stated above. :-)
I mean, is there a reason that borland and GCC need to use function pointers?
If people could write:
*_1 < *_2
it would make a killer demo.
*_1 < *_2 is different, as the subexpression *_1 requires return type deduction. This is Lambda territory at the moment; Boost.Bind doesn't do deduction.
Yeah, OK. -- Dave Abrahams Boost Consulting www.boost-consulting.com