Domanda

Sto cercando una macchina virtuale open source che è:

  • veloce e il più leggero possibile
  • supporta un set minimo di bytecode (come LLVM IR)
  • facilmente embedable da un'applicazione C ++
  • Multipiattaforma (Linux, Windows e OS X)
  • Supporto x86
È stato utile?

Soluzione

Perché filtro fuori LLVM? E ' un insieme di librerie C

Credo che non è così facile per incorporare di Lua, ma LLVM è così grande che sarebbe probabilmente superato il fastidio di integrarla. Vedere questa domanda SO , lo fa d'aiuto?

Altri suggerimenti

Lua è famosa per essere ridicolmente facile da incorporare nel C / C ++. La sua VM è open source e cross-platform, molto piccola (sia exe dimensioni e istruzioni bytecode set) e allo stesso tempo abbastanza veloce. Ma la sua bytecode può essere non adatto per la propria lingua. Il formato bytecode è documentato qui.

NekoVM è un linguaggio di programmazione e di una macchina virtuale leggero progettato come un obiettivo generico per gli scrittori del compilatore. La documentazione fa sembrare veramente facile da incorporare il VM in un'applicazione C o C ++, ma sembra che il VM API non è ancora documentato.

Altro risposta possibile: perché non l'uscita assembler invece? è veloce e leggero, e non hai bisogno di una macchina virtuale a tutti. Dal momento che si target solo x86, potrebbe avere senso, a seconda di quello che stai cercando di fare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top