Size: a a a

Programming Offtop

2021 February 26

IP

Iaroslav Postovalov in Programming Offtop
(
Нету в хаскеле антаггед юнионов
они в принципе есть только в сишке
источник

AK

Anton Korotkikh in Programming Offtop
Vladimir Petrakovich
Не все умеют в юнионы, поэтому есть go
котел в юнион научился что ли?
источник

VP

Vladimir Petrakovich in Programming Offtop
Anton Korotkikh
котел в юнион научился что ли?
В user-defined - нет, но есть встроенный
источник

AN

Alexander Nozik in Programming Offtop
🤦‍♂
источник

(

( in Programming Offtop
Iaroslav Postovalov
они в принципе есть только в сишке
А как же тайпскрипт, Дарт и кто там еще в жиес компилится?
источник

IP

Iaroslav Postovalov in Programming Offtop
Anton Korotkikh
котел в юнион научился что ли?
нет, но в семантике котлина ? создает тип, населенный всеми значениями исходного плюс нулл
источник

IP

Iaroslav Postovalov in Programming Offtop
(
А как же тайпскрипт, Дарт и кто там еще в жиес компилится?
а, в этом смысле
источник

IP

Iaroslav Postovalov in Programming Offtop
ну хотя стоп
источник

IP

Iaroslav Postovalov in Programming Offtop
rtti же есть
источник

АХ

Алексей Худяков... in Programming Offtop
Alexander Nozik
Ну так-то они и в С есть
В С замыкания есть только руками
источник

IP

Iaroslav Postovalov in Programming Offtop
Алексей Худяков
В С замыкания есть только руками
И рукам от этого очень больно
источник

AK

Anton Korotkikh in Programming Offtop
(
А как же тайпскрипт, Дарт и кто там еще в жиес компилится?
лучше вообще держаться подальше от всего, что компилится в жс, инфа сотка.
источник

AM

Andrew Mikhaylov in Programming Offtop
(
a?.b ! = true, как предлагает идея, это какой-то пиздец
Двачую, мне больше по душе было бы видеть дефолт для налла, а не вот это вот.
А то
val a = myNullableFun() ?: 0
им, видите ли, норм, а
val a = myNullableFun() ?: false
уже внезапно надо заменять на
val a = myNullableFun () == true
источник

IP

Iaroslav Postovalov in Programming Offtop
Andrew Mikhaylov
Двачую, мне больше по душе было бы видеть дефолт для налла, а не вот это вот.
А то
val a = myNullableFun() ?: 0
им, видите ли, норм, а
val a = myNullableFun() ?: false
уже внезапно надо заменять на
val a = myNullableFun () == true
Не знаю, воспринимать, что в Boolean? три значения - это довольно просто
источник

VP

Vladimir Petrakovich in Programming Offtop
Andrew Mikhaylov
Двачую, мне больше по душе было бы видеть дефолт для налла, а не вот это вот.
А то
val a = myNullableFun() ?: 0
им, видите ли, норм, а
val a = myNullableFun() ?: false
уже внезапно надо заменять на
val a = myNullableFun () == true
Поставлю точку официальными coding conventions
https://kotlinlang.org/docs/coding-conventions.html#nullable-boolean-values-in-conditions
источник

AM

Andrew Mikhaylov in Programming Offtop
Зачем оно мне? Я знаю, что так принято.
источник

VP

Vladimir Petrakovich in Programming Offtop
Andrew Mikhaylov
Зачем оно мне? Я знаю, что так принято.
Там именно про условие, а не про val a = ...
источник

AM

Andrew Mikhaylov in Programming Offtop
Iaroslav Postovalov
Не знаю, воспринимать, что в Boolean? три значения - это довольно просто
Просто, согласен. Но не всегда Boolean? кодирует три семантически исключающих друг друга значения, и его хочется свести к двум, определив для третьего эквивалент. Тебе не кажется, что эти записи равнозначны, и безусловно отдавать предпочтение одной из них странновато, когда другая обобщается до других типов?
источник

AM

Andrew Mikhaylov in Programming Offtop
Vladimir Petrakovich
Там именно про условие, а не про val a = ...
Окей, значит это я неправильно запомнил. Это ж ничего не меняет.
источник

IP

Iaroslav Postovalov in Programming Offtop
Andrew Mikhaylov
Просто, согласен. Но не всегда Boolean? кодирует три семантически исключающих друг друга значения, и его хочется свести к двум, определив для третьего эквивалент. Тебе не кажется, что эти записи равнозначны, и безусловно отдавать предпочтение одной из них странновато, когда другая обобщается до других типов?
Не, я согласен, что записи равносильны
источник