minden olyan függvényben, amelyben szándékosan hagynál kezeletlen
eseteket, vezess be egy utolsó, mindenre illeszkedő klózt (mindenesjellel
az argumentumok helyén), amelyben jelezd ezt a kivételt, argumentumában a
függvény nevével és lehetőleg a függény argumentumaival, pl.:
fun f (x::xs) l = ...
| f [] 0 = ...
| f xs n = raise MyError ("f " ^ list2string xs ^
" " ^ Int.toString n)
Így, ha mégis ráfutna az utolsó klózra, a jelzett kivételből pontosan meg
tudod állapítani, hogy melyik függvényben volt a hiba, és azt milyen
argumentumokkal hívtad meg.
Megjegyzés. A list2string függvény könyvtári függvényként
nem létezik, neked kell megírnod, ha valóban ki akarod írni az argumentum
értékét.