class Redis

def _eval(cmd, args)

def _eval(cmd, args)
  script = args.shift
  options = args.pop if args.last.is_a?(Hash)
  options ||= {}
  keys = args.shift || options[:keys] || []
  argv = args.shift || options[:argv] || []
  synchronize do |client|
    client.call [cmd, script, keys.length] + keys + argv
  end
end