
Руслан
06.09.2018
09:55:41
Т.е. ++ и -- на любом объекте должен так работать

Mi
06.09.2018
09:56:37
ну да, разве что по такому признаку
хотя я бы его счёл всё же косвенным
по факту все operator fun должны быть immutable, а в Int нет других, кроме явных кастов

Google

Руслан
06.09.2018
09:58:05
ну типо x + y

Mi
06.09.2018
09:59:16

Andrey
06.09.2018
09:59:44

Руслан
06.09.2018
09:59:46
ну в случае muttableX(list, set, ...) это удобно
mutableListOf(1, 2, 3) + 4

Mi
06.09.2018
10:00:24
нужен какой-нибудь MutableInt ?

Andrey
06.09.2018
10:00:42

Boris
06.09.2018
10:00:56

Mi
06.09.2018
10:01:24
Зачем?
ну он нужен по факту для одного специфического кейса, Flyweight pattern, в бигдате используется
чтобы не аллоцировать много памяти, когда очень много операций с числами
но в hadoop фреймворке уже есть всякие IntWritable
это уже лирика

Google

Alexey
06.09.2018
10:34:53
Ну как я понимаю чтобы не аллоцировать новый int можно только изменить ячейку памяти через unsafe
Других вариантов в приделах jvm - нема

Artem
06.09.2018
12:03:33
Привет всем. А разве корутины не идут в стандартной библиотеке уже?

Quantum Harmonizer
06.09.2018
12:04:22
корутины — это фича языка ;)

Artem
06.09.2018
12:04:26
или это я себе приснил??

Quantum Harmonizer
06.09.2018
12:04:41
в стдлибе есть несколько базовых функций

Artem
06.09.2018
12:05:00
async {} ?

Di7aK
06.09.2018
12:06:14
как лучше из имени файла выдрать расширение и оставить строку без него
старыми добрыми индексОфами?

Artem
06.09.2018
12:07:21

Di7aK
06.09.2018
12:07:29
ага нашел уже

Artem
06.09.2018
12:09:17

Quantum Harmonizer
06.09.2018
12:10:00

Konstantine
06.09.2018
12:13:08
Почему нельзя сделать так:
produce {
object: SomeInterface {
fun a() {
this@produce.send(1)
}
}
}
Ругается, что send можно вызывать только из корутины, но так оно внутри, нет?

Igor
06.09.2018
12:13:50

Konstantine
06.09.2018
12:14:07
Так, как тогда это обойти можно?

Igor
06.09.2018
12:14:27
Так, как тогда это обойти можно?
Как вы вообще пpедполагаете, что это будет pаботать?) Может быть, что-то такое:
produce {
registerObserver(object: SomeObserver {
override fun onEvent(e: Event) {
this@produce.send(1)
}
})
}

Konstantine
06.09.2018
12:15:16

Igor
06.09.2018
12:15:49

Google

Quantum Harmonizer
06.09.2018
12:16:34
запихнуть куда-нибудь канал и совать в него значения из функции (если так можно :)

Igor
06.09.2018
12:17:57

Konstantine
06.09.2018
12:18:43

Igor
06.09.2018
12:29:55
https://gist.github.com/komigor/bd409a07288f55d9211c64df72026e5a
@Vorkytaka, по идее что-то такое должно pаботать так, как вам нужно. Нет?

Konstantine
06.09.2018
12:33:24

Enterpise
06.09.2018
13:22:03
Gradle Effective Implementations Guide ?

Andrey
06.09.2018
14:36:34
всем привет, нужно создать инстанс класса с UserLikesHandler::class.java и передать в конструктор аргументы
увидел newInstance только там нету возможности передать аргументы
подскажите правильный путь

Quantum Harmonizer
06.09.2018
14:39:44
ИмяКласса(аргументы через запятую)

Andrey
06.09.2018
14:42:08
ИмяКласса(аргументы через запятую)
если бы так
изначально есть вот такая конструкция альяса
typealias RouteHandler = Class<out MessageHandler>
UserLikesHandler имплементит MessageHandler
так что у меня вместо имени класса есть RouteHandler
и тут у меня есть только newInstance

Quantum Harmonizer
06.09.2018
14:42:54
напоминает что-то про удаление гландов или троллейбус из буханки

Andrey
06.09.2018
14:43:32
я ожидал такой комментарий, если можно то направьте правильно

Andrew
06.09.2018
14:44:12

Andrew
06.09.2018
14:45:31
Если есть KClass, то конструктор можно найти в kClass.constructors (https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect/-k-class/constructors.html) или взять kClass.primaryConstructor (https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.reflect.full/primary-constructor.html).
Ну и не забыть подключить reflection-full, конечно.
(если есть Class, но есть уверенность, что это котлин-класс и нужен праймэри конструктор, то можно сделать clazz.kotlin.primaryConstructor. Как это поведёт себя для Java-класса — не знаю, не проверял)

Andrey
06.09.2018
14:53:01

Izy Yank
06.09.2018
16:48:43
Всем привет
А возможно собрать и запустить Котлин проект на линуксе или Винде если нет jdk ?
Как GO проект собирают для винды или линукса

Leonid
06.09.2018
16:50:49
Ну го проект без го не соберешь :)
Kotlin компилятор работает на JVM, потому джава тебе в любом случае понадобится

Google

Izy Yank
06.09.2018
16:51:25
Для сборки ладно, а для запуска?

Admin
ERROR: S client not available

Bogdan
06.09.2018
16:51:42

Никита?❄️
06.09.2018
16:52:54

Izy Yank
06.09.2018
16:54:16
Есть такие хостинги которые не хотят устанавливать жаву, но надо там запустить Котлин проект, jre тоже не хотят ставить

Bogdan
06.09.2018
16:54:21
@IHayriev а чем тебя jre неустраивает &

Никита?❄️
06.09.2018
16:54:42
pom.xml, папка с сорцами и поехал

Izy Yank
06.09.2018
16:55:39
Ок, спасибо

Alexander
06.09.2018
16:56:09
Можно эмбеддить JRE или его подмножество в бинарник

Leonid
06.09.2018
16:56:25

Izy Yank
06.09.2018
16:57:09
Жава или Котлин?
Просто ради интереса)

Alexander
06.09.2018
16:57:20
В смысле?

Никита?❄️
06.09.2018
16:57:23
тут все скажут котлин топ

Izy Yank
06.09.2018
16:57:36

Alexander
06.09.2018
16:58:15
Если с нуля и нет завязки на кровавый интерпрайз, то котлин

Google

Bogdan
06.09.2018
16:58:33
На чем писать)
зависит от вкуса, это чисто субективное мнение, увы, объективности не существует

Alexander
06.09.2018
16:58:37
У меня сейчас смесь.

Bogdan
06.09.2018
16:58:41

Никита?❄️
06.09.2018
16:58:51

Alexander
06.09.2018
17:00:18
Все новое на котлине, старое тоже туда постепенно переползает, но котлина не всегда на 100% совместима с джавой, так что если писать библиотеку на котлине и потом использовать ее на джаве, можно нарваться

Bogdan
06.09.2018
17:00:47

Никита?❄️
06.09.2018
17:01:02

Bogdan
06.09.2018
17:01:31

Никита?❄️
06.09.2018
17:02:00
каждый инстанс это 512 мб оперативки, 1 ядро слабенькое