今日教えてもらった Ruby の意味不明なコード

コード

eval "a = 42"
a = p a

出力

42

さて、これの動作が理解できる Rubyist はどれぐらいいるのだろうか。
なお、詳しい解説は某ももんが氏がしてくれるはず。