当前位置:  开发笔记 > 编程语言 > 正文

是否有C++生态系统的函数式语言?

如何解决《是否有C++生态系统的函数式语言?》经验,为你挑选了4个好方法。

Java有Scala,.NET有F#.这两种语言都高度集成到各自的Java和.NET平台中.例如,可以用Scala编写类,然后用Java扩展.

是否存在可与C++高度互操作的等效功能语言?



1> Jon Harrop..:

John Skaller 的Felix语言旨在与C++互操作并提供功能范例.

但是这样做有问题.函数式语言提供了一流的函数,允许创建闭包:从已定义的环境中捕获并携带值的函数.这使得无法静态地确定值的生存期(因为闭包可能带有一个值)它的范围),因此,有效地需要垃圾收集器,但C++不是垃圾收集.



2> Konrad Rudol..:

C++没有Java或.NET意义上的生态系统.没有虚拟机,甚至没有运行时环境,只有一个高度专业化的标准库,设计在纯功能环境中不能很好地运行.C++甚至没有ABI标准.

考虑到所有事情,我不确定你的意思/期望.



3> Konrad Rudol..:

啊,还有别的.虽然这肯定不是你的意思,但C++中的模板元编程纯粹是功能性的.



4> Tom Lokhorst..:

如前所述,我不太确定C++的"生态系统".但是Haskell确实有一个外部函数接口,它允许你从C调用Haskell和Haskell函数的C函数.

再说一遍,那就是C,我不确定C++ FFI到底有多远......

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有