Size: a a a

2020 October 20

YT

Yogurt The Horse in F# Chat
а в фарше же нет более лаконичного паттерна для строго равенства внутри рекорда?
источник

VS

Vladimir Shchur in F# Chat
делай разбор рекорда сверху, а не внутри)
источник

YT

Yogurt The Horse in F# Chat
Vladimir Shchur
делай разбор рекорда сверху, а не внутри)
Это как?
источник

I

Igor in F# Chat
не проще написать в лоб?
if visibleEmployees.Name = employee then ...
источник

I

Igor in F# Chat
а блин, там список
источник

YT

Yogurt The Horse in F# Chat
Igor
а блин, там список
this
источник

I

IdiocyAcceptance in F# Chat
Igor
не проще написать в лоб?
if visibleEmployees.Name = employee then ...
у него там лист рекордов, в таком случае мне кажется что лучше делать current :: _ when current.Name = employee
источник

I

IdiocyAcceptance in F# Chat
чем городить конструкцию, которая присвоит имя
источник

I

IdiocyAcceptance in F# Chat
Igor
не проще написать в лоб?
if visibleEmployees.Name = employee then ...
ну или как ты предложил, ток заматчить отдельно head::tail
источник

YT

Yogurt The Horse in F# Chat
ну в общем сильно удобнее не сделать
источник

YT

Yogurt The Horse in F# Chat
понятно
источник

I

IdiocyAcceptance in F# Chat
Yogurt The Horse
а в фарше же нет более лаконичного паттерна для строго равенства внутри рекорда?
Ну проблема в том, что в F# это синтаксис присовения переменной, а не равенства. Мне кажется уместнее было бы сделать равенство, а присвоение переменной вынести в "as переменная"
источник

VS

Vladimir Shchur in F# Chat
Yogurt The Horse
Это как?
сорри, тоже список не заметил
источник

YT

Yogurt The Horse in F# Chat
Vladimir Shchur
сорри, тоже список не заметил
а, ок.)
источник

((

(fun () -> ()) in F# Chat
Кто что для логов использует (из либ)?
источник

VS

Vladimir Shchur in F# Chat
serilog
источник

AH

Ayrat Hudaygulov in F# Chat
Yogurt The Horse
а в фарше же нет более лаконичного паттерна для строго равенства внутри рекорда?
у нас просто всё патерн.
match record with
| { Name = pattern } ->

здесь pattern следует правилам патернов.
То есть он будет раскрыт в константный патерн только с ЛИТЕРАЛАМИ

| { Name = "concreteName" } -> ...
| { Name = 1 } -> ...

или с вложенными константными паттернами
| { Name = Some "concreteName" } -> ...
| { Name = { FirstName =  "concreteName" } } -> ...

любые другие имена в патерне перебинживают его
| { Name = whatever } -> // здесь whatever содержит имя

Сранивать два патерна на равенство надо по-другому
(ну так как ты сделал)

Или через активный патерн!
| { Name = Equals employeeName } -> ...

(И его ещё надо написать, да)
источник

R

Roman in F# Chat
Да, активные паттерны это вообще пушка
источник

YT

Yogurt The Horse in F# Chat
они как бы пушка
источник

YT

Yogurt The Horse in F# Chat
но писать их на каждый чих
источник