I have to point out that (IMHO) you've taken that quote a _bit_ out of context. If you'll read the rest of my remarks, you'll see the qualification text: I was wrong about eval() in Python however my arguments remain standing in languages which don't support sandboxing - and, as a few readers pointed out, even Python's sandboxing isn't a sure bet. I used Python in my examples because that's where the original disagreement arose.
I think better advice would be "Don't use eval on user-supplied strings".
It is quite safe to use eval on strings you generate yourself. It's like using macros, but with added syntax errors.
That also works for marketing static typing - now with added syntax errors!
Reminds me of an Instructor I had who insisted against using printf calls with the format string created outside the call.