\Header{parse}{Parse Expressions}
\keyword{file}{parse}
\keyword{programming}{parse}
\begin{Usage}
\begin{verbatim}
parse(file = "", n = NULL, text = NULL, prompt = NULL, white = FALSE)
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\texttt{file}] the name of a file to read the expressions from.  Note
that the ASCII file \emph{must} end with a newline (\texttt{"\\n"}).
If \texttt{file} is \texttt{""} and \texttt{text} is missing or \texttt{NULL}
then input is taken from the keyboard.
\item[\texttt{n}] the number of statements to parse.  If \texttt{n} is negative
the file is parsed in its entirety.
\item[\texttt{text}] character. The text to parse, quoted.
\item[\texttt{prompt}] the prompt to print when parsing from the keyboard.  The
default, \texttt{NULL}, is to use \R's prompt, \texttt{options("prompt")[[1]]}.
\item[\texttt{white}] if \texttt{TRUE} then any white space separates expressions
otherwise only newlines or semicolons do.
\end{ldescription}
\end{Arguments}
\begin{Description}
\texttt{parse} returns the parsed but unevaluated expressions in a
list.  Each element of the list is of mode \texttt{expression}.\end{Description}
\begin{SeeAlso}
\texttt{\Link{scan}}, \texttt{\Link{source}}, \texttt{\Link{eval}},
\texttt{\Link{deparse}}.\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
cat("x <- c(1,4)\n  x ^ 3 -10 ; outer(1:7,5:9)\n", file="xyz.Rdmped")
# parse 3 statements from the file "xyz.Rdmped"
parse(file = "xyz.Rdmped", n = 3)
\end{ExampleCode}
\end{Examples}

