Variant handling, inheritance and composition in the ObjectMath computer algebra environment | doi.page