Inne iteratory przeciążanie operatorów (ang. ) normalne i zaawansowane właściwości zorientowania obiektowego (klasa, metoda...) obsługa wyjątków (ang. ) wyrażenia regularne wbudowane w składnię liczby całkowite o dowolnych rozmiarach dodawanie metod do instancji klasy – możliwa jest zmiana lub dodanie metody do instancji danej klasy bloki i lambdy () – wygodne przekazywanie funkcji jako parametrów „Duck typing” – rozpoznawanie typów na podstawie ich zachowania, a nie deklaracji moduły – rodzaj wielodziedziczenia pozwalający włączyć gotową implementację zbioru metod do danej klasy możliwość zmiany praktycznie wszystkiego – dodanie dodatkowych metod do klasy Array, czy zmiana sposobu drukowania liczb całkowitych są niezmiernie proste. zmienne leksykalne modyfikowalne w czasie działania programu
Składnia Składnia Ruby jest podobna do Perl i Python. Definicje klas i metod są sygnalizowane za pomocą słów kluczowych, podczas gdy bloki kodu można definiować zarówno za pomocą słów kluczowych, jak i nawiasów klamrowych. W przeciwieństwie do Perl, zmienne nie muszą obowiązkowo zaczynać się od sygnetu. Jeśli są używane, sygnet zmienia semantykę zasięgu zmiennej. W praktyce nie ma rozróżnienia między wyrażeniami a instrukcjami.