Proste wyjatki w OCaml'u

Wyjatek, ktory nie przechowuje zadnych dodatkowych informacji definiujemy przez:

exception Nazwa_wyjatku

Przy czym nazwa wyjatku musi byc napisana od duzej.


Wyjatek rzucamy wyrazeniem:

raise Nazwa_wyjatku

Wyjatek jest rzucany w momencie obliczenia takiego wyrazenia.


Wyjatek rzucany przez wyrazenie e1 lapiemy piszac:

try e1 with Nazwa_wyjatku -> e2

Semantyka tego kodu wyglada tak:

Jesli w powyzszym wyrazeniu zamiast Nazwa_wyjatku napiszemy _ badz zmienna, to klauzula with bedzie lapala dowolny wyjatek. Przy czym w drugim wypadku zlapany wyjatek zostanie zwiazany z dana zmienna, ktorej mozna uzyc w wyrazeniu e2 (np. rzucic go jeszcze raz).


Wiecej o wyjatkach bedzie na wykladzie.