Будет ли распаковка кортежей напрямую поддерживаться в списках параметров в Scala?

В Haskell вы можете написать:

x :: (Int,Int) -> Int
x (p,s) = p

В Scala вы должны написать:

def x(a: (Int, Int)) = a._1

или:

def x(a: (Int, Int)) = a match {
    case (p, s) => p
}

Почему бы не иметь что-то вроде

def x(_: (p: Int, s: Int)) = p

или

def x(foo: (p @ Int, s @ Int)) = p

?

10
задан letmaik 19 June 2011 в 00:40
поделиться