Éminence grise
Я знаю 😊
Éminence grise
Это меня гладит, но не возносит 😊
Romɑn
https://github.com/fsharp/fslang-suggestions/issues/710
Чего он хочет-то? Он про фейбл или где?
Hog
Чего он хочет-то? Он про фейбл или где?
нет - это про ф# в принципе. не нравится порядок файлов в проекте - хочет зависимости прям в исходнике, а уж компилятор сам потом построит порядок
Hog
borsch
Roman
Даже обидно. Мы ж круче, чем эликсир, ну раст ладно, это топ ..
Я глубоко не копал, но со стороны выглядит он и правда очень многообещающе. И достаточно низкоуровневости, и хорошие абстракции
x
*на современный виндофс
Hog
http://www.darktranquillity.com/
Hog
В феврале - Минск, Москва, Питер, Новосиб!
x
https://blog.nuget.org/20181217/Enable-repeatable-package-restores-using-a-lock-file.html
x
да неужели
x
как же они это придумали 😂
Ayrat
как же они это придумали 😂
ну пакет тоже не первый вроде
Ayrat
но первый из мне известных с нормальным лок файлом
Ayrat
в NPM как бы лок файла нет
x
npm-shrinkwrap.json же
Ayrat
npm-shrinkwrap.json же
прикольно, не знал. и давно он там? там просто команда ci недавно появилась
x
прикольно, не знал. и давно он там? там просто команда ci недавно появилась
давно. И вроде даже уже obsolete потому что новый придумали
x
я не джскрптчик, не знаю ничего )
Ayrat
Я тоже ток мимо прохожу раз в месяц
Ayrat
окунусь по пятку и выбегаю сразу
x
главно чтоб не засосало
Romɑn
Интересная вакансия "Валидатор моделей оценки рисков Департамента интегрированного риск-менеджмента" — https://hh.ru/vacancy/29102860?from=share_android Отправлено с помощью мобильного приложения hh https://hh.ru/mobile?from=share_android
Romɑn
Вот где в банках можно в F#
Vasily
В банках лучше ни во что не надо
Ayrat
В банках лучше ни во что не надо
я б акционером банка поработал... ну или хотя бы получателем денег
Ayrat
рантье
ну, это не совсем то
Pavel
купи пару акций - станешь акционером
x
ну, это не совсем то
зато слово-то какое, можно носить парик с буклями (наверное)
x
всем добра
Vabka
Он просто хорошо интегрируется с ASP.NET MVC
да и с новым тоже нормально
Romɑn
напомните плз есть ли стандартная ф-ция fun (x:'a) (action:'a ->unit) -> action x; x ?
Romɑn
типа actionId или sideeffectId?
Romɑn
комбинатор же
Ayrat
в нашей комон либе есть tee
Ayrat
в нашей это в смысле в ETL.Common :D
Ayrat
не я пока без нее
встроенной нет. let inline tee f x = f x; x
Ayrat
лучше такой порядок аргументов
Ayrat
потому что пайплайнинг
Romɑn
встроенной нет. let inline tee f x = f x; x
да это понятно я надеялся на то что не надо вечно стандартные ф-ции описывать
Ayrat
|> ... //получаем какое-то валуе |> tee f //делаем сайдэффект |> ... //продолжаем юзать валуе
Ayrat
ага
кстати, у нас объявлена ещё лучше let inline tee f x = f x |> ignore; x
Romɑn
?
Romɑn
аа
Ayrat
чтобы можно было пихать сайдэффекты которые делают сайдэффекты :D
Romɑn
поясни?
Ayrat
ну типа ConcurrentDictionary.TryAdd возвращает bool
Romɑn
чтоб f 'a -> 'b?
Ayrat
он тебе обычно нахер не усрался
Ayrat
ты делаешь |> ... |> tee dict.TryAdd |> ...
Ayrat
и живёшь нормально
Romɑn
пнятно
Ayrat
а с tee который захардкожен на a -> unit TryAdd не сработал бы
Ayrat
А почему “tee”?
хороший вопрос, везде так видел сайд эффект, сделал так же
Ayrat
у Влашина тоже кстати
Klei
кстати, у нас объявлена ещё лучше let inline tee f x = f x |> ignore; x
То что это лучше, спорный вопрос. Пару раз славливал багу при рефакторинге. Если так лень писать ignore, то безопаснее дополнительный tee завести.
Ayrat
А почему “tee”?
https://en.wikipedia.org/wiki/Tee_(command)
Ayrat
наверное отсюда пошло
Ayrat
типа делаем сайд эффект с stdout но в stdin пропихиваем то же самое
Vladislav
А почему “tee”?
С линуксов повелось
Vladislav
Оно там есть
Vladislav
Ну мне так кажется
Ayrat
в павершеле кстати тоже есть Tee-Object
Vladislav
Использование tee уже намекает на что-то странное. Но в общем ты прав, конечно.
это, а не ты случаем писал паттерн который позволял делать notnull на месте объявления?
Ayrat
это, а не ты случаем писал паттерн который позволял делать notnull на месте объявления?
ну там писать-то let (|NotNull|) = function | null -> nullArg "" | o -> o
Ayrat
можно в функцию ещё строку подавать - имя переменной - чтобы в nullArg писать
Vladislav
ну там писать-то let (|NotNull|) = function | null -> nullArg "" | o -> o
он просто эксепш кидает на нулл кидает?
Vladislav
получается
Ayrat
да, это такой же нал гард как оыбчно