![](https://squidex.jugru.team/api/assets/srm/6fccbc6c-4417-42f2-8ee5-2e7feba578f8/vladimir-parfinenko.jpg?cache=3600&width=74&height=74&mode=CropUpsize)
Владимир Парфиненко
Компания: Huawei
Тип доклада: Доклад
Преобразование хвостовой рекурсии в цикл является популярной оптимизацией в функциональных языках программирования, но в Java-мире это преобразование окутано загадками.
Разберемся, можно ли в Java заменить хвостовой рекурсивный вызов на цикл, зачем вообще это делать, какие виртуальные машины этим занимаются (и легально ли?). Также попробуем сторонние инструменты, которые могут помочь оптимизировать программы в функциональном стиле. И, конечно же, посмотрим на дружественные JVM-языки, имеющие более выраженные функциональные наклонности (Scala, Kotlin и т. д.).
Компания: Huawei
Компания: Qameta Software