169 похожих чатов

А в фарше же нет более лаконичного паттерна для строго

равенства внутри рекорда?

13 ответов

9 просмотров

Ну проблема в том, что в F# это синтаксис присовения переменной, а не равенства. Мне кажется уместнее было бы сделать равенство, а присвоение переменной вынести в "as переменная"

у нас просто всё патерн. match record with | { Name = pattern } -> здесь pattern следует правилам патернов. То есть он будет раскрыт в константный патерн только с ЛИТЕРАЛАМИ | { Name = "concreteName" } -> ... | { Name = 1 } -> ... или с вложенными константными паттернами | { Name = Some "concreteName" } -> ... | { Name = { FirstName = "concreteName" } } -> ... любые другие имена в патерне перебинживают его | { Name = whatever } -> // здесь whatever содержит имя Сранивать два патерна на равенство надо по-другому (ну так как ты сделал) Или через активный патерн! | { Name = Equals employeeName } -> ... (И его ещё надо написать, да)

Ayrat Hudaygulov
у нас просто всё патерн. match record with | { Nam...

Интересно, а с интерполяцией можно будет делать match record with | { Name = $"{pattern}" } -> ...

/home/slavonchick> sudo
Интересно, а с интерполяцией можно будет делать m...

в случае констант мбмб, но вообще компилятор фаршика не умеет даже складывать числа в константах, а тут интерполяция

Yogurt-The Horse Автор вопроса
/home/slavonchick> sudo
Интересно, а с интерполяцией можно будет делать m...

я думаю это легко проверить подставив туда sprintf

Yogurt The Horse
я думаю это легко проверить подставив туда sprintf

Точнее вообще непросто sprintf нелигитмный патерн

Ayrat Hudaygulov
ну вот

причём так тоже не работает

Похожие вопросы

Обсуждают сегодня

Интересно, нет ли какого-то способа получить из dll не адрес самой метки, а адрес со смещением?
The Bird of Hermes
54
generic procedure function test<T>(param: T); type case T of longint: NewT = word; longword: NewT = byte; end; var v1: NewT; Как это можно сделать? Чтобы у меня...
notme
21
Делал задачу вот такую https://stepik.org/lesson/4985/step/9?unit=1083 получилось такое https://play.haskell.org/saved/ipKrepqe оно работает, тестов много не писал, но работае...
Fedor
22
Хотел уточнить: копирование из одного рекорда в другой однотипный рекорд можно только по полям отдельно или можно чохом, типа Assign?
Ed Doc
9
Похоже опять туплю задача https://stepik.org/lesson/5431/step/8?unit=1132 код и его работа https://play.haskell.org/saved/lmYTShXM на мой взгляд все правильно, и даже избыто...
Fedor
8
Sometimes I like to solve problems the hard way. What do I mean? You know many problems can be fixed by restarting the system, but how much do you learn about the system? P...
Matthias Hoffmann
1
что-то я не понимаю, в линуксе отладочную информацию как убрать из бинаря? он что с этой опцией, что без - одного и того же (достаточно большого) размера (да, я про лазарь)
Iluha Companets
13
Anyone here suffers from unexplained aural migraines, who would be up for talking for a bit? Doesn't *have* to be aural, but I am not asking about headaches, I mean actual mi...
Martin Rys
58
Hey Does anyone know how can I receive push notifications from Github on my account? The official Github android app doesn't send notifications, and I don't use the email bec...
Jacob
10
Приветствую почтенную публику. nimble install nimx в самом конце даёт: Downloading https://github.com/guzba/zippy using git Tip: 56 messages have been suppressed, use...
Академия Связи
1
Карта сайта