SML {\tt case} expressions are supported.
+\subsubsection{\tt iff}
+
+SML {\tt if} expressions are supported, except that the keyword that introduces them is {\tt iff}, to disambiguate from {\tt if} statements.
+
\subsubsection{\tt raise}
SML {\tt raise} expressions are supported.
+\subsubsection{\tt let}
+
+SML {\tt let} expressions are supported.
+
\subsection{Patterns}
Patterns are identical to SML patterns without support for user-defined infix constructors, though {\tt ::} is supported. Record patterns can include field names with no assigned patterns (the pattern for such a field is taken to be the field name) and "flex record" {\tt ...}'s to stand for unused fields.
\begin{verbatim}
if condition1 then
block1
-else if condition 2 then
- block 2
+elseif condition 2 then
+ block2
else
- block 3
+ block3
end
\end{verbatim}
There is also a shortcut integer iteration form:
\begin{verbatim}
-foreach var in fromExp .. toExp do
+for var in fromExp .. toExp do
block
end
\end{verbatim}