Looking at the (rubydocs)[http://www.ruby-doc.org/stdlib-2.0/libdoc/pp/rdoc/PP.html], PP orders the internal contents of the object being output, e.g. keys and ivars.

That's desirable for diffing :)