看板 [ PLT ]
討論串[問題] Scala 的 Covariant/Contravariant/Inv …
共 17 篇文章

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者macbuntu (邀怪)時間16年前 (2009/03/18 08:57), 編輯資訊
0
0
0
內容預覽:
看你的描述, 覺得你沒有真的了解我們在說的那個差異.. 上面這個狀況不應該 OK 是沒錯, 有趣的是它不 OK 的原因.. 在 Java 的設計下, compile time error 是這種:. interface A<T> {. T get();. void set(T t);. }. voi
(還有395個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者sbrhsieh (sbr)時間16年前 (2009/03/18 08:25), 編輯資訊
0
0
2
內容預覽:
: public T get();. : public void set(T t);. : }. :. : static void func(A<? extends Number> a) {. : Number n = a.get(); // OK. : a.set(n); // compile t
(還有2420個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者godfat (godfat 真常)時間16年前 (2009/03/18 05:35), 編輯資訊
0
0
0
內容預覽:
雖然我覺得 c pointer 跟 java generic 不太能夠類比,因為 pointer 很難. 做到良好的限制,使得不正確的操作有效被阻擋。但是 java generic 依照. scala 的作法,是能做到不錯的效果。不過我也同意你說對於 java generic. 會使人砸自己的腳,而
(還有629個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者macbuntu (邀怪)時間16年前 (2009/03/17 18:58), 編輯資訊
0
0
0
內容預覽:
可以直接從 class/interface 的規格來決定 variance 阿,. 這就是我之前提的透過 implicit semantic rule 直接把 Scala 的想法放進 Java 裡. 而不加 +/-. 但是 explicit annotation 的好處就如同 @Override 這
(還有601個字)

推噓0(0推 0噓 0→)留言0則,0人參與, 最新作者sbrhsieh (sbr)時間16年前 (2009/03/17 17:51), 編輯資訊
0
0
0
內容預覽:
如果你看到一個對 C pointer 沒有正確觀念的人,卻使用了 pointer 寫出拿石頭. 往自己的腳砸的程式碼,你會說 C 語言有 pointer 似乎是沒意義的嗎?. 如果上頭的 func method 就是要那樣子(all a.xxx(...) statements)使用 a 指涉. 的
(還有489個字)