Nikolay
Но надо переписать
Nikolay
Сложно слишком
Vladislav
ты это показывать собираешься?
Nikolay
https://gist.github.com/Dolfik1/10b88529dcf3582b12732bd65f0299c4
Nikolay
Вообще нет
Nikolay
Ну в репе будет
Vladislav
кстати не совсем понятно почему у тебя в коде
Nikolay
А там не хочу говнокод)
Vladislav
let cast f = upcast f : IRequestBase<'a>
а не
let cast f : IRequestBase<'a> = upcast f
Vladislav
или
Vladislav
let cast (f : IRequestBase<'a>) = upcast f
Nikolay
Так IRequestBase должен возвращаемым быть
Vladislav
хотя не, последнее не то
Vladislav
Vladislav
твой вариант очень странный
Vladislav
не видел ни разу
Hog
gsomix
От maybe в коде тоже можно избавиться.
gsomix
Жуть.
https://gist.github.com/Dolfik1/10b88529dcf3582b12732bd65f0299c4#file-program-fs-L37
gsomix
Что за безликие типы? ChatId — это UserId? Или как?
https://gist.github.com/Dolfik1/10b88529dcf3582b12732bd65f0299c4#file-program-fs-L19
Nikolay
Nikolay
Nikolay
Хотя в ЛС чат ид и юзер ид то же самое
gsomix
Ну, ты бы определился.
gsomix
А то речь про юзеров, а работаешь с чатами. Это путает.
Nikolay
Исходники есть, сделай как надо)
gsomix
Гм. А нафиг ты код выложил?
gsomix
Я думал, чтобы поревьювили.
gsomix
Если нет, то я пойду дальше нихуя не делать
Nikolay
Nikolay
Ибо этот хотел спокойно утром переписать
Nikolay
https://github.com/Dolfik1/ItMeetupCats
Nikolay
В дев ветке
Nikolay
https://github.com/Dolfik1/ItMeetupCats/blob/dev/Program.fs
Nikolay
Nikolay
Igor
Работает
А какой "Fsac Runtime" в настройках выбран?
Igor
Чет у меня даже в браузере aws.random.cat подвисает.
Nikolay
Nikolay
Ну да, надо писать кэш
gsomix
Блин, что за позор вы устроили в @pro_net?
gsomix
А потом ходят истории про неадекватных фпшников.
gsomix
Не надо так.
Nikolay
@gsomix совесть сообщества
gsomix
Как по методичке, и про Алана Кея с ООП вспомнили, и про то, что якобы за лже-ООП никакого теоретического обоснования нет, и за термины поспорили.
gsomix
Ух.
Éminence grise
Ну откуда адекватность, когда каждый день на работе с этим бороться приходится.
Ayrat
gsomix
@fvnever
Dr. Friedrich
Местные первые начали, не мы на них нарывались!
Dr. Friedrich
Представляешь, они сомневались, что в интерфейсах нужны поля и возможность наследования от классов :(
gsomix
Бывает. Но остальную-то чушь про "ООП вс ФП" можно было и потереть.
Dr. Friedrich
А я на самом деле просто погромировал на Котлине, и мне очень захотелось понаписать трейтов
Dr. Friedrich
Именно таких, с наследованием от общего базового класса.
Анна
Dr. Friedrich
И тут вспомнил, что в C# тоже есть будут же фичи и такой же косяк (с невозможностью наследоваться от класса). И понеслось...
Dr. Friedrich
о, а там что ли нету
Трейты эмулируют интерфейсами с дефолт-методами, работает ожидаемо хреново.
Dr. Friedrich
Ну, то есть работает нормально, но интересующие меня трюки сделать не вышло. Пришлось экстеншен писать.
Анна
Анна
@fvnever а что ты пишешь?
Dr. Friedrich
Меня тут приглашали научным руководителем к студентам, которые пилят макросы в Котлоне :)
Анна
Éminence grise
Они все равно накосячат. Ведь собственно не трейт наследуется от класса, а его реализация делается для класса. А они как пить дать прикрутят все через ООП.
Dr. Friedrich
Анна
а, тогда ладно :)
Dr. Friedrich
Dr. Friedrich
Не вижу ни одной проблемы с ООП 🤷♂️
Анна
Я вчера на ночь попрограммировала, потом спать спокойно не могла почему-то 🤔 Надо было хоть мысли что ли записывать, которые мне в голову лезли вместе с бессонницей, там на пару статей на Хабре было
Dr. Friedrich
Надо бы чего опенсорсное на нём тоже начать пилить, но пока очередь на другие проекты и близко не рассосалась.
Dr. Friedrich
Мне чуть не каждый день приносят пул-реквесты в WPF-Math, а ещё меня ждут хтонические баги с тредингом и дедлоками в Jabber-Net.
Анна
Nikolay
Я к вам снова за помощью
Nikolay
Бота дописал, нужно потестить)
Nikolay
@MeowCatsBot
Nikolay
Теперь мяукает из кэша