Ruby solution

Two attempts in one:
First try is using ```__DATA__``` - looking at other solutions, it seems this debatably falls foul of rule 3. 

The second solution catches syntax errors, does code substitution on the backtrace, and then evals the result. As far as I can tell, this doesn't actually break any rules... although it bends them to breaking point.

Figuring out the third solution is left as an exercise for the reader ;)