named pattern variable scoped as global, should be local
- To: mathgroup at smc.vnet.net
- Subject: [mg56696] named pattern variable scoped as global, should be local
- From: leenewman at gmail.com
- Date: Wed, 4 May 2005 00:33:07 -0400 (EDT)
- Sender: owner-wri-mathgroup at wolfram.com
When using a named pattern variable within a module, it should be
scoped locally within the pattern. However, this does not seem to work
as advertised. For example, shouldn't the pattern variable x in the
statements below be local to the pattern? Does anyone know whether
this is a bug, or whether I am just missing something about the usage
of variables in patterns/condition constructs?
(* this returns 14! *)
x = 7;
Module[{x},{1, 2, 3} /. x_ -> 2x];
(* this returns {2,4,6}, assuming q is not globally defined. *)
Remove[q];
Module[{q},{1, 2, 3} /. q_ -> 2q];
Lee
- Follow-Ups:
- Re: named pattern variable scoped as global, should be local
- From: DrBob <drbob@bigfoot.com>
- Re: named pattern variable scoped as global, should be local
- From: Andrzej Kozlowski <akoz@mimuw.edu.pl>
- Re: named pattern variable scoped as global, should be local