この動作は壊れているようです(私はScala 2.9.1を使用しています)
var b= new StringBuilder
これらはOKです:
b+='a'
b.append('b')
b.append("de")
これにより、コンパイルエラーが発生します。
b+="de"
StringBuilder#+ =(c:Char)だけが存在するのに、StringBuilder#append(c:Char)とStringBuilder#append(s:String)の両方がうまく共存する理由について何か考えはありますか?StringBuilder#+ =(s:String)を宣言して実装することの何が問題になっていますか?
それはScala型システムの見落としですか、それとももっと深い問題ですか?