Full threadacbart·#5 is a classic example of the Expression Problem[1]. Are you trying to add more shapes or more functions that operate on shapes?http://c2.com/cgi/wiki?ExpressionProblemView on HN