--Something like a "class that can't be instantiated".
Class class is a subclass of the
--"Class = module + instantiation capability"
--Restricted multiple inheritance
--Ruby can only inherit one class.
――Ruby can inherit any number of modules that are "like a class but not a class".
--Calling a class inheriting a module
include module will appear in the class's
-** When a class
include a module, you get an instance method of the module **.
--Modules cannot be instantiated. --Mix-in is just a "topping". It is a "module" for providing an implementation according to the main class, not a concrete object.
--Classes with the same name belonging to different namespaces are treated differently even if they happen to have the same name. --In Ruby, it is customary to use modules to provide namespaces.