For sake of uniformity, UFCS should apply everywhere as a general re-write rule, not just on functions.
a.b(args...) should first check for non-UFCS definition, then for b(a,args...): condition.assert; string.mixin expression.typeof it makes chaining easier, intermediate variables un-necessary, and maybe even implementation easier since the rule would be general.
