Several exceptions can also be caught: begin # do something rescue RuntimeError, Timeout::Error => e # handling, possibly involving e end Ruby code can programmatically modify, at runtime, aspects of its own structure that would be fixed in more rigid languages, such as class and method definitions.
Μπορείτε επίσης να πιάσετε πολλές εξαιρέσεις: begin # ... rescue RuntimeError, Timeout::Error => e # χειριστής που μπορεί να χρησιμοποιεί το e end Ο κώδικας σε Ruby μπορεί προγραμματιστικά να αλλάζει, στο χρόνο εκτέλεσης, όψεις της ίδιας του της δομής που θα ήταν σταθερές σε πιο αυστηρές γλώσσες, όπως οι ορισμοί των κλάσεων και των μεθόδων.