Я рассматриваю функциональный язык, который будет хорошо сочетаться с моей средой C / Objective-C во FreeBSD, OSX, iOS.Похоже, что лучше всего было бы создавать библиотеки функциональных языков для конкретных функций, написанные на Haskell, компилировать с GHC и использовать FFI для вызова этого функционального кода в качестве стандартного вызова C.
Мой вопрос: каксправиться с параллелизмом в этой ситуации? Одна мотивация для использования функционального языка состоит в том, что для моих задач, когда я хочу работать с неизменяемыми наборами данных, я хочу добиться большого распараллеливания.Однако, используя описанный мной подход, получу ли я ЛЮБОЕ распараллеливание?Похоже, я могу скомпилировать и предписать использовать 2 потока, но есть ли способ использовать GCD вместо многопоточности (по всем причинам GCD лучше, чем потоки, например, степень параллелизации, автоматически масштабируемая для каждой платформы)?Или, как я описываю в FFI, полностью ли я теряю способность к многопоточности?
Этот язык кажется мне лучшим выбором для того, что я пытаюсь сделать, но я хочу узнать, подходит ли он для этого.прежде чем я посвятил значительное количество времени, чтобы действительно научиться этому