Написать метакласс AnnoCalc, который добавляет в конструируемый с его помощью класс такое свойство: если (1) в классе есть аннотация к полю, (2) самого поля у экземпляра/класса нет, и (3) эта аннотация — строка, то при чтении из этого поля строка-аннотация интерпретируется как выражение с участием других полей объекта/класса. Выражение вычисляется и возвращается соответствующее значение. Если какое-то из условий (1), (2), (3) не выполнено, класс ведёт себя стандартно (добывает имеющееся значение поля или вызывает исключение).
Скорее всего вам понадобится eval()
47 201
