# [Perl 5](http://dev.perl.org/perl5/), 161

    @c=(@b=(++$n,bottle.'s'x@-,of,beer),on,the,wall),s//Take one down and pass it around, @c.\n\n@c, @b.\n/until/99\D+/;say$_."Go to the store and buy some more, $&"

Based on the solution from [eyepopslikeamosquito][1] found [here][2].

  [1]: http://www.perlmonks.org/?node_id=176576
  [2]: http://www.perlmonks.org/?node_id=954210