\Header{Syntax}{Operator Syntax}
\keyword{documentation}{Syntax}
\begin{Description}\relax
Outlines \R{} syntax and gives the precedence of operators\end{Description}
\begin{Details}\relax
The following unary and binary operators are defined.  They are listed
in precedence groups, from highest to lowest.
\Tabular{ll}{
\code{[ [[}& indexing\\
\code{\$ @}& component / slot extraction\\
\code{\textasciicircum{}}& exponentiation (right to left)\\
\code{- +}& unary minus and plus\\
\code{:}& sequence operator\\
\code{\%any\%}& special operators\\
\code{* /}& multiply, divide\\
\code{+ -}& (binary) add, subtract\\
\code{< > <= >= == !=}& ordering and comparison\\
\code{!}& negation\\
\code{\&  \&\&}& and\\
\code{| ||}& or\\
\code{\textasciitilde{}}& as in formulae\\
\code{-> ->{}>}& rightwards assignment\\
\code{=}& assignment (right to left)\\
\code{<-  \_  <{}<-}& assignment (right to left)\\
\code{?}& help (unary and binary)\\
}
Within an expression operators of equal precedence are evaluated
from left to right except where indicated.

The links in the \bold{See Also} section covers most other aspects of
the basic syntax.\end{Details}
\begin{Note}\relax
There are substantial precedence differences between \R{} and S.  In
particular, in S \code{?} has the same precedence as \code{+ -} and
\code{\& \&\& | ||} have equal precedence.\end{Note}
\begin{SeeAlso}\relax
\code{\Link{Arithmetic}}, \code{\Link{Comparison}}, \code{\Link{Control}},
\code{\Link{Extract}}, \code{\Link{Logic}}, \code{\Link{Paren}}

The \emph{R Language Definition} manual.\end{SeeAlso}

