我在想,是否有任何语言允许您在不重新加载整个应用程序的情况下即时添加/删除/更新任何类? (假设我可以接受一些不便之处,例如确保目前没有方法运行+额外的努力来“迁移”类数据成员)。哪种编程语言允许即时更新任何类?
Web应用程序,其中您替换1个文件,它用于下一个客户端请求是不是我所需要的(如Perl,PHP)。应用程序必须连续运行,并且它有一些内部状态。
其它要求是
- 没有GIL或从利用SMP
- 优选地防止类似的问题 - JIT状VM(即,其中性能接近于本机代码)的存在。理想的解决方案是能够在CLang或任何其他基于LLVM的语言中重新加载模块。这将是完美的。
关于已取得的回答:
- .NET/Java是不适合 - 它们都具有体积太大虚拟机,以及应用程序的显著部分将在Linux上运行。
- Erlang - 看起来好像是可能的,但这对我的肉眼来说太可怕了,我只是不能冷静对待它,如果是,案例和字符串。此外,我宁愿避免将裸源传输到客户端,编译的字节码会更好。
Appart从那个讨厌的表现的事情,现代Ruby可能会适合您的需求。 – 2011-03-12 17:33:27
我假设你需要一个JIT编译器,而不是一个兼作DVCS的虚拟机? – delnan 2011-03-12 17:50:49
JIT很高兴有,但不是一个严格的要求。 – BarsMonster 2011-03-12 17:51:54