----------------------------------------------------------- -- Print the lyrics to the song '99 bottles of beer' output = range(99, 1) |> map(showBeer) |> printLines beerFmt = """{} of beer on the wall! {} of beer! You take one down, pass it around {}""" showBeer(n) = format( beerFmt, [showBottle(n), showBottle(n), nextBeer(n - 1)] ) nextBeer(n) = if n == 0 then "No more bottles of beer on the wall!" else format("{} of beer on the wall!\n", [showBottle(n)]) ----------------------------------------------------------- -- Get appropriate singular / plural form of 'n bottle(s)' showBottle(n) = format("{} {}", [n, bottleStr]) where bottleStr = if n == 1 then "bottle" else "bottles"