Size: a a a

2018 December 23

Ⓢⓔⓡⓖ in Kotlin Moscow
https://medium.com/@rohanmaity/tail-call-optimization-in-jvm-with-kotlin-ebdf90b34ec9 Объясняется хвостовая рекурсия и её оптимизация в Kt
источник

I

Ilmir in Kotlin Moscow
Побуду занудой: это tail recursion optimization, а не tail call optimization. Tail call optimization в контексте котлина применима только к корутинам и позволяет избавиться от одной аллокации, уменьшает количество сгенерированных классов (то есть уменьшает к тому же method count) и добавляет мне седых волос.
источник

AN

Alexander Nozik in Kotlin Moscow
Вообще, сколько лет в Java/Kotlin, ни разу не возникало желания воспользовать хвостовой рекурсией. Пресловутый факториал кстати классно делается через sequence builder. A tailrec все разворачивает в циклы. Так циклы я и так умею.
источник

I

Ilmir in Kotlin Moscow
Что-то там Дейкстра, что-то там goto statement.
источник

(

( in Kotlin Moscow
Alexander Nozik
Вообще, сколько лет в Java/Kotlin, ни разу не возникало желания воспользовать хвостовой рекурсией. Пресловутый факториал кстати классно делается через sequence builder. A tailrec все разворачивает в циклы. Так циклы я и так умею.
А вот были бы трамплины
источник

(

( in Kotlin Moscow
источник

AN

Alexander Nozik in Kotlin Moscow
Они тоже не нужны :)
источник

I

Ilmir in Kotlin Moscow
На мой взгляд, сырых циклов, то есть не for each циклов, в пользовательском коде быть не должно. Если алгоритм нельзя выразить комбинацией стандартных (map, filter, join, etc), то его надо обобщить, запихать в библиотеку и, опционально, написать статью в журнал. Тогда им смогут воспользоваться твои коллеги, которые скажут тебе спасибо.
источник

I

Ilmir in Kotlin Moscow
Исключение - оптимизация.
источник

AN

Alexander Nozik in Kotlin Moscow
В принципе согласен, а при чем тут трамплины?
источник

I

Ilmir in Kotlin Moscow
Я не знаю, причем тут они.
источник

I

Ilmir in Kotlin Moscow
Я отвечал на "циклы я и так умею".
источник

AN

Alexander Nozik in Kotlin Moscow
ну я про foreach в общем то. Цикл по индексам разварачивается в (0 until n).foreach{}
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
Ilmir
Побуду занудой: это tail recursion optimization, а не tail call optimization. Tail call optimization в контексте котлина применима только к корутинам и позволяет избавиться от одной аллокации, уменьшает количество сгенерированных классов (то есть уменьшает к тому же method count) и добавляет мне седых волос.
Седые волосы - это ещё оптимистично сказано (🤔, посмотрев на твою фотку профиля)
источник
2018 December 24

Ⓢⓔⓡⓖ in Kotlin Moscow
Ilmir
На мой взгляд, сырых циклов, то есть не for each циклов, в пользовательском коде быть не должно. Если алгоритм нельзя выразить комбинацией стандартных (map, filter, join, etc), то его надо обобщить, запихать в библиотеку и, опционально, написать статью в журнал. Тогда им смогут воспользоваться твои коллеги, которые скажут тебе спасибо.
Посоветуй, пожалуйста. Есть массив из 100 значений LocalDateTime. Каким образом (красиво и идеологически правильно) получить дельты между ними (99 значений Period) ?
источник

(

( in Kotlin Moscow
Ⓢⓔⓡⓖ
Посоветуй, пожалуйста. Есть массив из 100 значений LocalDateTime. Каким образом (красиво и идеологически правильно) получить дельты между ними (99 значений Period) ?
dates.zipWithNext { ldt1, ldt2 -> delta(ldt2, ldt1) }
источник

Ⓢⓔⓡⓖ in Kotlin Moscow
👍
источник

AN

Alexander Nozik in Kotlin Moscow
Если они упорядочены конечно
источник
2018 December 29

Ⓢⓔⓡⓖ in Kotlin Moscow
http://www.cnews.ru/news/top/2018-12-28_rossijskomu_vuzuproslavlennomu_pobedami_na_chempionatah А вот и новогодний подарок от наших властей.
источник

PE

PureFatality Error in Kotlin Moscow
Отказ в аккредитации ИТМО касается только направления среднего профессионального образования. 

Все сдаем единый галактичнский экзамен...
источник