2010-07-22 14 views
5

Sto cercando un linguaggio di scripting che funzioni su macchine a 32 e 64 bit, nonché su Windows e Linux. Lo incorporerò in un'applicazione C++, quindi preferisco che sia scritto in modo nativo in C++ piuttosto che in C. Inoltre, preferirei che lo script avesse il supporto thread/asincrono.Alla ricerca di un linguaggio di scripting integrabile per C++ con supporto a 64 bit e Cross Platform

Finora le lingue che ho guardato sono GameMonkey, Lua e V8 JavaScript Engine. V8 JavaScript ha il maggior appeal finora. Non voglio davvero utilizzare GameMonkey perché AFAIK non supporta l'indirizzamento a 64 bit. Lua è scritto in C quindi probabilmente userò il wrapper C++, ma non mi piace davvero mescolare il codice C e C++.

Quindi ci sono altre alternative che potrei guardare?

+1

Lua si compila in modo pulito come C++. – lhf

+0

Grazie lhf, questa è un'ottima notizia :) – Tr41n

+0

anche grazie a starblue per il fissaggio dei miei tag :) – Tr41n

risposta

4

Dico Lua. È ultraportatile (funziona anche con PalmOS, WindowsCE e DOS!), Piccolo (200-300k), veloce ed è molto facile interfacciarlo con C/C++.

Inoltre, Michael Pall fa progressi incredibili con la sua implementazione LUA JIT. La sua attuale beta-4 supporta x86 e x86_64 jitting e batte la merda di quasi tutte le lingue interprete lo so: http://luajit.org/

+0

Wow, questo è eccitante, userò lua JIT :). Grazie. – Tr41n

6

Personalmente preferisco Lua rispetto ad altri. Forse perché è usato da WoW e io faccio le mie modifiche per i componenti aggiuntivi di WoW. Ma ho visto molte opinioni positive, anche su SO.

+0

Sì, ho scelto di usare Lua. Grazie :) – Tr41n

3

Forse Falcon, ChaiScript, IO o anche AngelScript potrebbe corrispondere alle vostre esigenze?

+0

Grazie, Non ho visto Falcon/ChaiScript/o IO prima. Falcon è una lingua interessante. – Tr41n

+0

Sì, lo uso in un grande progetto ed è un'alternativa migliore di Python per alcuni motivi. Detto questo, suppongo che funzionerà a 64 bit ma non ho ancora provato. – Klaim

+0

Volevo solo verificare che ChaiScript a 64 bit funzioni. È stato testato ufficialmente solo su Linux, ma sono stati trovati 0 problemi. – lefticus

1

Se si utilizza qt è possibile utilizzare qtscript. Altrimenti python potrebbe essere una buona idea.

+0

Non ho mai sentito parlare di qtscript prima, grazie :) – Tr41n

2

Si potrebbe anche usare Squirrel, è C++, con una sintassi C/Java-like, supporto OO (anche l'ereditarietà di classe) e molte cose belle. È in linea con Lua in termini di velocità, ma la dimensione del codice una volta compilata è leggermente più grande.

Se stai scrivendo il tuo programma in C++ potresti preferirlo a Lua, e la sintassi è molto più accattivante (alla vista e alla tua produttività se scrivi codice C++ spesso).

Problemi correlati