У меня небольшая проблема в Scala с типизацией. В Haskell я могу сделать это:
add :: (Num a) => (a,a) -> (a,a) -> (a,a)
Таким образом, Я хочу то же самое для класса Scala, например:
case class NumPair[A <: Numeric](x: A, y: A)
Но это, похоже, не работает. Но из-за документации Scala Numeric [T]
является единственной чертой, которая допускает эти операции, и, похоже, расширена за счет Int
, Float
и т. Д.
Есть какие-нибудь советы?