1

这是我第一次在这个论坛上提交问题。我正在发布一个一般性问题。我不必为特定目的开发应用程序。经过大量“谷歌搜索”后,我仍然没有找到符合这 5 个要求的语言/运行时/脚本引擎/虚拟机:

  1. 在运行时清理的变量/值或对象的内存分配(例如,在 C 中使用关键字 delete 或 free 的 la C++)
  2. 语言(以及因此程序)是一个脚本或伪编译的 la 字节代码,应该可以在主操作系统(windows、linux、*bsd、solaris)和平台(32/64 位)上移植
  3. 本机使用多核(引擎/运行时)
  4. 堆使用没有限制
  5. 网络图书馆

用于构建应用程序并在此引擎上运行的编程语言是面向不可知论的(范式并不重要)。我希望这篇文章不会激起一场圣战,但我想把重点放在程序执行期间的引擎行为上。

对不起,我的英语不好。

卢克

4

1 回答 1

0

我认为 Erlang 可能符合您的要求:

  1. 大多数数据要么分配在本地范围内,因此在使用后立即删除,要么包含在库驱动的永久存储中,如ETS,DETSMnesia. 虽然有垃圾收集,但语言的范式使得对它的需求不那么重要。
  2. Erlang 编译器将源代码编译为 BEAM 虚拟机字节码,与 Java 不同的是,它是基于寄存器的,因此速度更快。VM 可用于:
    • Solaris(包括 64 位)
    • BSD
    • Linux
    • 操作系统
    • TRU64
    • Windows NT/2000/2003/XP/Vista/7
    • VxWorks
  3. Erlang 从一开始就为分布式系统、并发性和可靠性而设计
  4. Erlang 的堆随着您对它的需求而增长,它最初是有限的并自动扩展(您可以使用许多调整来基于每个 VM 配置它)
  5. Erlang 来自网络背景,提供从 IP 到更高级别协议的大量库
于 2012-02-13T16:00:16.167 回答