| Multiple Inheritance | Strings | Initialization of a New Object | Virtual Functions | Cross-Platform Compatibility | Speed | Size of Apps | Type-Checking | UI | Crashes System (Dumps Core) | Programming Environment |
| Smalltalk |
Does not provide | Yes | initialize method | Always virtual | Yes | okay (byte code, compiled to native on the fly) | BIG | None | Good, easy-to-use UI | Very rare | Wonderful |
| C++ |
Yes, with levels of protection: public, private and protected | No, but available in class library | constructor | Available if declared | Less than you might think | ZOOM! (Native code) | Small | Strongly typed | None-standard, platform-dependent | All the time! | Depends on implementation |
| Java |
Does not provide | Yes | constructor | Always | Theoretically, but still buggy practically | Not so Zoom! (Byte code, currently not compiled on-the-fly to native) | Okay, small for applets | Strongly typed | Cross-platform, complex, buggy | Like Smalltalk | Depends on implementation |
Python |
Yes, no protection | Yes | __init__ | Always | No problems so-far | Glacial (byte code) | Okay | No typing | Multiple choices: Tk, Motif, etc. Some cross-platform | Like Smalltalk | The Pits |