Собирается ли INRIA добавить примитивы параллелизма в OCaml? - PullRequest
11 голосов
/ 19 августа 2009

Под «параллелизмом» я подразумеваю легкие процессы, такие как актеры Эрланга и параллельный сборщик мусора, направленные на то, чтобы такие процессы работали бесперебойно.

Было бы очень здорово, если бы INRIA избавилась от этих недостатков текущей реализации OCaml, чтобы сделать OCaml более подготовленным к многоядерному будущему.

P.S. F # не то, что я ищу.

Ответы [ 4 ]

9 голосов
/ 19 августа 2009
нет

нет

Я не могу быть более кратким, не воспроизводя его объяснения. Это говорит само за себя. Да, это с 2002 года, но я не слышал, чтобы он влиял на эту проблему, и из текста не представляется вероятным, что он отступит от этих целей.

Для текущих разработок по параллельному функциональному программированию, возможно, решения MPI ( с привязками ocaml ) могут быть решением вашей проблемы. Очевидно, это не параллелизм общей памяти. Существует также одновременных ML .

2 голосов
/ 22 августа 2009

Похоже, что Джейн Стрит профинансировала проект по добавлению Concurrent GC в OCaml

2 голосов
/ 20 августа 2009

Существует J & oCaml , что ...

Objective Caml плюс (&) исчисление объединения , то есть расширение OCaml для параллельного и распределенного программирования.

0 голосов
/ 21 февраля 2018

Модуль Thread в стандартной библиотеке предоставляет примитивы параллелизма и существует уже довольно давно. Существуют также третьи сторонние библиотеки , которые предоставляют высокоуровневые / разные API параллелизма.

Но, похоже, вы объединяете параллелизм и параллелизм .

OCaml, конечно, не мешает параллелизму. Вы можете запустить OCaml одновременно на тысячах или миллионах машин. Есть даже привязки MPI , чтобы упростить программирование для массивно параллельных суперкомпьютеров. Но текущая эталонная реализация OCaml не будет автоматически распараллеливать параллельные программы, что, я думаю, вас больше интересует.

Возможно, вас заинтересует Multicore OCaml , который обеспечивает лучшую поддержку параллелизма совместно используемой памяти, поскольку компьютеры SMP стали довольно распространенными в течение последних нескольких десятилетий, и было бы очень приятно легче оптимизировать их. Похоже, что они медленно, но неуклонно продвигаются вперед и пытаются сделать это правильно.

...