我正在寻找一种更高级的系统语言,如果可能的话,适合于正式的验证,它可以编译成标准C,这样它就可以以(相对)低的开销跨平台运行。
在过去几天里,我遇到的两种最有前途的语言是:
我还想指出的是,它并不适用于实时系统,因此GC或者一般的非确定性(在实时意义上)并不是一个问题。
该项目主要涉及音频处理,尽管它必须跨平台。
我想有人会给我指一个显而易见的答案--“普通的C”。虽然它是真正的跨平台和非常有效的,代码数量可能会更大。
编辑:我应该澄清一下,我指的是跨平台和跨架构。这就是为什么我只考虑将语言编译成C语言的原因,但如果您能指出另一个例子,我将不胜感激:)
发布于 2012-03-19 20:52:09
发布于 2012-03-19 21:06:18
以下内容并不严格遵守这些要求,但我还是想提一提,它太长了,不能发表评论:
Pypy的RPython可以翻译成C. 这里有个很好的话题。它被用来实现Smalltalk,JavaScript,Io,Scheme,Gameboy (具有不同程度的完整性),但是您可以在其中编写独立的程序。它主要以其对64个平台语言的实现而闻名。
翻译过程需要一个有能力的C编译器。工具链提供了推断代码(翻译过程本身使用的)的各种内容的方法,您可以将其重新用于正式验证。
如果您同时了解Python和C,可以使用cython将类似Python的语法转换为C。它用于编写CPython扩展。
https://stackoverflow.com/questions/9780620
复制