Size: a a a

Programming Offtop

2020 October 26

I

Ilmir in Programming Offtop
Alexander Nozik
Ну вот у нас сейчас есть data и suspend. Пока есть только они, все ок. Но давайте смотреть более широкую картину:
* const val
* Composable
* val class
Получаем уже кучу разны штук, которые хочется воткнуть и почти на каждое надо городить ключевое слово. Уж лучше сделать единый @-синтаксис (это уже было в груви). И пусть будет единообразоно.

НО! Есть совершенно правильный аргумент @SchFuntik о том, что мы должны иметь возможность глядя на этот модификатор, понимать, что он делает. Если каждый придумывает свои декораторы и эти декораторы меняют семантику как хотят - это беда. Запиши себе для созвона.
Ctrl-клик для того чтобы перейти в функцию. Ты не поверишь, сколько я слышал нытья на тему того, что лямбды в котлине выглядят как блоки кода. Вот даже @SchFuntik сегодня по ним прошёлся. И все как один говорили "при чтении кода непонятно". Ну блин, котлин не существует в вакууме, он разрабатывается совместно с ИДЕ. И логично, что мы прячем всю сложность на расстоянии одного клика с ИДЕ, чтобы конечный код выглядел простым.
источник

AN

Alexander Nozik in Programming Offtop
Ilmir
Ctrl-клик для того чтобы перейти в функцию. Ты не поверишь, сколько я слышал нытья на тему того, что лямбды в котлине выглядят как блоки кода. Вот даже @SchFuntik сегодня по ним прошёлся. И все как один говорили "при чтении кода непонятно". Ну блин, котлин не существует в вакууме, он разрабатывается совместно с ИДЕ. И логично, что мы прячем всю сложность на расстоянии одного клика с ИДЕ, чтобы конечный код выглядел простым.
Твой контрол клик не поможет, если оно меняет сигнатуру.
источник

BP

Bogdan Panchenko in Programming Offtop
Ilmir
Ctrl-клик для того чтобы перейти в функцию. Ты не поверишь, сколько я слышал нытья на тему того, что лямбды в котлине выглядят как блоки кода. Вот даже @SchFuntik сегодня по ним прошёлся. И все как один говорили "при чтении кода непонятно". Ну блин, котлин не существует в вакууме, он разрабатывается совместно с ИДЕ. И логично, что мы прячем всю сложность на расстоянии одного клика с ИДЕ, чтобы конечный код выглядел простым.
Ну к лямбдам у меня претензий 0, их привели в пример что все просто
источник

I

Ilmir in Programming Offtop
Alexander Nozik
Твой контрол клик не поможет, если оно меняет сигнатуру.
Почему? Новые ресиверы добавляются в аргументе функции-декоратора.
источник

BP

Bogdan Panchenko in Programming Offtop
Напыщенное Эго
по-моему плагины могли бы быть как полигон сообщества для языковых фич. вместо бесконечных теоретизирований в пропоузолах, сообщество пилит разные плагины. и только проверенные временем фичи перетекают в язык при необходимости.
Ну до того времени когда у каждый компании будет свой диалект котлина, и она не будет обновлять котлин, потому что их плагин сломается
источник

AN

Alexander Nozik in Programming Offtop
Ilmir
Почему? Новые ресиверы добавляются в аргументе функции-декоратора.
Если они явно прописаны в виде with<A>, то да. А если это специальный декоратор, где оно унутре зашито?
источник

BP

Bogdan Panchenko in Programming Offtop
Bogdan Panchenko
Ну к лямбдам у меня претензий 0, их привели в пример что все просто
Пс я так и написал "творите что хотите"
источник

BP

Bogdan Panchenko in Programming Offtop
Только вы начали на популяризацию работать, а не на качество
источник

BP

Bogdan Panchenko in Programming Offtop
И благодаря котлину JB теперь у меня не ассоциируется со словом "качество"
источник

AN

Alexander Nozik in Programming Offtop
Bogdan Panchenko
И благодаря котлину JB теперь у меня не ассоциируется со словом "качество"
нэ конструктивно
источник

I

Ilmir in Programming Offtop
Alexander Nozik
Если они явно прописаны в виде with<A>, то да. А если это специальный декоратор, где оно унутре зашито?
Лучше на примере. Вот есть функция

fun scoped(block: Scope.() -> Unit) = ...

Используем её

fun useScoped() = scoped { // this: Scope
}

Теперь декоратор

@scoped
fun useScoped() { // this: Scope
}
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
нэ конструктивно
Да без толку.
источник

AN

Alexander Nozik in Programming Offtop
Кроме того, есть тут товарищь @happy_bracket , которому фичей всегда мало
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Кроме того, есть тут товарищь @happy_bracket , которому фичей всегда мало
Да нет, ему вон саспенд мешает, к примеру.
источник

AN

Alexander Nozik in Programming Offtop
Ilmir
Лучше на примере. Вот есть функция

fun scoped(block: Scope.() -> Unit) = ...

Используем её

fun useScoped() = scoped { // this: Scope
}

Теперь декоратор

@scoped
fun useScoped() { // this: Scope
}
да. И не понятно, что ее можно вызвать только в определенном контексте. Вроде не фатально. Но это штука, которую надо очень внимательно изучить и поэкспериментировать.
источник

с#

саша сок #KotlinGang... in Programming Offtop
Bogdan Panchenko
И благодаря котлину JB теперь у меня не ассоциируется со словом "качество"
ну я видел единственный шаг, который был на популяризацию - KMM, потому что по сути это простой mpp и просто форсят что можно юзать его между мобилками. остальное вроде норм пока. а судить по абстрактным идеям которых нет ещё в языке и пока только над ними думают - странно
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Да нет, ему вон саспенд мешает, к примеру.
Некоторым танцорам, мешает все. Это понятно
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Некоторым танцорам, мешает все. Это понятно
Да нет, у него местами вполне логичные аргументы. Просто он их до "Котлин неконсистентный" довольно странным образом экстраполирует.
источник

AN

Alexander Nozik in Programming Offtop
Ilmir
Лучше на примере. Вот есть функция

fun scoped(block: Scope.() -> Unit) = ...

Используем её

fun useScoped() = scoped { // this: Scope
}

Теперь декоратор

@scoped
fun useScoped() { // this: Scope
}
Кстати, а представь себе ситуацию, когда декоратор подменяет выходной тип. Написано у тебя fun doSomething(): A, с декоратором возвращается B. Грабли
источник

AM

Andrew Mikhaylov in Programming Offtop
Ну и да, его война с саспендами не сильно про Котлин, на самом деле.
источник