Семантика слияния OCaml в функторе Map.make?

Я пишу функцию OCaml, в которой мне нужно объединить две карты. Мне не удалось выяснить семантику функции merge , предоставляемой функтором Map.Make (обнаружена в версии 3.12.0 OCaml). Может ли кто-нибудь дать мне более подробное объяснение, чем руководство по OCaml? Мне, вероятно, хватило бы примера, чтобы понять это.

Кроме того, две карты, которые мне нужно объединить, обладают некоторыми интересными свойствами: ключи имеют один и тот же тип (на самом деле int ) и их домен не пересекается. Есть ли более эффективный подход, чем процедура слияния?

6
задан perror 13 August 2015 в 22:15
поделиться