Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2005
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*November
*December
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: SymbolName question

  • To: mathgroup at smc.vnet.net
  • Subject: [mg61811] Re: [mg61794] SymbolName question
  • From: Bob Hanlon <hanlonr at cox.net>
  • Date: Mon, 31 Oct 2005 01:17:05 -0500 (EST)
  • Reply-to: hanlonr at cox.net
  • Sender: owner-wri-mathgroup at wolfram.com

x=5;

SymbolName[Unevaluated[x]]

"x"

SetAttributes[mySymbolName,HoldAll];

mySymbolName[x_Symbol]:=SymbolName[Unevaluated[x]];

mySymbolName[x]

"x"


Bob Hanlon

> 
> From: "Matt" <anonmous69 at netscape.net>
To: mathgroup at smc.vnet.net
> Date: 2005/10/30 Sun AM 12:43:23 EDT
> Subject: [mg61811] [mg61794] SymbolName question
> 
> Hello,
>    It seems that if I want to print the 'name' of a symbol, that I need
> to save it in a variable before I actually use it.  Is this expected
> behaviour?  It would be imminently more useful if I could give any
> symbol to SymbolName and it would give me a string representation of
> the variable name.
> e.g.
> 
> a1Name = SymbolName[a1];
> a1 = Array[r, {2, 2, 2}];
> Print["The symbol ", a1Name, " has a value of ", a1];
> 
> works, but if I try this:
> 
> a1 = Array[r, {2, 2, 2}];
> Print["The symbol ", SymbolName[a1], " has a value of ", a1];
> 
> it doesn't, and I get the following error:
> SymbolName::sym : Argument {nested list} at position 1 is expected to
> be a symbol.  More...
> 
> The online help states the following:
> "Once you have made an assignment such as x = 2, then whenever x is
> evaluated, it is replaced by 2. Sometimes, however, you may want to
> continue to refer to x itself, without immediately getting the value of
> x.
> 
> You can do this by referring to x by name. The name of the symbol x is
> the string "x", and even though x itself may be replaced by a value,
> the string "x" will always stay the same."
> 
> This seems to indicate that what I want to accomplish should in fact
> work without the need to first save the string representation of a
> symbol name before any value is assigned to it.
> 
> $Version
> 5.1 for Microsoft Windows (October 25, 2004)
> 
> Thanks,
> 
> Matt
> 
> 


  • Prev by Date: Re: Multicore Calculations
  • Next by Date: Re: this is ridiculous...
  • Previous by thread: Re: SymbolName question
  • Next by thread: this is ridiculous...