Język programowania typu open source Rubin jest znany z jasnej składni i łatwości użytkowania. To nie znaczy, że czasami nie pojawia się komunikat o błędzie. Jednym z najbardziej dokuczliwych jest wyjątek NameError Uninitialized Constant, ponieważ ma więcej niż jedną przyczynę. Składnia wyjątku jest następująca:
Aby rozwiązać problem z kodem, sprawdź go pod kątem możliwych przyczyn wymienionych powyżej pojedynczo. Jeśli znajdziesz problem, rozwiąż go. Na przykład przejrzyj kod w poszukiwaniu rozbieżności w użyciu dużych i małych liter w zmiennych i klasach. Jeśli znajdziesz i naprawisz, problem prawdopodobnie zostanie rozwiązany. Jeśli nie jest, przejdź do innych możliwych przyczyn, naprawiając je.
Jeśli klasa, do której się odwołujesz w kodzie, znajduje się w innym module, odwołaj się do niej z pełną nazwą, tak jak poniżej:
Wyjątkiem jest sposób, w jaki Ruby zwraca uwagę na problemy w kodzie. W przypadku napotkania błędu w kodzie wyjątek jest „zgłaszany” lub „zgłaszany”, a program domyślnie się wyłącza.
Ruby publikuje hierarchię wyjątków ze wstępnie zdefiniowanymi klasami. NameErrors należą do klasy StandardError, wraz z RuntimeError, ThreadError, RangeError, ArgumentError i innymi. Ta klasa obejmuje większość normalnych wyjątków spotykanych w typowych programach Ruby.