\HeaderA{name}{Names and Symbols}{name}
\aliasA{as.name}{name}{as.name}
\aliasA{as.symbol}{name}{as.symbol}
\aliasA{is.name}{name}{is.name}
\aliasA{is.symbol}{name}{is.symbol}
\aliasA{symbol}{name}{symbol}
\keyword{programming}{name}
\keyword{attribute}{name}
\begin{Description}\relax
\code{as.symbol} coerces its argument to be a \emph{symbol}, or
equivalently, a \emph{name}.  The argument must be of mode
\code{"character"}.  \code{as.name} is an alias for \code{as.symbol}.

\code{is.symbol} (and \code{is.name} equivalently) returns \code{TRUE}
or \code{FALSE} depending on whether its argument is a symbol (i.e.,
name) or not.
\end{Description}
\begin{Usage}
\begin{verbatim}
as.symbol(x)
is.symbol(y)

as.name(x)
is.name(y)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{x, y}] objects to be coerced or tested.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
\code{is.symbol} is generic: you can write methods to handle
specific classes of objects, see \LinkA{InternalMethods}{InternalMethods}.
\end{Details}
\begin{Note}\relax
The term \dQuote{symbol} is from the LISP background of \R, whereas
\dQuote{name} has been the standard S term for this.
\end{Note}
\begin{References}\relax
Becker, R. A., Chambers, J. M. and Wilks, A. R. (1988)
\emph{The New S Language}.
Wadsworth \& Brooks/Cole.
\end{References}
\begin{SeeAlso}\relax
\code{\LinkA{call}{call}}, \code{\LinkA{is.language}{is.language}}.
For the internal object mode, \code{\LinkA{typeof}{typeof}}.
\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
an <- as.name("arrg")
is.name(an) # TRUE
mode(an)   # name
typeof(an) # symbol
\end{ExampleCode}
\end{Examples}

