A static C++ object-oriented programming (SCOOP) paradigmc mixing benefits of traditional OOP and generic programming
In Proceedings of the workshop on multiple paradigm with object-oriented languages (MPOOL)
Abstract
Object-oriented and generic programming are both supported in C++. OOP provides high expressiveness whereas GP leads to more efficient programs by avoiding dynamic typing. This paper presents SCOOP, a new paradigm which enables both classical OO design and high performance in C++ by mixing OOP and GP. We show how classical and advanced OO features such as virtual methods, multiple inheritance, argument covariance, virtual types and multimethods can be implemented in a fully statically typed model, hence without run-time overhead.