def functionReturningMultipleValues() = (List(1), List(2), false)
val (l1, l2, b) = functionReturningMultipleValues
evaluates to: l1: List[Int] = List(1)
l2: List[Int] = List(2)
b: Boolean = false
and val first :: _ :: third :: rest = List(1, 2, 3, 4, 5, 6)
to first: Int = 1
third: Int = 3
rest: List[Int] = List(4, 5, 6)
Of course, if you already are familiar with Common Lisp, Clojure might be a better choice.
Here's a link to the original: https://www.zdf.de/video/dokus/megacitys-wenn-es-nacht-wird-...