Module
Usage
• Module[{x, y, ... }, expr] specifies that occurrences of the symbols x, y, ... in expr should be treated as local. • Module[{x = , ... }, expr] defines initial values for x, ... .
Notes
• Module allows you to set up local variables with names that are local to the module. • Module creates new symbols to represent each of its local variables every time it is called. • Module creates a symbol with name xxx$nnn to represent a local variable with name xxx. The number nnn is the current value of $ModuleNumber. • The value of $ModuleNumber is incremented every time any module is used. • Before evaluating expr, Module substitutes new symbols for each of the local variables that appear anywhere in expr except as local variables in scoping constructs. • Symbols created by Module carry the attribute Temporary. • Symbols created by Module can be returned from modules. • You can use Module[{vars}, body /; cond] as the right-hand side of a transformation rule with a condition attached. • Module is a scoping construct (see Section A.3.8). • Module constructs can be nested in any way. • Module implements lexical scoping. • New in Version 2.
|