Re: Block vs. Module
- To: mathgroup at smc.vnet.net
- Subject: [mg15655] Re: [mg15590] Block vs. Module
- From: "Fred Simons" <wsgbfs at win.tue.nl>
- Date: Sat, 30 Jan 1999 04:28:49 -0500 (EST)
- In-reply-to: <199901280923.EAA13086@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Eckhard, When using Block, there might be an interaction between the local variables defined in Block and the variables you use yourself. Have a look at the following example: In[1]:= f[x_] := Block[ {i}, Sum[x^i, {i, 1, 5} ]] In[2]:= f[a] Out[2]= \!\(a + a\^2 + a\^3 + a\^4 + a\^5\) In[3]:= f[i] Out[3]= 3413 In this situation I would like to see a polynomial in i instead of a number. With Module, this cannot happen because Module creates names for the local variables that the user is supposed not to use: In[4]:= g[x_] := Module[ {i}, Sum[x^i, {i, 1, 5} ]] In[5]:= g[a] Out[5]= \!\(a + a\^2 + a\^3 + a\^4 + a\^5\) In[6]:= g[i] Out[6]= \!\(i + i\^2 + i\^3 + i\^4 + i\^5\) If you are only interested in variables that have numerical values, you can safely use Block instead of Module. Hope this helps, Fred Simons Eindhoven University of Technology
- References:
- Block vs. Module
- From: Eckhard Hennig <hennig@itwm.uni-kl.de>
- Block vs. Module