On 04/11/11 1:58 PM, David Riley wrote:
On Nov 4, 2011, at 12:48 PM, Ray Arachelian wrote:
On 11/03/2011 12:31 PM, Dave McGuire wrote:
On 11/03/2011 07:16 AM, Philip Pemberton wrote:
There's development code to do this with the
DiscFerret. I've been
holding off on releasing it because I wanted to do a "universal" (script
based) version... at this point I'm tempted to abandon that and go with
the C/C++ "recompile to add a new format" version.
Sounds like a perfect application for loadable modules.
-Dave
Lua would be perfect for this as it's designed to be a plugin language,
and it's very portable and easy to learn/modify.
With the JIT versions, it's about as fast as C/C++.
Even without the JIT, it's plenty fast on modern machines. I think the primary
benefit of Lua is that it's very easily embedded and extended, and it compiles very
cleanly on quite a few platforms. It also has a pretty small memory footprint even with a
reasonably complete standard library (which, for scripting disk format conversions, you
could probably slim down), something that lot of "embeddable" scripting
languages don't.
Lua has other advantages besides being fast and simple: It provides some
nice primitives for building up domain-specific languages of sorts,
leading to very compact scripts, and is also brain-dead easy to embed
into C or C++.
Certainly a project Brazil can be proud of. :)
--Toby
Python is another option, though it's somewhat
larger and more ponderous than Lua. For older machines, it may be wholly inappropriate.
- Dave