inmutable en f #

Sé que las variables en F # son inmutables por defecto. Pero, por ejemplo en F # interactivo:

  > let x = 4;;

val x : int = 4

> let x = 5;;

val x : int = 5

> x;;
val it : int = 5
> 

Entonces, asigno 4 a x, luego 5 a x y está cambiando. ¿Es correcto? ¿Debería dar algún error o advertencia? O simplemente no entiendo cómo funciona?