[[!toc]]
+<a id=multivalues></a>
### More on multivalues ###
A multivalue is a series of *zero or more* values. They are the result of evaluating expressions that consist of *zero or more* expressions, separated by commas, and enclosed in parentheses. So these expressions evaluate to multivalues:
I agree it's annoying that these conventions are so diverse. There are plenty other commenting conventions out there, too.
-
+<a id=funct-declarations></a>
### Matching function values ###
A function value doesn't have any structure---at least none that's visible to the pattern-matching system. You can only match against simple patterns like `_` or the variable `f`.
end
+<a id=dollar></a>
### $ Syntax ###
Haskell has a useful bit of syntax that we will adopt. They use `$` as an infix operator that has the same kind of effect as Russell & Whitehead's period. It is semantically inert, and only affects grouping. It enables you to avoid some parentheses in lots of situations. For example, if you want to check that a sequence `xs` is not empty, you'd express that like this: