Klei
ивент сорсинг же является подмножеством cqrs, не?
В гайдах мс фигурирует развитие/углубление идеи, поэтому то же не понял.
Roman
Не Мартин Флоувер?
Грег Янг. Фаулер это про микросервисы
Vladislav
Vladislav
normalno
Vasily
Люблю такие пр
Vladislav
https://github.com/Microsoft/visualfsharp/pull/6433
Vasily
Ух бля там мякотка
Vasily
src/buildfromsource/FSharp.Build/FSBuild.fs
Vladislav
это какой-то фейк колхозный?
Hog
а, вот есть какой-то Empty Pipeline. Опять всё ручками?
Можно из маркета добавить FAKE runner
Vasily
это какой-то фейк колхозный?
Я думаю, это то место, где фейк родился
Hog
это какой-то фейк колхозный?
Прям песня сектор газа :)
Viacheslav
Можно из маркета добавить FAKE runner
да, я тут ещё немного разобрался, скачал этот раннер, но пишет, что дотнет спотыкается
Viacheslav
а, не дотнет, сорян
Hog
да, я тут ещё немного разобрался, скачал этот раннер, но пишет, что дотнет спотыкается
Всмысле? Он запускает кмд, который бутстрапит пакет и фейк, а потом ранает фейк. Параметры комстроки - из этого экстеншона
Viacheslav
There was a problem while setting up the environment: -> Error in paket.dependencies line 3 Could not parse framework 'netcoreapp2.2'.
Hog
Хз зачем это там. Не прописываю. Может пакет древний?
Hog
@slavonchick если потерпишь пару часов - разберёмся
Hog
https://twitter.com/kot_2010/status/1114084311286919168?s=12
Крылатый
Моё любимое
Hog
https://twitter.com/plastrich/status/1114124749930672129?s=12
Vasiliy
что за Бугаенко?
Sergey
что за Бугаенко?
Апостол ооп
Андрей
OOP Хамас я б сказал
Андрей
Он ещё свой OOP коран продаёт
Bonart
Но база одна, при этом. Можно ли это считать сикьюресом?
Можно. Если помнишь, CQRS0 - это вообще его отсуствие
Roman
Можно. Если помнишь, CQRS0 - это вообще его отсуствие
что такое CQRS0? Разные степени проникновения сегрегации?
Roman
ничеси, для раста уже есть cqrs фреймворк. Чужие дети так быстро растут
Vasily
штоу
Не вращаюсь в этих кругах
Shub
мы делаем. очень успешны
Vasily
мы делаем. очень успешны
Ок. Первая success story
Roman
Ок. Первая success story
ну как считаешь, полезно разделять модельки для чтения и модельки для записи?
Vasily
Считать тебе обычно надо не совсем те данные, которые ты записал
Roman
ну вот уже маленький cqrs
Roman
А хмл провайдер из фшарп.дата генеративный или нет?
Vladislav
90% что нет
Vladislav
Если генеративный то можешь типы использовать
Roman
хер там, ирейзд.
Vasily
Коллеги, тупой вопрос
Vasily
А мы можем let (A id)= v записать как функцию?
Vasily
Интересует именно вариант декомпозиции
Vladislav
Ммм а на выходе компилятор что выдаёт?
Vladislav
В сишарп коде на шарп лабе например
Vasily
Хороший вопрос
Vasily
Просто не хочется копипасту лепить
Vasily
Хотя ее тут и не будет, впрочем
Roman
А мы можем let (A id)= v записать как функцию?
не понял, нужна функция, которая достанет id?
Vasily
Ага
Roman
Дженерик деконстракт
для произвольных DU с 1 кейсом?
Vasily
С n кейсами
Roman
С n кейсами
а как она должна работать тогда, если структура у каждого кейса произвольная? Где-то есть внутренности, где-то нет, где-то тапла или массив
Vasily
Согласен
Vasily
Не прокаит
Roman
без кондома конечно можно юзать FSharpValue
Roman
но это плевок в лицо системе типов
Vasily
@fvnever Тута?
Vladislav
let inline getItem sunion = (^a: (member Item: ^b) (sunion))
Vladislav
не дает использовать
Vladislav
компилятор
Roman
let inline getItem sunion = (^a: (member Item: ^b) (sunion))
я плохо не понял, что может быть короче и безопаснее let (Case value) = u?
Vasily
Кстати, а почему райдер декомпозицию вида B c, где с - тапл, подчеркивает
Roman
меньше 1 строки все равно не получится)
Vasily
меньше 1 строки все равно не получится)
Хотелось как раз то, что слева, в виде функции
Vladislav
Наркоманский интерес
Roman
Хотелось как раз то, что слева, в виде функции
так у тебя Case это та самая функция, не? То есть эта функция сэкономила бы только скобки
Roman
заставляют писать юнит тесты на ио =(
Vasily
Мда
Vasily
Паттерн матч почему -то не декомпозирует тапл в одну переменную
Vasily
https://sharplab.io/#v2:DYLgZgzgNAJiDUAfA9gBwKYDsAEBlAnhAC7oC2AsAFBH4bYDCAvFYgILbJjYCWmRAVLyJUqwdEWxhkybIzABXTAGMi3ZJhbZ2ADwC0APlQAnIWBwAiAKStz2bVSA
Roman
ололо
Roman
@vshapenko type A = A of (int*int) let v = A (2,2) let (A id) = v
Roman
баг или фича?
Vasily
А в матчинге так не работает