Bahasa pemrograman open-source Rubi dikenal dengan sintaksanya yang jelas dan kemudahan penggunaannya. Itu tidak berarti Anda tidak akan sesekali mengalami pesan kesalahan. Salah satu yang paling menjengkelkan adalah pengecualian Konstan NameError Uninitialized Constant karena memiliki lebih dari satu penyebab. Sintaks pengecualian mengikuti format ini:
Untuk memecahkan masalah kode Anda, periksa untuk kemungkinan penyebab yang tercantum di atas satu per satu. Jika Anda menemukan masalah, atasi itu. Sebagai contoh, buka kode mencari perbedaan dalam penggunaan huruf besar dan kecil pada variabel dan kelas. Jika Anda menemukan satu dan memperbaikinya, masalah Anda mungkin terpecahkan. Jika tidak, lanjutkan melalui kemungkinan penyebab lainnya, perbaiki saat Anda pergi.
Jika kelas yang Anda rujuk dalam kode ada di modul lain, rujuk kelas dengan nama lengkapnya seperti ini:
Pengecualian adalah bagaimana Ruby menarik perhatian Anda ke masalah dalam kode. Ketika kesalahan dalam kode ditemukan, pengecualian "dinaikkan" atau "dilempar" dan program dimatikan secara default.
Ruby menerbitkan hierarki pengecualian dengan kelas yang telah ditentukan. NameError berada di kelas StandardError, bersama dengan RuntimeError, ThreadError, RangeError, ArgumentError dan lainnya. Kelas ini mencakup sebagian besar pengecualian normal yang Anda temui dalam program Ruby biasa.