|
Optional
p:v is a pattern object which represents an expression of the form p, which, if omitted, should be replaced by v.
Optional is used to specify "optional arguments" in functions represented by patterns. The pattern object p gives the form the argument should have, if it is present. The expression v gives the "default value" to use if the argument is absent.
Example: the pattern f[x_, y_:1] is matched by f[a], with x taking the value a, and y taking the value 1. It can also be matched by f[a, b], with y taking the value b.
The form s_:v is equivalent to Optional[s_, v]. This form is also equivalent to s:_:v. There is no syntactic ambiguity since s must be a symbol in this case.
The special form s_. is equivalent to Optional[s_] and can be used to represent function arguments which, if omitted, should be replaced by default values globally specified for the functions in which they occur.
Values for Default[f, ... ] specify default values to be used when _. appears as an argument of f. Any assignments for Default[f, ... ] must be made before _. first appears as an argument of f.
Optional[s_h] represents a function which can be omitted, but which, if present, must have head h. There is no simpler syntactic form for this case.
Functions with built-in default values include Plus, Times and Power.
See The Mathematica Book: Section 2.3.9 and Section A.2.7.
See also: Alternatives.
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT. SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION. | |