Mikhαil
Mikhαil
Ilya
да я без руля честно говоря)
Ilya
Кажется, по ПДД так нельзя.
Ilya
Кстати, а где возмущение фшарпистов по поводу долго едущих в релиз стейт машин? В пронете почему-то постоянно DU вспоминают.
Anonymous
Там в Эрланга OTP 24 вышел с кучей всего нового, в том числе с jit
Sergey
Ayrat
AlexB
Ayrat
это вам не рекорды запилить
Sergey
Ilya
И DU тоже нельзя так просто в сишарп пихать, наверное.
Ilya
К счастью, в джаве уже придумали синтаксис DU. Можно оттуда брать.
Ayrat
то есть это вам не это
Ilya
Ilya
Он в сишарпе вообще чужеродно будет смотреться.
Ayrat
Ayrat
Ilya
Лаконично - да. С этим не спорю.
Ayrat
ну то есть надо просто придумать как будет выглядеть этот синтаксис
Ayrat
ну там
super enum {
String case1
Int case2
(String, Int) case3
case4
}
Ayrat
всё, хуярим в прод
Ilya
Ни разу не сишарп)
Ayrat
да чо не сишарп-то
Ayrat
даже типы перед именем!
Ayrat
и enum!
Ayrat
что тебе еще надо окаянный
Ilya
sealed interface Shape {
record Circle(Point center, int radius) implements Shape { }
record Rectangle(Point lowerLeft, Point upperRight) implements Shape { }
}
А вот это уже ближе
IdiocyAcceptance
Условно, если у тебя DU | A | B | C, то чтобы было можно полноценно делать функции, принимающие B
Ayrat
IdiocyAcceptance
А не матчить каждый раз на составляющие
Ilya
Ayrat
скала уже шагнула вперёд и ввела нормальный синтаксис
Ilya
Оно прям вот так выглядит.
Ayrat
Это из джавы.
я говорю о том что опыт вокруг говорит что люди захотят НОРМАЛЬНЫЙ синтаксис со временм
Ayrat
а не ебаться с бойлерплейтом
Ayrat
то есть силед трейты в скале3 сделали ок
Ayrat
в котлине планируют
Ilya
Ну ты пытаешься ML притащить в сишарп.
Ayrat
Ayrat
там кейсы через запятую объявляются
Ayrat
какой тут ML
IdiocyAcceptance
Ну, enum вообще не то же
IdiocyAcceptance
Они диаметрально противоположны с DU
Ayrat
вот дайте мне возможность указывать ТИП кейса и вот оно ДУ
Vasily
Ввели бы слово union
IdiocyAcceptance
Там есть пропозал на кастомные енумы
Vasily
И не ебали бы мозг
Hog
IdiocyAcceptance
Enum - константные значения под шилдиком одного конкретного типа
Vasily
public union X { String A, int B}
IdiocyAcceptance
DU - рантайм значения со строгим матчингом, имющие вообще разные типы и значения
Ayrat
слёт архитекторов сишарпа объявляется открытым
Vasily
Vasily
Как это ломает старый код?
Hog
У тебя есть переменная юнион?
Ilya
А ещё надо бы разрешить интерфейсы реализовывать.
IdiocyAcceptance
IdiocyAcceptance
Ты же не теоретический енум используешь, а вот конкретный
IdiocyAcceptance
Так же и с ДУ
Vasily
Это как с инит пропертями
Ilya
Вот теперь точно в прод.
Mikhαil
Так же и с ДУ
Так и? Как детали реализации должны влиять на синтаксис? Природа енума не диаметрально противоположна дю
IdiocyAcceptance
Как минимум потому что Enum имеет один строгий тип
IdiocyAcceptance
А DU имеет сколько угодно
IdiocyAcceptance
Это уже означает что синтаксис должен быть разным
Mikhαil
IdiocyAcceptance
И 2) синтаксис - это и есть реализация