Functional programming 与来自F的Ocaml函数交互#

Functional programming 与来自F的Ocaml函数交互#,functional-programming,f#,ocaml,Functional Programming,F#,Ocaml,我正在通过F#和Ocaml探索函数式编程。 如何从F#应用程序调用OCaml函数,反之亦然。好吧,有几种不同的方法可以做到这一点: NET的OCaml实现 OCaml的互操作性库 语言不可知的更通用的协议(json,protobuf) 一些有用的东西: OCamIL是一个以Microsoft.NET为目标的实验性OCAML编译器。 其目标是与INRIA制定的标准实施100%兼容 只要您使用F#的标准.NET实现,就可以使用 .NET实现OCaml并轻松地将内容链接在一起。 然而,该项目的上一

我正在通过F#和Ocaml探索函数式编程。
如何从F#应用程序调用OCaml函数,反之亦然。

好吧,有几种不同的方法可以做到这一点:

  • NET的OCaml实现
  • OCaml的互操作性库
  • 语言不可知的更通用的协议(json,protobuf)
一些有用的东西:

OCamIL是一个以Microsoft.NET为目标的实验性OCAML编译器。 其目标是与INRIA制定的标准实施100%兼容

只要您使用F#的标准.NET实现,就可以使用 .NET实现OCaml并轻松地将内容链接在一起。 然而,该项目的上一个版本是在2007年发布的,它从未准备好发布 生产使用

.NET和OCaml之间的高级绑定

在Windows下开发OCaml时,CSML非常有用。您可以使用.NET库 在您的OCaml代码中。然而,这个项目有点老,我不确定它是否成功 可供生产使用

JSON-RPC是一种无状态、轻量级远程过程调用(RPC)协议。 本规范主要定义了几个数据结构和相关规则 他们的处理。这是运输不可知论,因为这些概念可以在 同一进程,通过套接字、http或许多不同的消息传递 环境。它使用JSON(RFC4627)作为数据格式

这是连接不同语言的最简单方法之一,不用担心
关于它们是如何实现的,也是VSCode使用的协议。

如果您解释一下为什么要这样做,可能会有所帮助。通常情况下,您会使用其中一种。您是否知道F#是从OCaml开始的,在早期您可以将OCaml代码复制到F#中,并且非常有效。您仍然可以将OCaml复制到F#中,但您必须了解其中的差异,并手动转换其中的一些内容。是一个最初由OCaml创建并转换为F#的项目。@傻瓜我有两组在F#和OCaml中创建的遗留项目。我需要集成它们并从C#应用程序调用。调用流将来自C#|>F#|>Ocaml@GuyCoder是的,我读过。我来检查一下这个项目。谢谢,谢谢。我将尝试这些方法。