Bogdan
ну логично
flexxxer
достойно я считаю
Andrii
Agda тоже может генерить код :)
Bogdan
ну тип врядли когда-то появится что-то что сможет заменить работу программиста
Bashka
Andrii
Bogdan
flexxxer
а потом скину, я не забуду что надо скинуть и почему ;)
Bashka
Тогда вопрос - как на Atom русский язык установить?
Bogdan
если там что-то полезное:D
flexxxer
скинь мне
только челу выше не перекидывай. помню мне показали как фп-код писать на шарпе и я сначала в штыки воспринял идею тупо потому что понять не мог
Bogdan
Bogdan
Andrii
Bashka
Ну блин, что б понятней было
Bogdan
не надо
flexxxer
Bogdan
большая часть доки на английском
flexxxer
о, du
flexxxer
введут в шарпе 11/12, сейчас лишь соси и пользуйся решениями в виде "тип эмулирующий du и дающий безопасность при изменении типов входящих в du"
flexxxer
в смысле oneof-ы
Bogdan
flexxxer
flexxxer
смотри:
Andrii
Andrii
Например, Rust ограничивает возможности и тем самым добавляет верифицируемости.
flexxxer
смотри:
у нас в шарпе для создания типа структуры есть следующий набор ключевых слов:
struct
readonly struct
record struct
readonly record struct
ref struct
readonly ref struct
и заебешься объяснять людям, что первые два являются легаси парашей и приходится тащить анализатор который запрещает подобное писать без варнингов
Bogdan
flexxxer
вооот
flexxxer
смотри, ты скок в шарпе уже?
Bogdan
работаю мало
flexxxer
для классов нельзя писать readonly
flexxxer
readonly class - не валидно
Bogdan
Bogdan
я думал ты про обьявление в качестве поля
flexxxer
да, нельзя создать тип класса с модификатором readonly
Bogdan
тогда ладно
Bashka
Мне практика нужна, тогда и запоминается и учится легче, а без кодинга просто трата времени и нервов, вот я и наустанавливал себе всякой х.йни, а разобраться не могу.
Bogdan
flexxxer
public readonly class MyType {} не скомпилится
Bogdan
Bogdan
я думал ты про поле, я читаю жопой ночью
flexxxer
никогда так не писал
да, но в структурах есть. и ты как раз предположил, что язык семитричен, но шарп с тобой не согласен
Bogdan
DOK ꧁꧂
Бесполезный почти язык
flexxxer
вообще не часто структуры использую
а мне вот приходится. в геймдеве же фпс хочется и не хочется фризов, вот и делаешь dto-шки с инвариантами в виде структур, шоб gc не обзывал тебя додиком
Bogdan
flexxxer
у меня бэк
бек бывает разный. бывает формочки открываешь, бывает данные надо через самбу (smb) шину гонять. со вторым прикольный стори есть на ютабе: 1.5 часа доклада о том, как снизить memory-траффик чтобы сервер ок работал
flexxxer
в итоге 0 мегабайт аллокаций, скорость в разы увеличилась, и это всё без раста
flexxxer
Бесполезный почти язык
до момента пока в фарше разработчики используют state-full коллекции тк "с иммутабельными лагает" не такой уж и бесполезный при написании этих самых state-full коллекций/объектиков
Bogdan
flexxxer
Andrii
Bogdan
Bogdan
ты просто такие дебри знаешь
flexxxer
И без ООП, чтобы cache friendly
а че, код при переносе парадигм внутри шарпа меняется семантически, но не становится непонятнее. да и ооп не решает задачу перегона данных
balint
интересно сколько проживет C#
хз что должно появиться нового что заменит язык который развивается думаю в 10 раз больше чем всё что новое разрабатывается
flexxxer
ты просто такие дебри знаешь
я больше даже знаю
можно ли сделать такой код компилирующимся?
var numbers = (1, 5, 10, -5);
foreach(var item in numbers) {
Console.WriteLine(item);
}
и чтобы вывелось
1
5
10
-5
?
flexxxer
по дефолту если че комплится не будет :D
Bogdan
ну это логично
Bogdan
но вопрос стоял можно ли это как-то изменить
flexxxer
ага, так вот, в шарпе 9 есть фича в виде extension-методов GetEnumerator() для типов любых
если ты знаешь как работает утиная типизация foreach (а ему пофиг на самом деле на то IEnumerable у тебя или нет) и ты знаешь этот факт, то написать код который заставит работать код выше - 5 минут работы
Bogdan
flexxxer
можно даже сделать свой кастомный энумератор для флота чтобы foreach энумирировался по битам возвращаяя bool, но это мало применимо
flexxxer
а вот пример выше да, тк прикинь: делать foreach для 2-3 переменных по классике - аллоцируй массивчик чел. в геймдеве такое не прощают в hotpath
Bogdan
Bogdan
почему ты не пойдешь работать ты уже на мидла тянешь
Bogdan
я просто шарп не учил постоянно, я его несколько раз бросал...Активно я его полгода как начал учить снова
flexxxer
я ходил летом месяцок поработать, меня уволил директор, а мой руководитель ахуел и невыхуел от данного решения. а еще я понял следующую фигню:
- фп-шники головного мозга существуют, и будут мешать
- ооп-шники головного мозга существуют, и будут сильно мешать
- комьюнити и культура шарпистов не позволяет им писать код без "папка мокнул маму" и DI
- F# отсутствует в вакансиях в польше, чехии. я бы пошел даже за $5 в час в норм компанию на дотнете с F# в европе, но берут только ультрасеньеров знающих и F#, и TS, а еще тех у кого опыт работы в десятках лет
- существование команд на шарпе с культурой фаршистов не подтверждено и мнимо
я решил что надо бы свою кантору открывать и заниматься тем что нравится. вот с челами с уника собираемся делать игру, есть план и навыки, надо бы вот только с учебой разобраться... 😂😂😂
думаю весомые аргументы
Bogdan
тебе сейчас лет 18?
Bogdan
я ходил летом месяцок поработать, меня уволил директор, а мой руководитель ахуел и невыхуел от данного решения. а еще я понял следующую фигню:
- фп-шники головного мозга существуют, и будут мешать
- ооп-шники головного мозга существуют, и будут сильно мешать
- комьюнити и культура шарпистов не позволяет им писать код без "папка мокнул маму" и DI
- F# отсутствует в вакансиях в польше, чехии. я бы пошел даже за $5 в час в норм компанию на дотнете с F# в европе, но берут только ультрасеньеров знающих и F#, и TS, а еще тех у кого опыт работы в десятках лет
- существование команд на шарпе с культурой фаршистов не подтверждено и мнимо
я решил что надо бы свою кантору открывать и заниматься тем что нравится. вот с челами с уника собираемся делать игру, есть план и навыки, надо бы вот только с учебой разобраться... 😂😂😂
думаю весомые аргументы
а почему в C# не пойдешь работать
flexxxer
а, я бы еще на расте пошел программить, тк я его изучил, при том что я плюсы знаю (20-30 хедеров из std могу по памяти дать и смогу сказать по имени типа какой хедер надо подрубить. фп фичи плюсов тоже знаю)
но на расте вакансий 1-2 буквально на снг
Bogdan
капец ты прошаренный
Bogdan
я блин столько раз программирование бросил за жизнь