适当的Scala语法将高阶函数转换为匿名函数?

Nic*_*dov 3 functional-programming scala anonymous-function higher-order-functions

我想inverse在下面的例子中消除该函数,并直接在调用中创建一个匿名函数bar.任何人都可以建议正确的语法?我尝试了一些变化,但无法编译任何东西.

object Test {

  def foo(p: Int => Boolean): Boolean = {
    def inverse(p: Int => Boolean): Int => Boolean = {
      e: Int => !p(e)
    }

    bar(inverse(p))
  }

  def bar(p: Int => Boolean): Boolean = true

}
Run Code Online (Sandbox Code Playgroud)

Jen*_*der 12

这应该工作

bar(!p(_))
Run Code Online (Sandbox Code Playgroud)

stackoverflow说这个答案太短了.