@kotlin_lang

Страница 230 из 982
Alex
03.07.2017
10:02:23
Igor
03.07.2017
10:03:23
а почему в си шарпе такой проблемы нет? там не надо указывать диспатчеры явно
Ну смотри на Java 8 есть “из коробочный” ForkJoinPool.commonPool() (на котором по дефолту работают теже CompletableFuture), но котлин поддерживает еще и Java 6/7 где ничего такого нет. Для универсальности пришлось бы велосипедить свой пул, а коррутины вообще не про это.

Ivan
03.07.2017
10:03:45
И если заговорили про корутины, объясните пожалуйста такую вещь: вот запустили корутину на тредпуле и вызвали await, в пуле нашёлся поток и он вызвал, допустим, бд на долго(это насколько я понял будет суспендбл поинт). Что или кто и в какой момент решит, что это на долго и что нужно вернуть поток в пулл? Должен же быть какой-то шедулер, нет? Тоже самое когда пришёл ответ от бд. Когда тред вернётся к начавшейся корутине?

Google
Ilya
03.07.2017
10:07:25
По корутинам рекомендую почитать лонгирд @relizarov https://github.com/Kotlin/kotlin-coroutines/blob/master/kotlin-coroutines-informal.md

Igor
03.07.2017
10:12:13
Ребята, вам работка нашлась по переводу ?

Ilya
03.07.2017
10:15:06
Возможно, пока рано. Там что-то по чуть-чуть меняется всё время, придётся лог отслеживать.

Кстати, на kotlinlang.ru иконку бы обновить

Ivan
03.07.2017
10:26:02
По корутинам рекомендую почитать лонгирд @relizarov https://github.com/Kotlin/kotlin-coroutines/blob/master/kotlin-coroutines-informal.md
А разве тут есть ответ на мой вопрос? Я пробежался (хотя я вполне мог что-то пропустить), там в основном про CPS transformation и state machine. Я тут осознал, что мои вопросы не к корутинам, а к ComputableFuture и к select, видимо

Alexey
03.07.2017
10:34:07
Кстати, народ, а корутины на 7 JVM должны работать? Почему-то они у меня вешают приложение

Alexey
03.07.2017
10:35:31
да банальный launch { doSomething() } вешает всё к чертям

Михаил
03.07.2017
10:36:08
то бишь блокирует меин тред?

Alexey
03.07.2017
10:36:17
да, блокирует навсегда

однако вот щас подумал, что это происходит в Jboss 5, надо бы в отдельном приложении проверить, может, это босс виноват

Google
Alexey
03.07.2017
10:55:48
Да, попробовал отдельно – работает. Видать, JBoss виноват

Ilya
03.07.2017
11:10:51
А вот реквест было бы за спасибо :)

Мы ж не можем всё добро со всем другим добром (или злом) проверить

? animufag ?
03.07.2017
11:11:40
https://youtrack.jetbrains.com/issue/KT-18728 кстати тут недавно мой баг пофиксили, классно что есть ссылка на связанный комит (ну просто в целом ютрек мне как-то показался слишком изолированным, регатся надо, никакого публичного обсуждения не видно)

Ilya
03.07.2017
11:13:01
Обсуждать YT я здесь не готов, извините

? animufag ?
03.07.2017
11:14:20
а вообще волонтёрскую помощь там принимают?

(возможно неудачное употребление слова "волонтёрская", короче помощь со стороны за спасибо)

в расте просто легко было на гитхабе говорить, что беру ишью на себя и потом слать пул реквест

Ilya
03.07.2017
11:16:29
Там в YT или там в Kotlin?

? animufag ?
03.07.2017
11:17:38
в котлин

Ilya
03.07.2017
11:18:08
https://youtrack.jetbrains.com/issues/KT?q=%23%7BUp%20For%20Grabs%7D%20 Всё что помечено тегом Up For Grabs – можно брать. Но надо смотреть, нет ли там уже PR или может кто-то взял

Ivan
03.07.2017
11:18:15
эх... а на мой ишью походу забили https://youtrack.jetbrains.com/issue/KT-18483

Ilya
03.07.2017
11:18:27
Но здесь поддерживать не готов, надо идти в #kontributors в Kotlin Slack

Alexey
03.07.2017
11:18:58
А вот реквест было бы за спасибо :)
Могу сделать, подскажите подробности сюда или в личку

Ilya
03.07.2017
11:19:56
@AMT_299300118 kotl.in/issue и там написать, что да как, идеально с репро

Alexey
03.07.2017
11:20:29
access denied

Ilya
03.07.2017
11:22:50
зарегаться надо

эх... а на мой ишью походу забили https://youtrack.jetbrains.com/issue/KT-18483
У меня IDEA не предлагает заменить в таком коде: fun x(point: Int?, start: Int, end: Int): Boolean { if (point != null) { return start <= point && point <= end } else { return false } }

Ivan
03.07.2017
11:24:29
без вопросов предлагает, а потом если добавить вопросы, то всё компилируется и не ждёшь подвоха

Михаил
03.07.2017
11:24:41
подскажите. как поставить аннотацию для класса в котором лежат топ левел функции? @file: это то?

Google
Alexey
03.07.2017
11:25:12
зарегаться надо
Логично ? Постараюсь сделать попозже примерчик и отправить. Правда, не представляю, кому это ещё нужно, кроме меня. Неужели есть ещё бедолаги на JBoss?

Ilya
03.07.2017
11:25:29
Мир большой,, бедолаги найдутся :)

без вопросов предлагает, а потом если добавить вопросы, то всё компилируется и не ждёшь подвоха
Это не ясно из запроса. С одной стороны запрос разумный, с другой стороны на всякий nullable value оверлоадов не напишешь… Просто сходу не видно разумного решения, поэтому issue и подвис.

Ilya
03.07.2017
11:29:11
Там опять же написан пример с проверкой на null, и в этом случае вызывается правильный, non-null вариант для in, потому что смарткаст срабатывает. Ну либо point это var, что тоже неясно из запроса.

Ilya
03.07.2017
11:31:02
Такое поведение не соответствует строгости проверки на null, мало ли что туда попало. Может там не должно было быть нулла, а он провалился откуда-то (из платформенного типа, например) и тут всё неявно как-то работает, не пойми как. Вот то, что он при этом свалился в Iterable.contains – это проблема.

В оригинальном коде мне тоже ничего не предлагается заменить на in

У меня 1.1.3, если что

Ivan
03.07.2017
11:35:44
ну логика того как я пришёл к этой баге: написал функцию fun pointInside(point: Int): Boolean { return start <= point && point <= end } идея подсказала что можно заменить fun pointInside(point: Int): Boolean { return point in start..end } потом оказалось что поинт бывает null. Долго думал как так покрасивее сделать, оказалось что fun pointInside(point: Int?): Boolean { return point in start..end } валидный вариант

Ilya
03.07.2017
11:36:26
Хорошо, я понял. На мой взгляд, правильное поведение с nullable point – код не должен компиляться. Я обсужу с коллегами.

Ilya
03.07.2017
11:39:49
ну неявность – плохо. Если там не point, а например foo.bar() in a..b, где bar - экстеншн функция на nulalble receiver возвращающая nullable, а foo какое-то свойство, которое мы тут сделали nullable, и внезапно вся эта штука неожиданно и молча стала работать неправильно

лучше там будет ошибка, и программисту придётся проверить на null явно и принять решение, что там должно быть. Семантика null не определена, и должен там быть true или false известно только автору кода

Ivan
03.07.2017
11:42:13
хм.... ну с другой стороны точно нет ни одного range в котором был бы null, соответственно null in a..b - по логике вещей должно быть false исходя из семантики contains

ну и разве вы не сломаете обратную совместимость если тут будет ошибка компиляции?

Yura
03.07.2017
12:05:40
Доброго времени суток, решил мигрировать на canary5 и получил вот такую ошибку Error:Execution failed for task ':data:createFullJarDebug'. > java.util.zip.ZipException: duplicate entry: META-INF/data_debug.kotlin_module

порообовал packagingOptions { exclude 'META-INF/data_debug.kotlin_module' } но к сожалению не помогло, что можна сделать еще попробовать ?

Ilya
03.07.2017
12:30:25
ну и разве вы не сломаете обратную совместимость если тут будет ошибка компиляции?
ну так, мы не обещаем обратной (сорс) совместимости при фиксе багов :) но, конечно, внимательно подумаем

Google
Kylych
03.07.2017
14:33:37
есть ли онлайн конверторы с json -> kotlin

?

Admin
ERROR: S client not available

Kylych
03.07.2017
14:34:08
приходит json с сервера, а я не могу описать модельку с помощью data class

Anton
03.07.2017
14:35:02
сложна?

есть плагин но он не дата классы генерит

Kylych
03.07.2017
14:36:33
структура json довольна легкая, неполучается описать это дело с помощью data class

вот и думал прибегнуть к конвертору, посмотреть, что он сгенерирует

Igor
03.07.2017
14:40:34
структура json довольна легкая, неполучается описать это дело с помощью data class
Я пользовался https://timboudreau.com/blog/json/read он генерит immutable java классы (без гетеров/сетеров), они потом в IDEA конвертируются в компактные Kotlin классы.

Programm
03.07.2017
16:12:04
всем добрый день

кто может помочь с литературой

?

Sergey
03.07.2017
16:14:47
lib.rus.ec ?

Programm
03.07.2017
16:21:20
lib.rus.ec ?
не работает

Oleg
03.07.2017
16:41:09
Тебе нужно сайт с книгами электронными?

Aleksandr
03.07.2017
17:04:14
Тебе читать, или печатать?

Igor
03.07.2017
17:38:41
А только у меня после подключения kotlinx-html и kotlinx-html-js и написания пары небольших скриптов начала бешено тормозить студия?

Google
Igor
03.07.2017
17:40:57
intellij которая

просто пиздец, фризы по любому действию

Igor
03.07.2017
17:42:50
просто пиздец, фризы по любому действию
А сколько у тебя оперативы? Может надо поднять лимиты для idea и gradle (это же JVM :)

Михаил
03.07.2017
17:43:05
Igor
03.07.2017
17:46:47
Михаил
03.07.2017
17:46:59
ууу

Igor
03.07.2017
17:47:02
если бы у меня лагало до подключения этой фигни - не писал бы

Igor
03.07.2017
17:47:46
4ГБ, mac air
Надо брать новую 2017 pro на 16 гб (и 128гб диск что бы сэкономить). Kotlin очень любит кушать оперативу.

Igor
03.07.2017
17:48:12
Надо брать новую 2017 pro на 16 гб (и 128гб диск что бы сэкономить). Kotlin очень любит кушать оперативу.
Надо бы то оно надо, только на это еще нужно подзаработать. Были бы бабки ;) Я же студент на первом курсе

Михаил
03.07.2017
18:08:21
Igor
03.07.2017
18:09:07
а что на эти 128шб можно поставить кроме андроид сдк?)
А зачем его ставить, на котлине и бэкенд можно знаешь ли

Igor
03.07.2017
18:09:34
Не, 128 не серьезно

Страница 230 из 982