Ну надо не забывать что все эти тепличные ситуации когда мы забываем про то что draw_shape может имеет смысл, но вот когда я могу написать parse(target: var int, parser: XmlParser) и parse(target: var float, parser: XmlParser)
и не убиваться по этому поводу когда пишу макросы/генерирую код