Q
開源虛擬機
6
A
回答
3
爲什麼要濾掉LLVM?它的a set of C libraries
我想嵌入比Lua更容易,但LLVM太棒了,它可能會克服集成它的麻煩。請參閱this SO question,它有幫助嗎?
5
Lua因在C/C++中嵌入很容易而出名。它的虛擬機是開源的,跨平臺的,非常小(包括exe文件大小和字節碼指令集),同時速度非常快。但是它的字節碼可能不適合你的語言。 The bytecode format is documented here.
+1
Lua的虛擬機不是通用VM,但它可能適用於您的自定義語言,如果您的語言和Lua在語義上相距不太遠。 Lua虛擬機的簡短描述在http://www.lua.org/source/5.1/lopcodes.h.html#OP_MOVE。如果你這樣做,我建議你首先嚐試將你的語言編譯成Lua源代碼。 – lhf 2010-08-20 14:00:43
4
NekoVM是一種編程語言和輕量級虛擬機,設計爲編譯器編寫器的通用目標。 The documentation使得將VM嵌入到C或C++應用程序中似乎非常容易,但似乎VM API尚未記錄。
2
其他可能的答案:爲什麼不輸出彙編器呢?它速度快,重量輕,而且根本不需要虛擬機。既然你只針對x86,這可能是有道理的,取決於你想要做什麼。
相關問題
- 1. 授權開發虛擬機
- 2. 虛擬主機打開本地主機
- 3. 虛擬主機內的虛擬主機
- 4. 虛擬機中的虛擬機 - 網絡
- 5. 實現虛擬機的教程/資源
- 6. 在.net中寫入的開源虛擬機?
- 7. Dalvik虛擬機源代碼開發方法
- 8. 雲(虛擬)機器可免費用於開源測試?
- 9. 虛擬機
- 10. Javascript虛擬機
- 11. MicroCloud虛擬機
- 12. 虛擬機
- 13. 從虛擬機
- 14. Ruby虛擬機
- 15. Windows Azure虛擬機 - 打開端口
- 16. 打開Windows Azure虛擬機的端口
- 17. 如何開始實施虛擬機?
- 18. Android在虛擬機上開發
- 19. 開始Padrino不同的主機(虛擬)
- 20. 多核虛擬機開放mpi測試
- 21. 虛擬機開始與ASP.Net vNext堆棧
- 22. 虛擬機無法ping虛擬網關
- 23. Azure虛擬機虛擬網絡互通
- 24. 使用Puppet獲取虛擬機中的主機虛擬機
- 25. 創建虛擬機並將虛擬機關聯到現有的虛擬網絡
- 26. 在虛擬主機
- 27. 虛擬機優化
- 28. 虛擬機存儲
- 29. 虛擬機異常
- 30. 虛擬機網絡
嗯,沒有人*永遠*要求一個緩慢,沉重和封閉的源代碼解決方案。你爲什麼不使用Java JVM? – 2010-08-20 13:50:48