
Alexandr
20.09.2018
19:58:14
Не скоро завезут короче
Хотя наверно можно попробовать спросить тут @relizarov, но думаю другого ответа не получим

Alexander
20.09.2018
20:00:24
Да. Но тикет есть. Там даже какое-то движение. Просто не понятно зачем. Фичи новых jvmвставлять будут. Просто не очень быстро. В первую очередь дефолты из jvm8 (уже есть). Потом jigsaw.

Google

Alexandr
20.09.2018
20:01:17

Alexander
20.09.2018
20:02:50
На мобилке. Не найду. Но вопрос периодически поднимается.
Интересный факт что динамики мало что дают для статического языка.

Alexandr
20.09.2018
20:03:58
Так что дают на самом деле, иначе бы их в jvm не завезли

Beholder
20.09.2018
20:07:17

Alexander
20.09.2018
20:08:31
Котлин большинство лямбд инлайнит

Beholder
20.09.2018
20:12:52
Знаменитый kotlinx.html тоже весёлый байткод выдаёт

Quantum Harmonizer
20.09.2018
20:14:44

Beholder
20.09.2018
20:15:47
JAR-ники больше и скорость загрузки меньше

Google

Beholder
20.09.2018
20:19:09

Quantum Harmonizer
20.09.2018
20:19:50
да-да, у меня тоже такое есть, я даже багу заводил :)

Beholder
20.09.2018
20:22:50
В таких классах реального кода на несколько десятков байт, а остальное - заголовки и пул констант

OlegKrikun
20.09.2018
20:38:28

Quantum Harmonizer
20.09.2018
20:40:17

Sergey
20.09.2018
20:45:11

Quantum Harmonizer
20.09.2018
20:45:45
капец, не можем седьмую джаву догнать...

Sergey
20.09.2018
20:46:46
значит и не сильно надо видимо ?

Quantum Harmonizer
20.09.2018
20:48:49

Sergey
20.09.2018
20:49:26

Quantum Harmonizer
20.09.2018
20:50:57
invoke-custom как раз по описанию выглядит как invokedynamic

Sergey
20.09.2018
20:52:27
возможно, я не сильно в теме байт-код инструкций java 8 ?

Руслан
20.09.2018
22:37:14
Какими проектами - генераторами (аля start.spring.io) или проектами-шаблонами (аля склонируй нашу репу и пиши свой код) вы пользуетесь?

Alexandr
21.09.2018
02:38:59

Алексей
21.09.2018
02:59:18
А кто-нибудь знает, есть ли в котлин корутинах что-то вроде CountDown?
просто он, как я понимаю, поток намертво лочит, что в рамках корутин не ок

Alexandr
21.09.2018
03:05:28
В корутинах кооперативная многозадачность и поэтому примитивы синхронизации отсутствуют

Алексей
21.09.2018
03:10:11
Задача просто такая, чтобы ограничить некоторое действие
Если точнее - нужно ограничить скорость запросов. Алгоритм такой, что есть исходное и максимальное число запросов, каждый запрос должен отнимать счётчик или ждать такой возможности. Счётчик "регенерирует" по некоторой логике (+1 в секунду, например)

Google

Алексей
21.09.2018
03:13:36
и пока что кроме CountDownLatch я ничего не могу придумать
но в корутинах его нельзя использовать по понятным причинам

Bogdan
21.09.2018
03:48:07

Alexandr
21.09.2018
03:48:39
это да

Bogdan
21.09.2018
03:51:59

Sergey
21.09.2018
04:11:16
Могу точно сказать что на апи 24 лямбды не настоящие. Вроде даже на Google IO 2016 упоминанили про это(вскользь). Да и тогда был упор на Jack toolchain

Alexandr
21.09.2018
04:13:52
смотрел тут
https://developer.android.com/studio/write/java8-support
т.е. invokedynamic только с 26 API?

Sergey
21.09.2018
04:16:50
т.е. invokedynamic только с 26 API?
Именно такой инструкции до сих пор нету. Насколько я понял есть аналогичные которые делают тоже самое. invoke polymorphic и invoke custom
https://source.android.com/devices/tech/dalvik/dalvik-bytecode

Alexandr
21.09.2018
04:17:50
т.е. тру java8 либы подключить к андройду до сих пор не возможно?

Sergey
21.09.2018
04:18:37

Alexandr
21.09.2018
04:19:10
написанные на java 8 и скомпиленные его компилятором. там в байткоде будет invokedynamic

Sergey
21.09.2018
04:19:51
d-8 и desugar
A так в андроид фреймворк добавили Stream API и ещё некоторые вещи из jdk8 начиная с апи 24

Alexandr
21.09.2018
04:25:18

Sergey
21.09.2018
04:28:23

Google

Mikhail
21.09.2018
05:13:01

Руслан
21.09.2018
06:41:32
https://github.com/Kotlin-Polytech/KotlinAsFirst2018

Alexander
21.09.2018
06:49:21

Руслан
21.09.2018
06:51:25
Судя по комитам http://kspt.icc.spbstu.ru/info/staff/glukhikh/ один из организаторов сего прекрасного

Alexander
21.09.2018
06:52:51
Отлично. Ну буду ссылаться тогда
После вывешивания ссылки количество звездочек удвоилось :)

Руслан
21.09.2018
06:59:29
Вот тут он описан, и описано как включить в IDE:
https://kotlinlang.org/docs/reference/coding-conventions.html

Mikhail
21.09.2018
07:10:39

Руслан
21.09.2018
07:11:18

Admin
ERROR: S client not available

Руслан
21.09.2018
07:11:25
obsolete

Maxim
21.09.2018
07:34:35
Поясните, пожалуйста, почему:
Call chain on collection should be converted into 'Sequence'
?

Иван
21.09.2018
07:35:06
Аналог stream из Java

Maxim
21.09.2018
07:36:25
ага, весь вопрос в оптимизации?

Руслан
21.09.2018
07:36:28

Иван
21.09.2018
07:37:13
Коллекции могут быть огромные

Maxim
21.09.2018
07:38:50
Тогда в догонку ещё вопрос, как мне найти все места, где это можно поправить?)
В android studio, например, в code inspection такие ошибки будут в отдельном разделе?

Google

Иван
21.09.2018
07:39:39
Вот этого не знаю

Alexandr
21.09.2018
07:39:43

Иван
21.09.2018
07:42:14
чем не адекватно?
Цепочка из вызовов и коллекция на много элементов — лучше через sequence

Alexandr
21.09.2018
07:42:44
угу

Igor
21.09.2018
07:46:53

Maxim
21.09.2018
07:50:50

Alexandr
21.09.2018
07:52:01
вообще сиквенсы есть достаточно давно, просто о них не знают (не было рекламы как у java stream api), а сейчас добавилась инспекция, которая делает подсказку

Иван
21.09.2018
07:54:15
Вот оно что
IDE driven development

Vladislav
21.09.2018
08:01:09
Господа, с помощью чего в Kotline лучше всего работать с XML ?
Писать, читать

Alexander
21.09.2018
08:02:06
Лучше в каком смысле?
javax.xml отлично работает. Но он не очень удобный с точки зрения API

Beholder
21.09.2018
08:02:35
С помощью всего того же что и в Java
Разве что если захочется навесить какой-нибудь operator fun Element.get(...)

Vladislav
21.09.2018
08:04:04

Alexander
21.09.2018
08:04:34
А как билдером читать можно?

Vladislav
21.09.2018
08:04:42
никак (
вот и спрашиваю, может есть чего специально для котлина, удобненькое

Alexander
21.09.2018
08:05:12
Можно считать тем же javax.xml, а потом загнать его в билдер и редактировать