Как вы можете сравнить два значения функции Scala для равенства. Вариант использования заключается в том, что у меня есть список функций, в которых список может содержать дубликаты, и я хочу только один раз выполнить каждую функцию.
Если у меня есть:
scala> object A {
     |   def a {}
     | }
defined module A
scala> val f1 = A.a _
f1: () => Unit = <function0>
scala> val f2 = A.a _
f2: () => Unit = <function0>
Если я попытаюсь сравнить функцию с == или eq, я получу false в обоих случаях:
scala> f1 == f2
res0: Boolean = false
scala> f1 eq f2
res1: Boolean = false