を読み返していて、これ、
val add: (Double, Int) => Double = O.add
で行けるんだから、そもそも_
が要らなくて
O.add:((Double, Int) => Int)
でいけるのでは?と思って書いてみたら動いたという話です。要はメソッド型の式(O.add
はメソッド型の式と解釈される)に型注釈として関数型(function type)を書いてやればいいというだけの話です。オーバーロードされたメソッドをeta-expansionするには、今のところこれが最も手っ取り早い方法だといえそうです。