Как разрушить объекты Котлина в потоках

В Scala я могу легко извлекать значения из объектов (например, кортеж) с помощью частичной функции:

list .zip(list.reverse) .foreach{case (x, y) => println(s"$x $y")} 

Как я могу это сделать в Котлине? Кажется, деструкторы поддерживаются только для назначений и для циклов.

В Kotlin 1.0 используйте дополнительную декларацию val :

 list.foreach{val (x, y) = it; println(s"$x $y")} 

Команда говорит, что они уже работают над этой функцией (синтаксис был зарезервирован), и они, надеюсь, получат его в Kotlin 1.1:

 list.foreach{(x, y) -> println(s"$x $y")}