Size: a a a

Programming Offtop

2020 November 30

VP

Vladimir Petrakovich in Programming Offtop
dimiii
Вообще-то, мы ничего не знаем про f и её нейтральные элементы. Например:
listOfNotNull(2, 2).fold(0, ::prod) возвращает 0 там где 4 ожидается
Ок, тогда listOfNotNull(2, 2).reduceOrNull(f) ?: zero
источник

VP

Vladimir Petrakovich in Programming Offtop
Quantum Harmonizer
Когда запустил приложеньку из грэдла, поспал, закрыл приложеньку

15:58  Gradle build finished in 13 h 29 m 33 s 964 ms
Как же меня бесит, когда приложение запускается таким образом.
А ведь можно было бы во время сборки собрать параметры jvm в файлик, а потом просто запустить java отдельно с этими параметрами.
источник

BP

Bogdan Panchenko in Programming Offtop
Vladimir Petrakovich
Да просто listOfNotNull(a, b).fold(zero, f)
Ну лист создавать - такое. Но красиво
источник

VP

Vladimir Petrakovich in Programming Offtop
Bogdan Panchenko
Ну лист создавать - такое. Но красиво
Доверяем компилятору
источник

BP

Bogdan Panchenko in Programming Offtop
Vladimir Petrakovich
Доверяем компилятору
Что он это оптимизирует ?
источник

d

dimiii in Programming Offtop
Простите мне мою желчь
источник

VP

Vladimir Petrakovich in Programming Offtop
Bogdan Panchenko
Что он это оптимизирует ?
Да, именно
источник

(

( in Programming Offtop
Iaroslav Postovalov
в шарпе не лучше
а в шарпее такой же дестракчуринг, как в котлине?
источник

IP

Iaroslav Postovalov in Programming Offtop
(
а в шарпее такой же дестракчуринг, как в котлине?
нет
источник

IP

Iaroslav Postovalov in Programming Offtop
(
а в шарпее такой же дестракчуринг, как в котлине?
в котлине через методы componentX, в шарпе через метод, который принимает Out-параметры
источник

BP

Bogdan Panchenko in Programming Offtop
Vladimir Petrakovich
Да, именно
Ну нет. Тут ему порой вывод типов доверить нельзя
источник

VP

Vladimir Petrakovich in Programming Offtop
Bogdan Panchenko
Ну нет. Тут ему порой вывод типов доверить нельзя
За это ответственны не то что разные части компилятора, а вообще разные компиляторы
источник

BP

Bogdan Panchenko in Programming Offtop
Vladimir Petrakovich
За это ответственны не то что разные части компилятора, а вообще разные компиляторы
Это не значит что во втором компиляторе лучше
источник

BP

Bogdan Panchenko in Programming Offtop
Учитывая что фронт как раз меняют - то таких оптимизации мы долго не увидим
источник

VP

Vladimir Petrakovich in Programming Offtop
Bogdan Panchenko
Это не значит что во втором компиляторе лучше
Да и ладно
источник

VP

Vladimir Petrakovich in Programming Offtop
Bogdan Panchenko
Учитывая что фронт как раз меняют - то таких оптимизации мы долго не увидим
Вообще-то это скорее к JIT. Такие оптимизации kotlinc-jvm не делает и не должен.
источник

BP

Bogdan Panchenko in Programming Offtop
Vladimir Petrakovich
Вообще-то это скорее к JIT. Такие оптимизации kotlinc-jvm не делает и не должен.
Зачем такое отдавать на jit. Да и вдруг я похожий код захочу в js/native
источник

VP

Vladimir Petrakovich in Programming Offtop
И вообще, создать список из двух элементов рядом с операциями над BigDecimal - это не очень дорого
источник

VP

Vladimir Petrakovich in Programming Offtop
Bogdan Panchenko
Зачем такое отдавать на jit. Да и вдруг я похожий код захочу в js/native
В первом случае всё то же самое.
Во втором - да, это должен оптимизировать бэкенд.
источник

VP

Vladimir Petrakovich in Programming Offtop
Но изначальная беседа была, я думаю, не про красивый код, а не очень умные смарткасты
источник