.Open 99 Bottles of Beer on the Wall You'd have a lot more fun if you went to the following site: .See http://www.ionet.net/~timtroyr/funhouse/beer.html . MATHS description song::= ! $verse(99-(1..98;Id)) ! $e. This means: concatenate 99 verses number 99,98,97,....0 and and $e end verse. For i:1..99, verse(i)::= $botw($b(i)) $t1d $b(i-1) $otw "\n". botw(x)::=x $otw x ";\n". b::(0..)->string= 0+>"No more bottles of beer" | 1 +> " 1 bottle of beer" | map[i:2..] (i " bottles of beer"). ()|- b = following, .Table i b(i) .Row 0 "No more bottles of beer" .Row 1 "1 bottle of beer" .Row 2.. i ! " bottles of beer" .Close.Table otw::=" on the wall.\n". t1d::="Take one down, pass it around, \n". e::= $botw(0) "Go to the store and buy some more... ". .Close 99 Bottles of Beer on the Wall