~90% of implementation of my own Expression string formatter, based on ExpressionVisitor