range is a generic function: methods can be defined for it
  directly or via the Summary group generic.
  For this to work properly, the arguments … should be
  unnamed, and dispatch is on the first argument.
If na.rm is FALSE, NA
  and NaN values in any of the arguments will cause NA values
  to be returned, otherwise NA values are ignored.
If finite is TRUE, the minimum
  and maximum of all finite values is computed, i.e.,
  finite = TRUE includes na.rm = TRUE.
A special situation occurs when there is no (after omission
  of NAs) nonempty argument left, see min.