3

xコンパイラが と の型をy正しく推測できないのはなぜですか?
Scala の型推論に関する記事をいくつか読みましたが、なぜそれが不可能なのかまだわかりません。

object Test {
    def main(args: Array[String]) {
        def add(x: Int, y: Int) = x + y
        val f = (x,y) => add(y,x) // error: missing parameter type
    }
}
4

1 に答える 1

2

他の型でオーバーロードされる可能性があるためadd、あなたのような単純なケースを処理するために実装すると、コンパイラに多くの複雑さが追加されます。

編集

ご存じかもしれませんが、haskell はそのような宣言の型を推測できますが、それは haskell がオーバーロードをサポートしていないという事実によるものです。

于 2013-03-26T12:18:02.627 に答える