Qual é o objetivo de várias cláusulas de parâmetro nas definições de função no Scal

Estou tentando entender o objetivo desse recurso de linguagem de várias cláusulas de parâmetro e por que você o usaria. Por exemplo, qual é realmente a diferença entre essas duas funções?

class WTF {
    def TwoParamClauses(x : Int)(y: Int) = x + y
    def OneParamClause(x: Int, y : Int) = x + y
}

>> val underTest = new WTF
>> underTest.TwoParamClauses(1)(1) // result is '2'
>> underTest.OneParamClause(1,1) // result is '2' 

Há algo sobre isso noScala especificação no ponto 4.6. Veja se isso faz algum sentido para você.

NB: a especificação chama essas 'cláusulas de parâmetros', mas acho que algumas pessoas também podem chamá-las de 'listas de parâmetros'

questionAnswers(5)

yourAnswerToTheQuestion