Size: a a a

2020 August 26

МГ

Михаил Гринев... in F# Chat
Vasily Shapenko
Кто-то забыл _
забыл)))
спасибо!)
источник

МГ

Михаил Гринев... in F# Chat
Prunkles Dreemurr
Но тогда непонятен момент с "был такой код, даже тесты под него написаны, сейчас открыл и уже ошибка"
тоже не знаю, это вещь на тестах работала
типо тесты под это делце написал и они проходили
ну ,видимо, я невнимательный и где-то что-то исправил)
источник

ДБ

Дмитрий Башинский... in F# Chat
Как вы пишете функции которые зависят от других?
так?
https://i.imgur.com/QKHio1J.png
источник

ДБ

Дмитрий Башинский... in F# Chat
или как то так?
https://i.imgur.com/6W9hzkq.png
источник

ДБ

Дмитрий Башинский... in F# Chat
и ещё
я написал простой MailReader
но в самом mailBox получается какая-то каша, как можно улучшить что стоит вынести?
https://gist.github.com/Git-Drive/13e40144da0925a415164ed54a380c83#file-fs-L61

Мне кажется что getClient не стоит выносить потому как он нужен только в обработке Receive и наоборот кажется что его лучше вынести чтоб не мешался в коде обработки

когда делаю модуль каша только растет, а как закинуть логгер в тот же mailBox не понятно, статья с FP DI сбила с толку
источник

ДБ

Дмитрий Башинский... in F# Chat
ещё и костыль с авто диспоузом
источник

Dv

Dr. Friedrich von Ne... in F# Chat
Дмитрий Башинский
Как вы пишете функции которые зависят от других?
так?
https://i.imgur.com/QKHio1J.png
Вот этот вариант выглядит лучше, если нет требований к его обобщению.

Отмечу, что такое использование Dictionary выглядит подозрительно. Уж не ConcurrentDictionary ли ты хотел?
источник

ДБ

Дмитрий Башинский... in F# Chat
Dr. Friedrich von Never
Вот этот вариант выглядит лучше, если нет требований к его обобщению.

Отмечу, что такое использование Dictionary выглядит подозрительно. Уж не ConcurrentDictionary ли ты хотел?
хотел бы его, но подумал что я в MailBox могу не бояться
источник

ДБ

Дмитрий Башинский... in F# Chat
сделал ревизию - выпилил MailBoxProcessor, заюзал ConcurrentDictionary и стало все проще
источник

Dv

Dr. Friedrich von Ne... in F# Chat
Вообще, я бы вынес какой-то другой примитив для словаря, типа getOrCreate (key) (factory)
источник

ДБ

Дмитрий Башинский... in F# Chat
странно git gist потерял мою первую версию
источник

ДБ

Дмитрий Башинский... in F# Chat
можешь глянуть новую?
источник

ДБ

Дмитрий Башинский... in F# Chat
новая версия влезла в 20 строк
источник

ДБ

Дмитрий Башинский... in F# Chat
из за Async.AwaitEvent
источник

ДБ

Дмитрий Башинский... in F# Chat
правильно ли я подменил Cancel Token?
источник

ДБ

Дмитрий Башинский... in F# Chat
источник

ДБ

Дмитрий Башинский... in F# Chat
чтоб отмена с верху меня не бахнула
источник

Dv

Dr. Friedrich von Ne... in F# Chat
Дмитрий Башинский
правильно ли я подменил Cancel Token?
Посмотри Async.StartChild, там встроенная поддержка таймаутов есть.
источник

ДБ

Дмитрий Башинский... in F# Chat
Он unit возвращает
источник

ДБ

Дмитрий Башинский... in F# Chat
Вроде смотрел
источник