I've already mentioned some things that differs from lambdas. Another big difference is speed: No call overhead, local variables outside the block are faster to access, and it allows the optimizers to work across the block boundary.
As for speed, any reason why
lambda () {} ();
isn't optimized to inline?
pike-devel@lists.lysator.liu.se