Size: a a a

Programming Offtop

2020 September 08

(

( in Programming Offtop
Ну так ясен хуй, ты берешь дабл и делаешь дабл
источник

BP

Bogdan Panchenko in Programming Offtop
ну и имена в реальности разные
источник

BP

Bogdan Panchenko in Programming Offtop
(
Ну так ясен хуй, ты берешь дабл и делаешь дабл
но типы разные!
источник

BP

Bogdan Panchenko in Programming Offtop
а не я блять второй параметр не указал 🤦‍♂️
источник

(

( in Programming Offtop
Bogdan Panchenko
но типы разные!
@Suppress("NON_PUBLIC_PRIMARY_CONSTRUCTOR_OF_INLINE_CLASS")
inline class NotZeroInt internal constructor(val value: Int)

fun Int.notZero(): NotZeroInt? = this.takeUnless { it == 0 }?.let(::NotZeroInt)

Вот так берешь и педалишь
источник

KD

Konstantin Dovnar in Programming Offtop
Bogdan Panchenko
Это я понимаю, и я не против. Но есть люди которым нужна стабильность.
Кому нужна стабильность не летят обновляться на огромную свежую версию.
источник

BP

Bogdan Panchenko in Programming Offtop
(
@Suppress("NON_PUBLIC_PRIMARY_CONSTRUCTOR_OF_INLINE_CLASS")
inline class NotZeroInt internal constructor(val value: Int)

fun Int.notZero(): NotZeroInt? = this.takeUnless { it == 0 }?.let(::NotZeroInt)

Вот так берешь и педалишь
интренал нельзя
источник

(

( in Programming Offtop
Bogdan Panchenko
интренал нельзя
можно, я же засупрессил
источник

(

( in Programming Offtop
Если нельзя, sue me, kotlin.Result так и работает
источник

BP

Bogdan Panchenko in Programming Offtop
(
можно, я же засупрессил
а это хак ?
источник

BP

Bogdan Panchenko in Programming Offtop
буду знать)
источник

VP

Vladimir Petrakovich in Programming Offtop
(
Поскольку мы находимся в нетотальном языке, у тебя есть 2 варианта работы с некорректными значениями:
1. Кинуть рантайм ошибку
2. Вернуть опшен (~нуллабл)
Инлайн классы добавляют третий пункт:
3. Принять тип, который исключает некорректные значения
В тотальных языках у тебя, по очевидным причинам, пропадает 1 вариант.
В нетотальных языках 1 вариант возможен, но если у тебя есть 3, непонятно, зачем им пользоваться
Как будто обычные классы такой опции не дают
источник

BP

Bogdan Panchenko in Programming Offtop
вот у меян 90% кода котлина с хаками
источник

BP

Bogdan Panchenko in Programming Offtop
это же язык мечты ?
источник

(

( in Programming Offtop
Vladimir Petrakovich
Как будто обычные классы такой опции не дают
нет, можно конечно, но это не будет бесплатно
источник

I

Ilmir in Programming Offtop
(
Если нельзя, sue me, kotlin.Result так и работает
"Что позволено Юпитеру не позволено быку". В данном случае всё работает, но каждый сапрес - потенциальный источник ошибок.
источник

(

( in Programming Offtop
Ilmir
"Что позволено Юпитеру не позволено быку". В данном случае всё работает, но каждый сапрес - потенциальный источник ошибок.
Если мне кто-нибудь сейчас расскажет, зачем инлайн-классу обязательно иметь публичный конструктор, я присоединюсь к Богдану в осуждении инлайн-классов за бесполезность
источник

AM

Artem Molotov in Programming Offtop
"Даже если интернет сегодня убрать, Telegram-каналы эти из Польши будут работать."
Другие, не менее глубокие наблюдения Александра Лукашенко о роли интернета и Telegram вы можете прочить в его интервью ведущим российским СМИ.
https://www.belta.by/president/view/lukashenko-esli-segodnja-belarus-ruhnet-sledujuschej-budet-rossija-405975-2020/
источник

AM

Artem Molotov in Programming Offtop
Было уже или ещё нет?
источник

AM

Artem Molotov in Programming Offtop
Моя любимая рубрика 'они обосрались как и было предсказано'

https://ria.ru/amp/20200908/sputnik-1576905844.html
источник