My mental model of how type inference works does not assign such special roles to "expression" vs "declaration" in terms of what is enabling inference here.  (For example, if you look at ML, you will see that top-level function definitions (`fun`, as opposed their expression form `fn`) are also assigned types via inference, despite not being expression forms.)

There are good reasons we have inference for closures and not for `fn` items, but this tutorial is not the place to discuss such matters.  In my PR for @mdinger I will have a revision to this part of the text to sidestep this problem.