适用于没有动态内存分配的开发的语言

kgr*_*ney 6 embedded heap memory-management

是否有除C和C++以外的任何语言都可以在没有动态内存分配(即堆)功能的情况下显式使用.在一些关键任务嵌入式系统中,禁止使用堆来消除可能连续运行多年的软件的内存泄漏问题.一些专用编译器也明确禁用newmalloc强制执行此操作.

我已经看过一些函数式语言,即TimberErlang的嵌入式重点,但两者似乎都使用垃圾收集器. 尽管静态类型化,OCamlHaskell也使用垃圾收集器,显然Python,Ruby和其他动态类型语言在很大程度上依赖于垃圾收集和堆空间.

  • 是否有任何高级语言支持不动态分配内存的要求?
  • 对于功能静态类型语言的编译器来说,这甚至可以根据语言语义来实现吗?

Ale*_*çon 1

你可以看看ADA。几年前我一直在嵌入式平台上使用 ADA83。它根本不需要动态分配,并且与 C 一样高级(在我看来,它甚至比 C 更好)。当然,问题是为您的平台获取 ADA 编译器。也许GNAT适合你。