Ruby lets you hook in and see (and change!) a lot of behavior of the core language. Methods, constants, classes, variables… Ruby lets you query them all, and change a lot about them.

These are just hooks – things Ruby calls in response to something happening. That’s different from, say, all the methods you can call to find our what’s defined and how – like instance variables, or method bindings, or…

Here’s summaries and links for all the hooks I could find (thanks to Google and StackOverflow!):

Methods

Classes

Modules

Marshalling

Coercion