Size: a a a

2020 June 03

VS

Vladimir Shchur in F# Chat
компилятор не спутает, а когда глазами смотришь, то легко попутать
источник

TK

Traveller Kolsky in F# Chat
На Operation можно спокойно заменить и даже обобщённым тип сделать при желании
источник

A

Artemy in F# Chat
Vladimir Shchur
компилятор не спутает, а когда глазами смотришь, то легко попутать
Ну если смотреть в Идешке, то навряд ли — они их даже по-разному подсвечивать будут.)
источник

VS

Vladimir Shchur in F# Chat
я говорю про сигнатуры функций
источник

A

Artemy in F# Chat
Так а как конструктор типа в сигнатуру попадёт?
источник

A

Artemy in F# Chat
Traveller Kolsky
На Operation можно спокойно заменить и даже обобщённым тип сделать при желании
Ну вот это неплохое решение, да. М.б. в этой задаче оно как раз и нужно будет
источник

A

Artemy in F# Chat
Но даже если избыточно, то всё равно хорошо выглядит
источник

VS

Vladimir Shchur in F# Chat
Artemy
Так а как конструктор типа в сигнатуру попадёт?
а, точно) не попадет
источник

A

Artemy in F# Chat
Вот я к тому и веду, что контекст применения не пересекается у них
источник

A

Artemy in F# Chat
Так что особенно не парюсь насчёт совпадений
источник

G

George in F# Chat
А обобщённым тип сделать - это как в данном случае?
источник

A

Artemy in F# Chat
Порой даже удобно — не нужно лишнее имя запоминать
источник

VS

Vladimir Shchur in F# Chat
у меня было впечатление, что все равно мешаются иногда)
источник

A

Artemy in F# Chat
George
А обобщённым тип сделать - это как в данном случае?
type Command<'Operation> =
   | Operation of 'Operation
...
источник

A

Artemy in F# Chat
Ну и алиас типа для конкретного случая с BankOperation:
type BankCommand = Command<BankOperation>
источник

A

Artemy in F# Chat
Vladimir Shchur
у меня было впечатление, что все равно мешаются иногда)
Я вот изначально тоже думал, что может мешаться. Но потом ещё подумал, и понял, что как-то и не мешается.)
источник

G

George in F# Chat
Жалко, что объявление одного типа в другом нельзя разместить. Эффект был бы тот же, но было бы более понятно.
источник

NK

ID:0 in F# Chat
источник

G

George in F# Chat
Почему у Decimal.TryParse сигнатура string * byref<decimal> -> bool (то есть функция, принимающая кортеж и возвращающая true/false), но при этом её можно вызывать с аргументом-строкой как Decimal.TryParse "0,05", при этом она вернёт (bool * decimal)? Это особенный случай, или это фича языка, которую можно использовать и в своих функциях?
источник

VK

Vladislav Khapin in F# Chat
Сахар
источник