Здравствуйте, Quintanar, Вы писали:
Q>Ничего странного в этом нет. Они по-любому должны быть, поскольку иначе невозможно общаться с внешним миром. Для того, чтобы этой возможностью не злоупотребляли, было сделано так, чтобы императивно программировать на OCaml было неудобно. Реально, императивные места встречаются редко и их легко отследить.
Ну, вредительством специально никто не занимался

Просто императивные возможности сделаны по "остаточному принципу", т.е. не в ущерб функциональному.
К сожалению, в OCaml даже слишком много императивщины. В том числе и в библиотеках.