- .f
A function, formula, or vector (not necessarily atomic).

If a **function**, it is used as is.

If a **formula**, e.g. `~ .x + 2`

, it is converted to a function. There
are three ways to refer to the arguments:

For a single argument function, use `.`

For a two argument function, use `.x`

and `.y`

For more arguments, use `..1`

, `..2`

, `..3`

etc

This syntax allows you to create very compact anonymous
functions. Note that formula functions conceptually take dots
(that's why you can use `..1`

etc). They silently ignore
additional arguments that are not used in the formula expression.

If **character vector**, **numeric vector**, or **list**, it is
converted to an extractor function. Character vectors index by
name and numeric vectors index by position; use a list to index
by position and name at different levels. If a component is not
present, the value of `.default`

will be returned.

- ...
Additional arguments passed on to methods.

- .default, .null
Optional additional argument for extractor functions
(i.e. when `.f`

is character, integer, or list). Returned when
value is absent (does not exist) or empty (has length 0).
`.null`

is deprecated; please use `.default`

instead.