Both: * Allow only a single, GlobalNamespace * Lack support for method name polymorphism * Have limited visibility in the current job marketplace * Both were (largely) designed by fellows with notoriously strong opinions (and who both rather dislike C++) * Strong notions of "pure" OO - objects are the only first-class entities. (Basic types, such as integers and booleans are treated as objects.) SmalltalkLanguage: * Is usually run from ByteCode''''s * DynamicTyping * Only supports single inheritance * Classes are themselves objects, and are first class. EiffelLanguage: * DesignByContract * Typically compiled to native code * StaticTyping (ManifestTyping, not TypeInference). Full featured type system (with a few notable flaws) * Supports multiple inheritance. * Classes are ''not'' objects, and are second class. ---- Contributors: AluoNowu, SeanOleary ---- CategoryProgrammingLanguageComparisons CategorySmalltalk CategoryEiffel