有类似 Haskell/ML 的 C 编译器吗?

发布于 2024-10-12 13:02:44 字数 626 浏览 6 评论 0 原文

人们已经编写了Scheme 中适用于 iPhone 的游戏。因为(一些)Scheme 编译器编译为 C,所以很容易与 Objective-C 混合并与 XCode 集成。

知道Haskell 和 OCaml 编译器的补丁,以启用 ARM/iOS 后端。但这些似乎是非官方的、实验性的/不稳定的。

与Scheme 的动态类型相比,我更喜欢静态 haskell/ML 类型的类型系统。是否有一个稳定的 ML/SML/Haskell 编译器可以生成 C 代码,以便可以以与Scheme/Gambit-C 类似的方式使用?

People have written games for the iPhone in Scheme. Because (some) Scheme-compilers compile down to C, it was easy to mix with Objective-C and integrate with XCode.

I am aware of patches for Haskell and OCaml compilers to enable ARM/iOS-backends. But those appear unofficial and experimental/unstable.

I prefer a static haskell/ML-type type-system over Scheme's dynamic typing. Is there a stable ML/SML/Haskell compiler which generates C-code so that it can be used in a similar way as Scheme/Gambit-C?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

沉鱼一梦 2024-10-19 13:02:44

我无法提供机器学习方面的帮助,但是您看过 JHC 吗? 来添加 iPhone 支持

[iphone]
cc=arm-apple-darwin-gcc
merge=le32

JHC 是一个针对可移植 C 的整体程序优化 Haskell 编译器,并且可以通过放入~/.jhc/targets.ini

更多 Haskell 信息位于 Haskell wiki 和 JHC 手册。

I can't help with ML, but have you looked at JHC? JHC is a whole-program optimizing Haskell compiler that targets portable C, and iPhone support can be added by putting

[iphone]
cc=arm-apple-darwin-gcc
merge=le32

in ~/.jhc/targets.ini

More Haskell information is on the Haskell wiki and the JHC manual.

郁金香雨 2024-10-19 13:02:44

(我不确定这个工具链是否已经专门在 iPhone 上尝试过。)

MLTon 是一个整体程序优化标准机器学习编译器。您可以通过在编译时将 -keep g 传递给 MLTon 来保留 C 代码,例如:

c:/Program Files (x86)/MLton/bin/mlton.bat" -verbose 1 - keep g test.sml

它还可以本机生成ARM代码。

(I am not certain that this toolchain has been attempted specifically on the IPhone yet.)

MLTon is a whole-program optimizing Standard ML compiler. You can keep around your C code by passing -keep g to MLTon at compilation, e.g:

c:/Program Files (x86)/MLton/bin/mlton.bat" -verbose 1 -keep g test.sml

It can also generate ARM code natively.

2024-10-19 13:02:44

nhc98:http://www.haskell.org/nhc98/

完整的 Haskell '98。当然,许多库现在依赖于更高级的 ghc-only 功能。但 Haskell '98 足以进行通用编程。

nhc98: http://www.haskell.org/nhc98/

Full Haskell '98. Of course many libs now rely on more advanced ghc-only features. But Haskell '98 is plenty capable for general purpose programming.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文