# Retrieving the text of a message

Is there a simple, built-in way to retrieve the text of a message, given it's identifier (such as Power::infy)?

The documentation describes how Message does this: it looks for different language versions (Power::infy::langname), then it looks under the symbol name (Power::infy), then it looks under General (General::infy), then it uses $NewMessage ... it's pretty complicated. Is there any built-in, hidden/undocumented way that will let me retrieve the text of a message in a simple way, without issuing the message? I see two possibilities: 1. Reimplement the whole lookup procedure. This is a lot of work. 2. Implement a special stream and do something like Block[{$Messages = ...}, Message[symb::name]]. Also a lot of work (implementing the stream methods), and I'm not even sure it would work.

Or maybe there is an undocumented way. ?**Message* gives plenty of symbols, but it's not clear which may be interesting and what they do.

It is actually straightforward. You use Messages[symbol] to get the list, e.g.

(* {HoldPattern[Power::infy] :> "Infinite expression 1 encountered."} *)