pragmatic simplicity cpp