Результаты поиска по запросу "ocaml"
Правильный способ использования структуры данных в OCaml
Хорошо, я написалbinary search tree в OCaml. type 'a bstree = |Node of 'a * 'a bstree * 'a bstree |Leaf let rec insert x = function |Leaf -> Node (x, Leaf, Leaf) |Node (y, left, right) as node -> if x < y then Node (y, insert x left, right) else ...
N-арные кортежи против пар
В Ocaml кортежи с разными арностями имеют конструкторы разных типов и значений: # let a = (1, 2, 3);; val a : int * int * int = (1, 2, 3) # let b = (1, (2, 3));; val b : int * (int * int) = (1, (2, 3))Обратите внимание, что второй пример (b) ...
Какова наиболее эффективная реализация массивов с функциональными обновлениями?
Мне нужна массивоподобная структура данных с максимально быстрым функциональным обновлением. Я видел несколько разных реализаций гибких массивов, которые предоставляют мне это свойство (Braun, Random Access Lists), но мне интересно, есть ли ...
Простой неоптимальный unionfind в OCaml
Я написал программу OCaml дляunion find алгоритм. Этот алгоритм, который я написал, не является оптимальным и является самой простой версией. Я поместил свой код OCaml здесь, потому что я не уверен, достаточно ли этот код хорош(несмотря на сам ...
Если в SML.NET есть функторы, почему нельзя использовать F #?
Этот вопрос начался с Мой перевод "ML для работающего программиста [http://www.cl.cam.ac.uk/~lp15/MLbook/]"(WorldCat [http://www.worldcat.org/oclc/26013714]) Л. С. ПОЛСОНА к F #, который использует функторы для примеров.Конечное желание ...
Странная проблема с загрузкой модуля в OCaml
У меня есть два файла:myUnionFind.ml а такжеmyUnionFind_test.ml, Оба файла находятся вsame directory. myUnionFind.mlopen Batteries module type MyUnionFindSig = sig type union_find val print_array : 'a array -> unit val create_union : int -> ...
Попробуйте для дальнейшего понимания интерфейса / модуля OCaml
Я так понимаю в OCaml есть понятияinterfaces а такжеmodule. И теперь я понимаю, как их использовать. Однако я не понимаю, как их полностью использовать. Например, в Java, скажем, у нас есть интерфейсMap и у нас также естьHashtable ...
Есть какой-нибудь более простой способ реализовать сортировку выбора по месту в OCaml?
Я реализовалnon-in-place версия выбора сортировки в OCaml. let sort compare_fun l = let rec find_min l' min_l origin_l = match l' with | [] -> if min_l = [] then (min_l, l') else let min = List.hd min_l in (min_l, List.filter (fun x -> if x != ...
Как реализовать двоичную кучу, используя список в OCaml?
Я реализуюbinary heap используя список в OCaml, просто чтобы отточить свои навыки в OCaml. Мне очень трудно пользоваться списком, и после двух дней борьбы я должен прийти сюда за предложениями и подсказками. Вот моя мысль покаОчевидно, я не ...
Почему перед этим типом стоит знак плюс?
Я просматривал стандартную библиотеку ocaml и наткнулся на этот код в файле map.ml. module type S = sig type key type +'a t val empty: 'a t'Мне интересно, почему естьtype +'a tи почему автор использует его, а не просто'a t. Его поведение ...