Leyendo el post de Ola Bini sobre antipatrones(Recomiendo leer también los comentarios) se encontró con un problema cuando se intenta realizar un debug sobre el método eval(), instance_eval() y module_eval().
El problema es el siguiente:
Si se utliza eval() de la sisguiente forma :
eval("puts 'Hola Mundo'")
el tracer no brindará toda la información necesaria para para el debugging. La forma correcta de su uso es:
eval("puts 'Hola Mundo'" , binding , __FILE__ , __LINE__ )