3 ms·
Defining abstract datatypes and legal operations on those datatypes is useful whether you do it with objects or Haskell type classes or C++ generics. It's easy
by cageface 15y ago
Defining abstract datatypes and legal operations on those datatypes is useful whether you do it with objects or Haskell type classes or C++ generics. It's easy to go overboard with objects but explicit interface definitions are a lot easier to reason about then big grab bags of functions.