... gives functions flexibility

The ... parameter lets a function accept additional arbitrary arguments

e.g. na.rm (doesn’t make a difference in this case, but the function accepts it!)

ggplot(mpg, aes(displ, 1 / hwy)) + 
  geom_point() + 
  geom_lm(y ~ poly(x, 2), linewidth = 1, colour = "red", na.rm = T)