Do Modules Produce Side Effects?
- To: mathgroup at smc.vnet.net
- Subject: [mg47964] Do Modules Produce Side Effects?
- From: Harold.Noffke at wpafb.af.mil (Harold Noffke)
- Date: Tue, 4 May 2004 01:08:46 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
$Version "5.0 for Microsoft Windows [2000] (November 18, 2003)" MathGroup: The MathBook definition of Module tells me, "Module creates new symbols to represent each of its local variables every time it is called." I am led by this, and other Module descriptions, to conclude Modules do not produce side effects, like Blocks do. However, we have ... In[1]:= m=i^2 Out[1]= i^2 In[2]:= Module[ {}, m=4; 2*m ] Out[2]= 8 In[3]:= m Out[3]= 4 I expected m to remain unchanged from its original i^2. But Module changed m to 4, just as I would expect a Block to do. Am I misunderstanding something about the "side effect safety" of Modules? Regards, Harold
- Follow-Ups:
- Re: Do Modules Produce Side Effects?
- From: Yasvir Tesiram <yat@omrf.ouhsc.edu>
- Re: Do Modules Produce Side Effects?
- From: "J. McKenzie Alexander" <jalex@lse.ac.uk>
- Re: Do Modules Produce Side Effects?
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: Do Modules Produce Side Effects?