Это был ответ на вопрос из чата для новичков. А мне на практике такое не надо, например. (Ну да ладно, если б можно было, я бы вообще предложил языковые фичи удалять, а не добавлять)
Знаю кейсы на именованные параметры. Иногда хочется один два типа написать ручками а остальные оставить компилятору
Суета сует и томление духа.
С растом не знаком, но сталкивался с проблемой, похожей на эту - хотелось написать трансформацию по умолчанию. Близким по сути примером будет то, что сейчас есть две функции zip, с трансформацией и без, которая просто в пару склеивает. Хотелка - писать прямо в сигнатуре более общей: inline fun <T, R, V = Pair<T, R>> Iterable<T>.zip( other: Array<out R>, transform: (a: T, b: R) -> V = ::Pair ): List<V> Но можно просто писать ещё функцию сбоку, да.
Обсуждают сегодня