http://ruby-doc.org/stdlib-1.9.3/libdoc/rubygems/rdoc/Gem/Sp...
The 'trail' parameter, an array, was implicitly duplicated by applying the '+' operator on each recursion through a dependency.
trail = trail + [self]