有關錯誤處理的一般要點

Prolog 具有異常,這是 Prolog ISO 標準的一部分。

使用 throw/1 可以丟擲異常,並且可以使用 catch/3 捕獲。

ISO 標準定義了許多必須或可能丟擲錯誤的情況。標準化的例外都是 error(E,_) 的形式,其中 E 表示錯誤。例如 instantiation_errordomain_errortype_error,見。

與例外有關的一個重要謂詞是 setup_call_cleanup/3,它可以看到。