Closures (iterators and proc) are dynamically allocated at run-time with an 
address on the heap. At compile-time this is unknown and would differ depending 
on Linux, Windows, Mac. If you have enough info to construct your closure at 
compile-time, use a macro or template to generate an inline iterator or normal 
proc instead.

Methods are used for dispatching on run-time types, if your run-time type is 
already known at compile-time, you can use a normal proc instead of a method.

Reply via email to