How to use a closure as an argument of another closure?

And my understanding is that is because Rust reifies generic functions per the caller's specification; whereas, for example Scala could reuse the same instance of a generic function because it employs type erasure instead of reification. I explained my understanding more as follows in other thread:

Please correct me if I am mistaken.