Como la mayoría de los valores de OCaml, los registros son inmutables por defecto. Sin embargo, dado que OCaml también maneja la programación imperativa, proporciona una manera de hacer que los campos individuales sean mutables . Los campos mutables se pueden modificar in situ por asignación, en lugar de tener que recurrir a las técnicas funcionales habituales, como la actualización funcional.
Al introducir efectos secundarios, los campos mutables pueden dar como resultado un mejor rendimiento cuando se usan correctamente.