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
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
Evaluate or cast