cons := "p" | "t" | "k" | "m" | "n" | "ŋ" | "s" | "ʃ" | "ɾ"; vowel ::= a i u; rime := 4: | ; syll := tuple/flatten[cons, rime]; word := tuple/flatten[tuple/rep[2..4, syll]]; fn orthography { ["ʃ"] => "sh"; ["ŋ"] => "ng"; ["ɾ"] => "r"; ["ʔ"] => "'"; [ch] => ch }; fix word; ortho := tuple/join[tuple/map[orthography, word]]; ipa := tuple/join[word]; puts ortho " (pronounced /ˈ" ipa "/)";