是否还有其他编译器比ghc支持如The Haskell 98 Foreign Function Interface 1.0 An Addendum to the Haskell 98 Report的Haskell外部函数接口?哪些编译器支持Haskell FFI
2
A
回答
3
的nhc98编译器包含了标准的外国功能接口,这也是在拥抱和GHC可用的实现。 nhc98的最新发布的版本实现了外部函数声明的最新标准语法,如在规定:http://www.cse.unsw.edu.au/~chak/haskell/ffi/
我不知道是否
兼容性说明
- 支持调用约定是:ccall,noproto和cast。 (后两者是非标准的,见下文。)不受支持的调用约定是:stdcall,jvm,dotnet,cplusplus。
- 外部导入“包装器”尚不支持。
- 注解不安全在nhc98中没有特别的含义;它纯粹是ghc的速度优化。
- 将外部导出规范视为导出函数的实际类型签名。你不允许第二个(可能更通用)类型的签名。
- 因此,您无法导出任何需要类字典的函数。
意味着支撑仅仅是局部的,或者这些是否是可选的东西,但nhc98是,据我所知,除了GHC仅有的编译器,支持至少一大块FFI规范的。 (拥抱不是一个编译器,而是一个解释器,它支持[大部分] FFI规范,因为那是当拥抱开发结束时[2006]。)
但是,请注意,nhc98不再被维护太多。
0
所有的Haskell实现支持FFI,如通过定义,它不是一个Haskell编译,如果它不执行语言规范(其包括the FFI。
这意味着拥抱,GHC,nhc98至少
相关问题
- 1. Erlang erlIDE:支持哪些编译选项?
- 2. Xuggler支持哪些编解码器?
- 3. 哪些Windows编译器支持<future>类
- 4. 编译器支持C11
- 5. Erlang编译器UTF32支持
- 6. 哪些版本的实体框架支持编译查询?
- 7. Eclipse不支持哪些编程语言?
- 8. Java的SAXBuilder支持哪些编码?
- 9. TestComplete支持哪些编程语言?
- 10. UTF-8支持哪些字符编码?
- 11. 支持Windows编译
- 12. 哪些浏览器支持HttpOnly cookies?
- 13. 什么clearfixes支持哪些浏览器?
- 14. 哪些浏览器支持“Cache-control:immutable”?
- 15. Java Deployment Toolkit支持哪些浏览器?
- 16. 哪些浏览器支持CSS:before {content:“x”; }
- 17. 哪些浏览器支持HTML5 History API?
- 18. Formance.js支持哪些浏览器
- 19. webOS浏览器支持哪些字体?
- 20. 哪些浏览器支持document.activeElement?
- 21. 目前哪些浏览器支持XBAP?
- 22. Semantic-UI-React支持哪些浏览器?
- 23. Haskell doctest和FFI
- 24. 哪些浏览器支持哪些CSS属性?
- 25. 哪些浏览器支持数据URI,以及哪些版本?
- 26. Npgsql支持哪些元组?
- 27. AVSpeechSynthesizer支持哪些语言?
- 28. SecureSocket支持哪些协议?
- 29. Arduino支持哪些CPU?
- 30. 支持图书馆....哪些?
但是GHC不是Haskell编译器,因为例如报告指出允许相互递归模块,但GHC不完全支持它们。 – scravy