I disagree - allowing for type inference on the closures will make for a much more pleasant language, whereas requiring type annotations on top level functions makes sense for lots of reasons.
You can still have your type inference without forcing the unnecessary requirement that local functions be `fn` while top functions be `func`.