let rec ninetyNineBottlesOfBeer = function 0 -> print_string "no more bottles of beer\n" | 1 -> print_string "1 bottle of beer on the wall. Take it down, pass it around\n" ; ninetyNineBottlesOfBeer 0 | n -> print_int n ; print_string " bottles of beer on the wall. Take one down, pass it around\n" ; ninetyNineBottlesOfBeer (n - 1) in ninetyNineBottlesOfBeer 99 ; (* ocamlopt -o ninetyNineBottlesOfBeer nintyNineBottlesOfBeer.ml *)