编译为c的高级系统语言?

K.S*_*eff 7 c programming-languages cross-platform high-level

我正在寻找一种更高级别的系统语言,如果可能的话,适用于正式验证,编译成标准C,以便它可以跨平台运行(相对)低开销.

我在过去几天遇到的两种最有前途的语言是:

  1. BitC - 虽然这种语言的设计目标符合我的需求(它甚至支持功能范例),但它处于非常不稳定的状态,文档已经过时,而且,一般来说,它似乎是一个非常长的镜头世界项目.

  2. Lisaac - 它支持按合同设计,这非常酷,性能开销相对较低.然而,该网站已经死了,自08年以来没有一个新版本,通常看起来语言已经死了.

我还要注意,它不适用于实时系统,因此GC或通常是非确定性(在实时意义上)不是问题.

该项目主要涉及音频处理,但必须是跨平台的.

我假设有人会指出我明显的答案 - "普通的'C'".虽然它是真正的跨平台且非常有效,但代码数量可能更大.

编辑:我应该澄清,我的意思是跨平台和跨架构.这就是为什么我只考虑编译为C语言的原因,但如果你能指出另一个例子,我将不胜感激:)

小智 3

我想您可能会对ATS感兴趣。它编译为 C(实际上,它从形式类型理论的角度表达和解释了许多 C 习惯用法和模式,甚至有人建议准备一本类似的书来展示这一点——如果我们有更多时间就好了……)。

该项目主要涉及音频处理,尽管它必须是跨平台的。

我对音频处理不太了解,我主要做一些计算机图形学的东西(大部分是基础的东西,只是为了尝试一下)。

另外,我不确定 ATS 是否可以在 Windows 上运行(从未尝试过)。

(免责声明:我使用 ATS 已经有一段时间了。它是一种庞大而庞大的语言,有时很难使用,但我非常喜欢用它生成的程序的质量,例如,请参阅对于一些实际程序,GLES2 绑定中的 TEST 子目录)