
guga
07.06.2017
10:08:26
но что это меняет?

Alexander
07.06.2017
10:16:18
Раньше была гуава и анонимные классы, теперь это в стандартной либе + лямбды
Поменьше бойлерплейта стало

Google

Alexander
07.06.2017
10:17:05
Референсы на методы только нельзя было раньше делать
По существу, разница небольшая

Quantum Harmonizer
07.06.2017
10:17:52

Oleksandr
07.06.2017
14:31:08
господа котлинисты (или как правильно?), вопрос
val readOnlyList: List<Int> = arrayListOf(1, 2, 3)
// val mutableList: MutableList<Int> = readOnlyList as MutableList<Int>
readOnlyList.add(4)
println(readOnlyList)
это не компилится, но, если убрать //, то работает и выводит [1, 2, 3, 4]
это что тут, обьявление левой переменной вводит вот такой жесткий сайдэффект? О____О

Nikita
07.06.2017
14:31:56
я может ошибаюсь, но as это полноценное приведение

Quantum Harmonizer
07.06.2017
14:32:04
господа котлинисты (или как правильно?), вопрос
val readOnlyList: List<Int> = arrayListOf(1, 2, 3)
// val mutableList: MutableList<Int> = readOnlyList as MutableList<Int>
readOnlyList.add(4)
println(readOnlyList)
это не компилится, но, если убрать //, то работает и выводит [1, 2, 3, 4]
это что тут, обьявление левой переменной вводит вот такой жесткий сайдэффект? О____О
smart-cast
господа котлинисты (или как правильно?), вопрос
val readOnlyList: List<Int> = arrayListOf(1, 2, 3)
// val mutableList: MutableList<Int> = readOnlyList as MutableList<Int>
readOnlyList.add(4)
println(readOnlyList)
это не компилится, но, если убрать //, то работает и выводит [1, 2, 3, 4]
это что тут, обьявление левой переменной вводит вот такой жесткий сайдэффект? О____О
@kotlin_lang

Oleksandr
07.06.2017
14:33:02
почему этот "смарт" каст выходит за пределы скоупа обьявления?
в тот чатик мб пойду чуть позже

Quantum Harmonizer
07.06.2017
14:33:34

Oleksandr
07.06.2017
14:33:59
ну я вообще собирался вброс сделать, когда не получу подходящий ответ
или если не получу

Quantum Harmonizer
07.06.2017
14:34:17

Oleksandr
07.06.2017
14:34:30
почему этот "смарт" каст выходит за пределы скоупа обьявления?

Google

Quantum Harmonizer
07.06.2017
14:34:45

Oleksandr
07.06.2017
14:34:55
область видимости переменной
ну то есть ли бы mutableList разрешал мутировать, а readOnlyList — нет, то ок, вопросов нет
но _обьявление_ первого влияет на второе

Quantum Harmonizer
07.06.2017
14:36:11
В первой строке ты объявил лист. Вторая строка выбросила бы exception, не будь он MutableList. В третьей и четвёртой доподлинно известно, что он муитабельный.

Oleksandr
07.06.2017
14:36:52

Quantum Harmonizer
07.06.2017
14:37:13
Т. е. происходит upcast, и то, что он мутабельный, сразу забывается.

Oleksandr
07.06.2017
14:45:38
ооокей, логику постичь можно, спасибо
хотя это все равно выглядит мутно — если бы readOnlyList все так же не мог мутировать, а mutableList мог (при том, что это один и тот же лист), было бы куда нагляднее
получается проброс информации сайдэффектом в потенциально не связанные места, что усложняет думалку (reasoning)
например, если эта переменная обьявлена как ридонли на уровне класса на 10 строчке, а где-то на 150 происходит каст

Quantum Harmonizer
07.06.2017
14:52:14

Oleksandr
07.06.2017
14:56:17
Не нужно писать метод на сотню строк)
так это не в методе может быть, в чем беда
val readOnlyList: List<Int> = arrayListOf(1, 2, 3)
fun main(args : Array<String>) {
val mutableList: MutableList<Int> = readOnlyList as MutableList<Int>
readOnlyList.add(4)
println(readOnlyList)
}
то есть вообще где-то в левом месте можно обьявить лист как мутабельный, и все, "доказательство" мутабельности проброшено всюду

Quantum Harmonizer
07.06.2017
14:58:17
Нет, нужно внутри метода убедиться, что объект относится к конкретному типу — тогда во всей оставшейся части метода будет смарт-каст.

Oleksandr
07.06.2017
15:03:22
хорошо, тогда почему тут
fun main(args : Array<String>) {
val readOnlyList: List<Int> = arrayListOf(1, 2, 3)
fun foo() {
readOnlyList as MutableList<Int>
readOnlyList.add(4)
}
foo()
// readOnlyList.add(5)
}
второй add не сохраняет информацию о мутабельности?
foo же вызван

Quantum Harmonizer
07.06.2017
15:07:54

Oleksandr
07.06.2017
15:08:28
внутренний метод метода — не локальный flow ?

Quantum Harmonizer
07.06.2017
15:09:49
Нет. Как и вызов инлайновой лямбдочки, он не совсем локальный.

KrivdaTheTriewe
07.06.2017
15:59:05
а вы знали Coincidentally, 1U is exactly equal to 1 vershok, an obsolete Russian measure of length.

Quantum Harmonizer
07.06.2017
15:59:43

Google

KrivdaTheTriewe
07.06.2017
16:00:29
Про сервера, на которых жавочка живет

Snow
07.06.2017
16:00:57
Поди на ультраспарках последних?
Под соплярочкой

Quantum Harmonizer
07.06.2017
16:01:59
1 vershok, a deprecated Russian measure of length.

Snow
07.06.2017
16:02:33
Всегда было интересно. А явка под сопляркой на ультраспарках использует архитектуру ядра для распаралеливания потоков. Или не

Степан
07.06.2017
16:03:14
господа, sql лог хибера можно сделать более читабельным? Вроде плагин видел когда то для идеи, или либу какую.

Quantum Harmonizer
07.06.2017
16:03:21

Snow
07.06.2017
16:03:39
Ну да. Там по 196 ядер в проце чтоли
Гринтреды в ядре ос
Все дела

Quantum Harmonizer
07.06.2017
16:03:54

Snow
07.06.2017
16:04:13
А. Ну тогда наверное там имба на многопоточке
Но и цена за сервер в лямах баксов это воу воу
Столет нахад они хвастались же что оракл субд 10.3 на 10.1 соплярке на ультраспарках чуть ли не в 10 раз быстрее чем на интоле

Quantum Harmonizer
07.06.2017
16:06:32
А, ты про SPARC :)

Snow
07.06.2017
16:06:43
Да. Ултраспарк
Наследие сана

Quantum Harmonizer
07.06.2017
16:06:52
Я прост подумал про Spark.

Snow
07.06.2017
16:07:08
Проц ценой в пару лямов баксов

Митко Соловец?
07.06.2017
16:07:22

Google

Snow
07.06.2017
16:07:24
Но это не точно))
Проц 11 года до сих пор мощнее и быстрее процев интела нынешних

KrivdaTheTriewe
07.06.2017
16:09:19
кек

Quantum Harmonizer
07.06.2017
16:09:34

KrivdaTheTriewe
07.06.2017
16:10:02
https://www-03.ibm.com/systems/z/hardware/features/zaap/

Snow
07.06.2017
16:12:15
Эээ там же не спарк. Там этот павер

Eugene
07.06.2017
16:12:28

Степан
07.06.2017
16:12:32

Snow
07.06.2017
16:12:41
На прошлой работе сап висел на блейдах с лепестками на паверах
С аиксом

Митко Соловец?
07.06.2017
16:12:57

KrivdaTheTriewe
07.06.2017
16:13:24
но я боюсь у нее стоимость где - то 50 мультов

Snow
07.06.2017
16:13:40
Нет

KrivdaTheTriewe
07.06.2017
16:13:42
или около того

Snow
07.06.2017
16:13:47
Там графония нет

Eugene
07.06.2017
16:13:49

Google

Митко Соловец?
07.06.2017
16:13:51

Snow
07.06.2017
16:13:55
Либгдх с ошибкой вылетит

Митко Соловец?
07.06.2017
16:14:12
хотя 50 лямов - зп обычного джава джуна в Москве

KrivdaTheTriewe
07.06.2017
16:14:15
врети!
ну я не видел каталожных цен, признаюсь

Eugene
07.06.2017
16:14:24
Лямов

KrivdaTheTriewe
07.06.2017
16:14:25

Oleg
07.06.2017
16:14:26

Митко Соловец?
07.06.2017
16:14:32

sss3 ?
07.06.2017
16:14:36

Митко Соловец?
07.06.2017
16:14:46

KrivdaTheTriewe
07.06.2017
16:15:12
оркал там вообще в своих процах sql исполняет, говорят

Snow
07.06.2017
16:15:19
Орацл просрали и архитектуру и ос

Eugene
07.06.2017
16:15:24
Если ты в Москве получаешь меньше 250к, значит вас обманывают - меняйте работу

Snow
07.06.2017
16:15:24
Питушки они

KrivdaTheTriewe
07.06.2017
16:15:31

Snow
07.06.2017
16:15:47
Сан тащил

KrivdaTheTriewe
07.06.2017
16:15:49
Сан тащил
сан сила, оркал могила, шиппилёв пророк мой

Igor
07.06.2017
16:16:19