
V
01.03.2017
13:24:43
у меня маленькие програмусечки

Sergey
01.03.2017
13:25:09
для бута беру -Xmx32m -Xss256k
хватает

Google

V
01.03.2017
13:25:19
ооо
спасибо!

Sergey
01.03.2017
13:25:30
https://spring.io/blog/2015/12/10/spring-boot-memory-performance вот если че

V
01.03.2017
13:25:49
золотой ты человек
== спасибо за ссылку

Михаил
01.03.2017
13:29:58

Руслан
01.03.2017
13:30:41
Ну и что, кому это мешает)
В general в слаке пипец творится)

Igor
01.03.2017
13:32:23
Странно что в блоге не описали "не эксперементальные фичи 1.1" (js и тулинг не считается)
Нашел https://kotlinlang.org/docs/reference/whatsnew11.html

Sergey
01.03.2017
13:33:20
>An important note. With all the benefits that they bring, Kotlin coroutines are a fairly new design that needs extensive battle-testing before we can be sure it’s 100% right and complete. This is why we will release it under an “experimental” opt-in flag. We do not expect the language rules to change, but APIs may require some adjustments in Kotlin 1.2.

Руслан
01.03.2017
13:34:16
Так вопрос в том, что другие фичи в пост не включили, нужно бегать по постам

Sergey
01.03.2017
13:35:27
а. ну это да. странно

Quantum Harmonizer
01.03.2017
13:35:43

Google

Руслан
01.03.2017
13:36:18
Никому :)

Igor
01.03.2017
13:37:15
Кстати, еще раз глянул новые фичи 1.1, а они почти все для ФП (и это хорошо).

Руслан
01.03.2017
13:37:47
Да, кроме корутин
Корутины это анти-фп. И это тоже хорошо)

Igor
01.03.2017
13:38:44
Да, кроме корутин
Это как посмотреть.
Мне кажется это похоже на do в хаскеле (с ним тоже функ. код становится становится похож на императивный).

Руслан
01.03.2017
13:39:52
Ну да, чем-то похоже

Sergey
01.03.2017
13:43:57
корутины это просто киллер фича для фанатов джавы)
или гошечки
корутины на тредпуле = горутины?

Руслан
01.03.2017
13:44:41
как в гошечке, только не такое го

Sergey
01.03.2017
13:45:11
правда непонятно как суспенды реализованы
их же нет в jvm

Михаил
01.03.2017
13:45:45
Колбэки?

Sergey
01.03.2017
13:46:49
не, там именно yield и перепрыгивание контекста
кто-то может пояснить нубу как это реализуется так?) в скале кстати ж тоже они есть

Quantum Harmonizer
01.03.2017
13:48:07
или что-то вроде того

Sergey
01.03.2017
13:48:56
как-то оверхеда много

Руслан
01.03.2017
13:49:19
Именно так и работает

Sergey
01.03.2017
13:49:41
хм

Google

Andrew
01.03.2017
13:49:42
без кодгена тут никак

Sergey
01.03.2017
13:49:58
на CLR там все нативненько со стейтмашиной

Руслан
01.03.2017
13:49:58
Бреслав объяснял для нубов: https://kotlin.link/articles/Andrey-Breslav-Kotlin-Coroutines-JVMLS-2016.html

Sergey
01.03.2017
13:50:11

Руслан
01.03.2017
13:50:13
Но там старые корутины, хотя по смыслу будет примерно тоже

Aliaksei
01.03.2017
13:51:07
но апи другой

Quantum Harmonizer
01.03.2017
13:52:15

Slava
01.03.2017
13:53:39
Ребят, а вам автокомплит подсказывает эти функции?

Igor
01.03.2017
13:53:52
Лучше бы вкинули как писать свои suspended фукнции.
Ну нет нормально документации.
Добавь зависимость в gradle https://github.com/Kotlin/kotlinx.coroutines

Quantum Harmonizer
01.03.2017
13:56:57

Igor
01.03.2017
13:57:19

Руслан
01.03.2017
13:57:22

Slava
01.03.2017
14:04:15
спасибо
Добавь зависимость в gradle https://github.com/Kotlin/kotlinx.coroutines

Руслан
01.03.2017
14:05:16
(не делайте пожалуйста форвады, лучше реплаи)

Sergey
01.03.2017
14:06:32
https://kotlinlang.org/docs/reference/whatsnew11.html#whats-new-in-kotlin-11

Roman
01.03.2017
14:06:35
@igor_ur документация про suspend функции и как их писать есть в дизайн документе: https://github.com/Kotlin/kotlin-coroutines/blob/master/kotlin-coroutines-informal.md

Google

Igor
01.03.2017
14:10:27
Никто кстати не знает тулзы что бы сидеть в slack (под своим аккаунтом) из телеграмма?
Я могу конечно сам написать бота перекидывающего сообщения, но может есть что готовое.

Quantum Harmonizer
01.03.2017
14:11:50

Evgeny
01.03.2017
14:12:21
Хм, не совсем то, то может понравится, я использую Franz

Igor
01.03.2017
14:13:06

Evgeny
01.03.2017
14:13:49
Да, но он отлично справляется со своей задачей ?

Igor
01.03.2017
14:14:44

Roman
01.03.2017
14:57:12
после перехода с 1.0.6 на 1.1 поломался вызов
fun setValidationListener(validationListener: (Boolean) -> Unit) {
presenter.setValidationListener(validationListener)
}
presenter.setValidationListener - SAM на java

Admin
ERROR: S client not available

Roman
01.03.2017
14:57:57
заявлялась обратная совместимость вроде

Igor
01.03.2017
14:58:06

Roman
01.03.2017
14:59:51

Quantum Harmonizer
01.03.2017
15:00:35
наверное, речь о @FunctionalInterface

Roman
01.03.2017
15:02:03
это новшество 1.1? почему раньше без него работало?

Igor
01.03.2017
15:02:33

Roman
01.03.2017
15:02:44
пишет на аннотацию since1.8
у меня андроид

Quantum Harmonizer
01.03.2017
15:03:55

Руслан
01.03.2017
15:04:05
Можно минимальный пример для воспроизведения

Google

Руслан
01.03.2017
15:04:51
Ну и что конкретно поломалось: ide, компилятор, сборка gradlом

Quantum Harmonizer
01.03.2017
15:07:15
у меня работает
fun zzz(z: (View) -> Unit) {
someView.setOnClickListener(z)
}

Roman
01.03.2017
15:09:15
сейчас сделаю очистку проекта
не помогло
Error:(90, 41) Type mismatch: inferred type is (Boolean) -> Unit but FormFieldValidatorPresenter.ValidationListener! was expected
ошибка при сборке

Руслан
01.03.2017
15:17:27
gradle clean делался?

Roman
01.03.2017
15:17:29
да

Quantum Harmonizer
01.03.2017
15:17:40

Igor
01.03.2017
15:17:42

Roman
01.03.2017
15:17:57
public void setValidationListener(ValidationListener validationListener) {
this.validationListener = validationListener;
}
public interface ValidationListener {
void onValidityChanged(boolean valid);
}
вызывемый метод и интерфейс
скопировал оба класса - оставил только интерфейс, и проблемные методы - работает
что-то тут не чисто

Quantum Harmonizer
01.03.2017
15:20:26
мда, у меня тоже не работает

Igor
01.03.2017
15:21:38

Roman
01.03.2017
15:22:24
void где? void onValidityChanged(boolean valid); тут?
ничего не меняется

Quantum Harmonizer
01.03.2017
15:27:12
Required: Consumer<Boolean>, found: (Boolean) -> Unit). Печалька.
fun zzz(z: (Boolean) -> Unit) {
ActionActivity.consumer = Consumer { z(it) }
}workaround :/