views:

105

answers:

4

I'm looking for a scripting language that works on 32-bit and 64-bit machines as well as on Windows and Linux. I will be embedding it into a C++ application so I prefer it to be natively written in C++ rather than C. I also would prefer the script to have thread/asynchronous support.

So far the languages that I have looked at are GameMonkey, Lua, and V8 JavaScript Engine. V8 JavaScript has the most appeal so far. I don't really want to use GameMonkey because AFAIK it doesn't support 64-bit addressing. Lua is written in C so I would probably use the C++ wrapper, but I really don't like mixing C and C++ code.

So are there some other alternatives that I could look at?

+6  A: 

I personally prefer LUA over others. Maybe because it's used by WoW and I do my own tweaks for WoW addons. But I've seen many opinions that is good, even on SO.

AOI Karasu
Yes, I have chosen to use Lua. Thanks :)
Tr41n
+1  A: 

Maybe Falcon, ChaiScript, IO or even AngelScript might match your requirements?

Klaim
Thanks, Haven't seen Falcon / ChaiScript / or IO before. Falcon is an interesting language.
Tr41n
Yes, I use it in a big project and it's a better alternative than Python for some reasons. That said, I suppose it will work in 64bit but I didn't try yet.
Klaim
Just wanted to verify that 64bit ChaiScript does work. It's only been officially tested on Linux, but 0 issues were found.
lefticus
A: 

If you use qt you could use qtscript. Otherwise python might be a good idea.

Roman A. Taycher
Haven't heard of qtscript before, thanks :)
Tr41n
+1  A: 

I say Lua. It's ultraportable (It even runs under PalmOS, WindowsCE and DOS!), small (200-300k), fast and it is very easy to interface it with C/C++.

Also, Michael Pall makes amazing progress with his LUA JIT implementation. His current beta-4 supports x86 and x86_64 jitting and beats the crap out of almost every interpreter language I know: http://luajit.org/

Luther Blissett
Wow, this is exciting, I will be using lua JIT :). Thanks.
Tr41n