code: def evaluate name, receiver, args, call = nil, context = nil
        matcher = Support::Matcher.new self, name, receiver, args
        matcher.match.new(receiver, call, context).send name, *args
      end
docs: Evaluate or cast