@jvmchat

Страница 2769 из 2890
Ivan
31.08.2018
09:07:25
только когда либа дает удобный доступ к компиляторному АСТ, это дает больше возможностей, не только для корутин, а вообще метапрограммирование
Да, про метапрагроммирование там идёт кипиш, НО в этом и прикол котлина, они не хотят давать инструмент по приколу, только если есть бизнес-задача для этой фичи. Просто в C++ есть шаблоны для метапрограммирования, но Боже мой, как эта херня сложно читается и въезжается, целые книги есть по этой теме. В котлин не хотят такого, хотят чтобы вот фича, она очевидно зачем и как ей пользоваться

Берял
31.08.2018
09:07:53
это что то другое
это что-то близкое по смыслу

Google
Nikita
31.08.2018
09:08:49
чтобы бойлерплейт пожрать как можно сильнее

++ так не умеют, точнее можно - но это оч больно там делается

Oleksandr
31.08.2018
09:09:19
то есть, если подсуммировать, про корутины в котлине: сделано частное решение в компиляторе, которое решает конкретно эту задачу и в этом весь котлин: "делаем частное решение для 1 случая, когда можно сделать фунтамент для более Общего случая, и в нем решить эту задачу, и ещё 10 других" это проявляется что в корутинах, что в ?, что в коллекциях, что в экстеншнах разрабы котлина хотят решать за меня, какой уровень абстракции мне нужен кому-то это ок, но мне не нравится

Oleksandr
31.08.2018
09:10:39
Nikita
31.08.2018
09:10:51
шарп пока кстати лучше котлина

Oleksandr
31.08.2018
09:10:51
так-то им лет 40 :)

Nikita
31.08.2018
09:11:07
ну применять их начали в геймдеве

Nikita
31.08.2018
09:11:34
как бы оно не особо то нужно в реальных задачах

Google
Oleksandr
31.08.2018
09:12:10
..
ага, и?

именно таким командам котлин зайдет

зачем думать над абстракцией, мы же "прагматики" и язык это отражает

Nikita
31.08.2018
09:12:34
меня котлин радует, что некоторые вещи можно писать гораздо в меньшем обьеме чем в джаве

это просто ускоряет процесс

особенно это касается всяких ДТО и Вэлью обжектов

Nikita
31.08.2018
09:13:52
Sergey
31.08.2018
09:14:10
тем, что они по факту не особо то и нужны
почему? хватает потоков? реактивности? или стандарных фьюч?

Oleksandr
31.08.2018
09:14:14
а чем корутины то не устроили уже? сорян впадлу читать весь тред)
``` то есть, если подсуммировать, про корутины в котлине: сделано частное решение в компиляторе, которое решает конкретно эту задачу и в этом весь котлин: "делаем частное решение для 1 случая, когда можно сделать фунтамент для более Общего случая, и в нем решить эту задачу, и ещё 10 других" это проявляется что в корутинах, что в ?, что в коллекциях, что в экстеншнах разрабы котлина хотят решать за меня, какой уровень абстракции мне нужен кому-то это ок, но мне не нравится ``` tl;dr вместо плагина к компилятору для метапрограммирования и либы для корутин они вбили последние прямо в компилятор

не, корутины (абстракный концепт) классная штука, что вы

Nikita
31.08.2018
09:14:33
lombok же
ломбок хорош да, но котлин еще лучше)

Sergey
31.08.2018
09:14:57
ну корутины в самом компиляторе не так уж и много занимают, все основное как раз таки в либе

Nikita
31.08.2018
09:15:33
да ну есть они там и пусть будут

Google
Sergey
31.08.2018
09:15:57
и я могу их вызывать в джава коде?
да, у тебя будет в аргументах доп калбек передаваться везде где suspend

Nikita
31.08.2018
09:15:57
давайте вернемся к актуальным вопросом, чем можно залезть в АСТ?

Sergey
31.08.2018
09:16:32
но имхо, мы у себя на проекте даже от спринга отказываемся щас. не говоря уже о джаве которую еще год назад выпиляли полностью

Ivan
31.08.2018
09:17:14
а на что ещё-то?

Oleksandr
31.08.2018
09:17:16
да, у тебя будет в аргументах доп калбек передаваться везде где suspend
Kotlin coroutines are implemented with a compiler transformation to the code, which obviously can only be done by kotlinc. So, no, Java cannot use Kotlin's coroutines mechanic since it is a compile-time feature. https://stackoverflow.com/a/41561165/2317480

можно пример кода?

Sergey
31.08.2018
09:17:55
я б дал пример, но увы у меня джавы нет и не стояло такой задачи даже

Vladimir
31.08.2018
09:18:03
можно пример кода?
Ты же сам находил уже и сюда скидывал. Да, будет больно.

Денис
31.08.2018
09:18:54
А главное, я не пойму, какого хуя @dveim этим вопросом пытается добиться

Oleksandr
31.08.2018
09:19:18
что вы от меня хотите?

вообще вот такие разговоры, когда они не перетекают в срачи — довольно быстрый способ заполнить пробелы в знаниях

Митко Соловец?
31.08.2018
09:19:59
серьезно?

сырой проект же

Sergey
31.08.2018
09:20:19
скоро релиз стабильный будет, после корутин

Oleksandr
31.08.2018
09:20:22
Ты же сам находил уже и сюда скидывал. Да, будет больно.
окей, понял интересно, не запилил ли кто либку для уменьшения боли

Митко Соловец?
31.08.2018
09:20:31
но там и половины нет от богаства спринга

Sergey
31.08.2018
09:21:09
зато сервисы в проде по 150мб кушают всего

Google
Sergey
31.08.2018
09:21:11
вместо 500-600мб

с неблокирующим IO

если не заниматься особыми извращениями внутри, то стабильности хватает с головой

Vladimir
31.08.2018
09:21:39
сырой проект же
Он вполне работает и сюрпризов не выкидывает

Ivan
31.08.2018
09:21:46
Память не проблема)

Sergey
31.08.2018
09:21:48
были проблемы только с ktor client, но их пофиксили за пару дней

Vladimir
31.08.2018
09:22:34
были проблемы только с ktor client, но их пофиксили за пару дней
Все?) Я пару раз хотел его взять, но сталкивался с разными косяками на разных engine

Sergey
31.08.2018
09:23:03
ну еще бывает что после выхода новой версии ломается апи и в доках по этому поводу ничего нет

Admin
ERROR: S client not available

Sergey
31.08.2018
09:23:21
вчера так на 0.9.4 было, даж сам пошел в доку контрибьютить ?

Oleksandr
31.08.2018
09:23:54
может че поменялось?))
может, я тут это и спрашиваю :)

Митко Соловец?
31.08.2018
09:24:00
Sergey
31.08.2018
09:24:07
у меня увы на спринге было куда больше проблем

даже не вспомню все

Митко Соловец?
31.08.2018
09:24:17
с неблокирующим IO
у вас проект позволяет такое?

Nikita
31.08.2018
09:24:21
спринг не плохой а громоздкий

Митко Соловец?
31.08.2018
09:24:24
есть реаляционная база и как в нее ходите?

Vladimir
31.08.2018
09:24:48
может, я тут это и спрашиваю :)
В 1.3 интерфейс изменится. Но проще вызывать это из Java явно не станет.

Google
Sergey
31.08.2018
09:25:10
спринг был большим монструозным проектом, потом решил стать фреймом для микросервисов, а потом еще и неблокирующим захотел стать. в итоге это в жесткое месево превратилось

Nikita
31.08.2018
09:25:30
вот вот

Митко Соловец?
31.08.2018
09:25:30
Sergey
31.08.2018
09:25:33
есть реаляционная база и как в нее ходите?
только на некоторых проектах, больше монги, эластика и хттп клиентов

Oleksandr
31.08.2018
09:25:33
В 1.3 интерфейс изменится. Но проще вызывать это из Java явно не станет.
интересно было бы прикрутить к скале это дело, на макросах так, чисто поржать

Митко Соловец?
31.08.2018
09:25:56
Sergey
31.08.2018
09:26:25
но в целом для базы отдельный cached pool и отлично работает. щас делают новый диспатчер на замену этого костыля, чтобы не приходилось кучу пулов плодить

а кстати, щас даже thread local работает на корутинах, можно всякие MDC контексты у логгеров юзать

Nikita
31.08.2018
09:28:35
Вопрос вообщем: насколько обосновано использование ASM для избавления от бойлерплейта?

Sergey
31.08.2018
09:28:56
вопрос из разряда лиж бы доебаться?)

Nikita
31.08.2018
09:29:04
нет

Sergey
31.08.2018
09:29:12
если и правда интересует, заходи в слак

Nikita
31.08.2018
09:29:14
вопрос из разряда а не сломаем ли мы себе ногу

Sergey
31.08.2018
09:29:18
там все разрабы отвечают в течении часа

Nikita
31.08.2018
09:29:22
когда будем стрелять в нее

Sergey
31.08.2018
09:29:45
можешь Романа Элизарова выдернуть или кто еще нужен, кроме Бреслава увы(он редко появляется там)

Денис
31.08.2018
09:30:07
Можно и в котлин-чатике в телеге

Там Елизаров тоже довольно активен

Nikita
31.08.2018
09:31:03
есть ссылка на слак?

Sergey
31.08.2018
09:31:15
да, сек

http://slack.kotlinlang.org/

Страница 2769 из 2890