
Vitalii
28.09.2017
09:46:31

Igor
28.09.2017
09:57:38
макось ?
Поставь себе др телеграм (который 3.2), у меня все ОК https://i.gyazo.com/32c18e31a8c8347188ed8046a99b7c40.png

Sergey
28.09.2017
09:57:49

Google

Igor
28.09.2017
09:58:31
У меня который первый в списке https://i.gyazo.com/bfa15dc81a30b50d8988b98ae426b177.png

Meent
28.09.2017
09:59:47

Igor
28.09.2017
10:07:13
Кто-нибудь пробовал https://github.com/kategory/kategory на Android (или вообще)?
Там annotation-processing юзается, не было с ним проблем?

Vitalii
28.09.2017
10:11:23

Sergey
28.09.2017
10:47:35
какой самый элегантный способ запустить в пуле из N тредов M задач, дождаться выполняния, закрыть тредпул и получить все результаты в массиве?
как-то не оч, наверное ж есть более вменяемый способ?
val pool = newFixedThreadPool(n)
val futures = jobs.map { supplyAsync({ doJob(it)}, pool) }
pool.shutdown()
val results = futures.map { it.join() }
или запилить утильную функцию, которая скроет весь этот фарш?

Igor
28.09.2017
10:54:10

Sergey
28.09.2017
10:55:31
все равно тредпул закрывать придется

Руслан
28.09.2017
10:56:30

Sergey
28.09.2017
10:56:57
ну и нужно throughput контролировать

Руслан
28.09.2017
10:57:53
Так а асинхронно нельзя эти задачи сделать?

Google

Руслан
28.09.2017
10:58:09
или там только блокирование, только хардкор?

Sergey
28.09.2017
10:58:32
хардкор

Igor
28.09.2017
11:04:54

Sergey
28.09.2017
11:07:46

whalemare
28.09.2017
13:57:10
Смотрите как умею

Anton
28.09.2017
13:57:46
я не понял

whalemare
28.09.2017
13:57:51
Хотел замапить каждый элемент в новый, но получилось замапить все в последний.
где я ошибся

Anton
28.09.2017
13:57:52
evaluate expression умеешь?

whalemare
28.09.2017
13:58:32
тут дело кстати с енумом идет, может из-за этого?
Нда, если мапить в объект обычный то все окей

Igor
28.09.2017
14:01:23
Нафиг тебе там вообще ретурн, криво же смотрится

whalemare
28.09.2017
14:01:36
ну я для явности

Quantum Harmonizer
28.09.2017
14:02:54
Что за Series.COMMON?
ну я для явности
можно тогда использовать обычные функции вместо лямбд:
fun(index: Int, element: T) {
...
return ...
}

whalemare
28.09.2017
14:04:14
Что за Series.COMMON?
Константа енумовская, или как это правильно называется. в общем класс внутри енума.
ща попробую

Quantum Harmonizer
28.09.2017
14:04:51

Google

Dmitry
28.09.2017
14:05:05

Igor
28.09.2017
14:05:15

whalemare
28.09.2017
14:06:52
ааааааааааа
я все понял, вот так и бывает. спасибо парни
т.е. если енум константы это статики, то меняя что-то в одной части приложения оно изменится и в другой?

Quantum Harmonizer
28.09.2017
14:15:06

whalemare
28.09.2017
14:16:06
нда, надо подтянуть теоретическую часть..

Sergey
28.09.2017
20:54:44
https://spring.io/blog/2017/09/28/spring-framework-5-0-goes-ga там релиз был, с активной поддержкой котлина
https://twitter.com/sdeleuze/status/913680678780391424

Руслан
29.09.2017
10:04:44
https://blog.jetbrains.com/kotlin/2017/09/kotlin-1-2-beta-is-out/
#multiplatform #array_literals

Sergey
29.09.2017
10:06:44
expect/actual выглядит своеобразно

Aliaksei
29.09.2017
10:08:39

Roman
29.09.2017
10:09:54
Упс, ща пофикшу

Igor
29.09.2017
10:13:17
Эх, сделали бы они expect/actual год назад - сильно бы уростило написание кросплатформенных игр на libgdx

Nikita
29.09.2017
10:15:52
ухты - вот это интересно) (::file.isInitialized)

Igor
29.09.2017
10:17:14
Ну такое, жили же как-то без этих костылей. Передаешь все в конструктор и бед не знаешь.

Nikita
29.09.2017
10:18:11
если так рассуждать то можно дойти до того что котлин один большой костыль)

Anton
29.09.2017
10:18:21
Не костыль а сахар

Sergey
29.09.2017
10:20:02
опять вы за свое

Google

Igor
29.09.2017
10:20:54
А вот метод-референсы без this:: это хорошо, буду еще больше обмазываться

Quantum Harmonizer
29.09.2017
10:23:07
> Nested classes inside enum entries
о, какая наркомания

? animufag ?
29.09.2017
11:31:37

Quantum Harmonizer
29.09.2017
11:32:33

? animufag ?
29.09.2017
11:32:51
да наверное

Quantum Harmonizer
29.09.2017
11:32:57
Просто в Котлине :: используется для околорефлективных вещей.

? animufag ?
29.09.2017
11:34:35
ну ок.
https://youtrack.jetbrains.com/issue/KT-15667
как теперь передать метод без this?

Quantum Harmonizer
29.09.2017
11:35:16

? animufag ?
29.09.2017
11:35:44
внимательно
а понял. видимо класс прописать

Igor
29.09.2017
11:38:50

? animufag ?
29.09.2017
11:40:09
чем тебе int не угодил)
ну я не знал что есть isAbstract

Igor
29.09.2017
11:40:39
Его нельзя сделать lateinit ?

? animufag ?
29.09.2017
11:40:45
да и вообще не знал что там методы какие то есть
как будто у e::func есть какой-то скрытый тип
вообще не нравится эта движуха по импрувам смарткастов
больше неявной магии

Dmitry
29.09.2017
12:02:31

Sergey
29.09.2017
12:03:19
прикольно наверное перечитывать неделю сообщений

Google

Руслан
29.09.2017
12:12:28
Ну всмысле ты пишешь код на котлине, руководствуясь jmm

Dmitry
29.09.2017
12:13:35
Я просто открыл чат там где последний раз читал его, лень было скролить к концу -)

Руслан
29.09.2017
12:15:14
Окей, берём корутины и пишем под жвм :)

Dmitry
29.09.2017
12:15:28
Я корутины в прод завез и да, это большая проблема. Фактически сейчас у нас просто запрет на работу с мутабельными состояниями в корутинах.
Это к тому, что если человек заходит в котлин без знания джавы, то ему всё равно придется ее учить.

Руслан
29.09.2017
12:16:11
Почему, делаем там мьютекс или синглтред
И спокойно мутируем не зная про джмм

Dmitry
29.09.2017
12:17:00
ну да, если корутина в главном потоке, то да. Но нам такое не нужно. По крайней мере я юзкейсов не вижу.

Руслан
29.09.2017
12:17:32
Ну или акторы/каналы

Dmitry
29.09.2017
12:17:42
Для меня это простой способ вычисления в бекграунд закинуть, при этом оставляя декларативный код
Не знаю как заюзать каналы, но акторы точно потребуют изменения архитектуры приложения, это на существующем проекте имхо делать смысла нет

Руслан
29.09.2017
12:25:34
Ну да, понятное дело. Но если у тебя есть проект то значит ты уже на джаве умеешь писать :)

Dmitry
29.09.2017
12:26:51
У меня проект на котлине. Но я вынежден знать джаву для работы с многопоточностью, если захочу использовать там мутадельные проперти.
Я еще я должен знать JMM, которую я на самом деле скорее не знаю -) А мои коллеги наверное даже не читали ее.

Igor
29.09.2017
12:28:30

Dmitry
29.09.2017
12:28:49
Чтобы анимации перехода между экранами не лагали
т.е. для меня многопоточность = вынести вычисления из UI потока в какой-нибудь другой.

Mi
29.09.2017
12:34:12
Это ж асинхронность