~sircmpwn/hare-specification unlisted

c29ec1ad33d6cef3a6c55c493814d35c914bde59 — Eyal Sawady a month ago 577eaff
Revert "Update match syntax"

This reverts commit 2332c6d96c47372ad94cdc795dc02bc202c76f82.

Signed-off-by: Eyal Sawady <ecs@d2evs.net>
1 files changed, 1 insertions(+), 10 deletions(-)

M language/expressions.tex
M language/expressions.tex => language/expressions.tex +1 -10
@@ 1566,8 1566,7 @@ expression shall terminate.

\nonterminaldef{match-case} \\
	\nonterminal{name} \terminal{:} \nonterminal{type} \terminal{=>} \nonterminal{expression} \\
	\terminal{\_} \terminal{:} \nonterminal{type} \terminal{=>} \nonterminal{expression} \\
	\terminal{null} \terminal{=>} \nonterminal{expression} \\
	\nonterminal{type} \terminal{=>} \nonterminal{expression} \\
	\terminal{*} \terminal{=>} \nonterminal{expression} \\
\end{grammar}



@@ 1600,14 1599,6 @@ resulting value to \nonterminal{name}. It shall insert this binding into a new
scope which applies to the \nonterminal{expression}.

\specsubsubitem
The \terminal{\_} form of \nonterminal{name}, shall discard the resulting value.

\specsubsubitem
The \terminal{null} form of \nonterminal{match-case} is identical to
\terminal{\_} \terminal{:} \nonterminal{type} form with the type set to
\terminal{null}.

\specsubsubitem
The match cases shall be \textit{exhaustive}, meaning that every possible type
of the matching expression is accounted for by a \nonterminal{match-case}. It
shall also be preicsely exhaustive: no two cases shall select for the same