Composition not inheritance, polymorphism through interfaces, and packages for namespacing. First published on January 14, 2013. Last revised on January 31, 2022. Go has types and values rather than classes and objects. So can a language without classes or objects be object-oriented? While Go may not fit the typical mold of an OOP language, it does provide many of the same features, albeit in a sl