Features of Ruby Ruby has simple syntax, partially inspired by Eiffel and Ada. Ruby has exception handling features, like Java or Python, to make it easy to handle errors. Ruby's operators are syntax sugar for the methods. You can redefine them easily. Ruby's OO is carefully designed to be both complete and open for improvements.
Modules are collections of methods.
Every class can import a module and so gets all its methods for free. Ruby features true closures. Not just unnamed function, but with present variable bindings. These blocks can be passed to methods, or converted into closures. It works with all Ruby objects.