\Header{demo}{Demonstrations of R functionality}
\keyword{documentation}{demo}
\keyword{utilities}{demo}
\begin{Description}\relax
\code{demo} is a user-friendly interface to running some demonstration
\R{} scripts.  \code{demo()} gives the list of available topics.\end{Description}
\begin{Usage}
\begin{verbatim}
demo(topic, device = getOption("device"),
     package = .packages(), lib.loc = NULL,
     character.only = FALSE, verbose = getOption("verbose"))
\end{verbatim}
\end{Usage}
\begin{Arguments}
\begin{ldescription}
\item[\code{topic}] the topic which should be demonstrated.  If omitted, the
list of available topics is displayed.
\item[\code{device}] the graphics device to be used.
\item[\code{package}] a name or character vector giving the packages to
look into for data sets.  By default, all packages in the search
path are used.
\item[\code{lib.loc}] a character vector of directory names of \R{} libraries,
or \code{NULL}.  The default value of \code{NULL} corresponds to all
libraries currently known.  If the default is used, the loaded
packages are searched before the libraries.
\item[\code{character.only}] logical; if \code{TRUE}, use \code{topic} as
character string instead of name.
\item[\code{verbose}] a logical.  If \code{TRUE}, additional diagnostics are
printed.
\end{ldescription}
\end{Arguments}
\begin{Details}\relax
If no topics are given, \code{demo} lists the available demos.  The
corresponding information is returned in an object of class
\code{"packageIQR"}.  The structure of this class is experimental.  In
earlier versions of R, an empty character vector was returned along
with listing available demos.\end{Details}
\begin{SeeAlso}\relax
\code{\Link{source}} which is called by \code{demo}.\end{SeeAlso}
\begin{Examples}
\begin{ExampleCode}
demo() # for attached packages

## All available demos:
demo(package = .packages(all.available = TRUE))

demo(lm.glm)


 ch <- "scoping"
 demo(ch, character = TRUE)

\end{ExampleCode}
\end{Examples}

