Я довольно новичок в F #, и я хотел сравнить два значения с синтаксисом (соответствует ... с ...)
Проблема возникает, когда я пытаюсь сравнить два значения следующим образом:
let value1 = 19
let isValue1 y =
match y with
| value1 -> y + 1
| _ -> y
Я получаю предупреждение о том, что часть кода «| _ -> y» никогда не будет достигнута. Почему это?
Я знаю, что могу сделать следующее, чтобы заставить функцию работать так, как я хочу:
let value1 = 19
let isValue1 y =
match y with
| _ when y = value1 -> true
| _ -> false
Это также работает
let value1 = 19
let isValue1 y =
match y with
| 19 -> true
| _ -> false
Мне просто любопытно, почему я не могу этого сделать и как на самом деле работает матч.