After pleroy's review of interface.hpp