2011-08-12 67 views

回答

13

不是一個完整的答案,但這裏有型預測某些用途,我也遇到過:

  • 類型級別元編程。例如,參見Michid的系列(部分IIIIII),Jesper的implementation of HListseries at Apocalisp

  • 解決方法啓用類型推斷(例如,這裏是一些以前的問題1,2,3)。

  • 一種將一堆類型捆綁到單個類型參數中的方法。例如,在我開發的矩陣庫中,我定義了trait Scalar { type A; type B; type C; ... },然後將其作爲單個參數傳遞給我的矩陣特徵,trait Matrix[S <: Scalar] ...各個類型可以稱爲S#A,S#B等等。在兩個類型爲Matrix[S]的矩陣之間,對於相同的S,這些類型將是兼容的(與路徑相關類型不同)。

+0

你鏈接的Jesper的帖子指出,代碼不工作,但以後的文章中解釋說,Scala的新版本支持: http://jnordenberg.blogspot.com/2009/09/type-lists-and-heterogeneously-typed.html – Blaisorblade

9

一件事型投影可用於爲部分類型的應用程序:

({type λ[x]=Tuple2[Int,x]})#λ