Взаимодействие с функциями Ocaml из F # - PullRequest
0 голосов
/ 27 ноября 2018

Я изучаю функциональное программирование через F # и Ocaml.Как вызвать функции OCaml из приложения F # и наоборот.

1 Ответ

0 голосов
/ 27 ноября 2018

Ну, есть несколько разных способов сделать это:

  • Реализация OCaml для .NET;
  • Библиотека взаимодействия для OCaml;
  • Ещеуниверсальный протокол, не зависящий от языка (json, protobuf).

Некоторые полезные вещи:

OCamIL

OCamIL isэкспериментальный компилятор OCAML, предназначенный для Microsoft .NET.Он нацелен на 100% совместимость со стандартной реализацией, разработанной INRIA.

Пока вы используете стандартную реализацию FNET для .NET, вы можете использовать реализацию OCaml .NET и легко связывать вещи вместе.Однако последний выпуск проекта был в 2007 году, и он никогда не был готов к использованию.

CSML

высокоуровневые привязки между .NET иOCaml

CSML полезен при разработке OCaml под Windows.Вы можете использовать библиотеки .NET в своем коде OCaml.Однако проект немного устарел, и я не уверен, что он готов к использованию.

JSON-RPC

JSON-RPC - это легкий протокол удаленного вызова процедур (RPC) без учета состояния.В первую очередь эта спецификация определяет несколько структур данных и правила их обработки.Он независим от транспорта, так как концепции могут использоваться в одном и том же процессе, через сокеты, через http или во многих различных средах передачи сообщений.Он использует JSON (RFC 4627) в качестве формата данных.

Это один из самых простых способов взаимодействия различных языков, не беспокоясь о том, как они были реализованы, а также протокол, используемый VSCode.

...