On Sat, 21 Jul 2001, Avi Bryant wrote:

> Ok.  151 bytes.  No warnings.
> 
> @b='#{n>0?n: :No} bottle#{:s if n!=1} of beer'
> @w=' on the wall'
> eval %{puts"#@b#@w, #@b\nTake one down, pass it around,",(n-=1;"#@b#@w.\n\n");}*(n=99)

Make that 149 by removing the parens around n=99.