F #: No entiendo el partido ... con

Estoy jugando con F # y Fable, e intento poner a prueba mi comprensión. Para hacerlo, intenté crear una función para calcular e dado un cierto número de iteraciones. Lo que se me ocurrió es

let eCalc n =
      let rec internalECalc ifact sum count =
          match count = n with
          | true -> sum
          | _ -> internalECalc (ifact / (float count)) (sum + ifact) (count+1)

      internalECalc 1.0 0.0 1

Que funciona bien, devolviendo 2.7182818284590455 cuando se llama con

eCalc 20

Sin embargo, si intento usar, lo que creo que es, la forma más correcta

let eCalc n =
      let rec internalECalc ifact sum count =
          match count with
          | n -> sum
          | _ -> internalECalc (ifact / (float count)) (sum + ifact) (count+1)

      internalECalc 1.0 0.0 1

Recibo una advertencia "[ADVERTENCIA] Esta regla nunca será igualada (L5,10-L5,11)", y devuelve un valor de 0. (y ocurre lo mismo si cambio 'n' y 'count' en el partido declaración). ¿Hay alguna razón por la que no puedo usar 'n' en la declaración de coincidencia? ¿Hay alguna forma de evitar esto para poder usar 'n'?

Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta