Lua is simple and fast
Contents
The fact that Lua is simple and fast is not a coincidence.
Being simple has lots of benefits:
- Easy to learn. Every technical person in my company has picked it up within days.
- Great for a team – no complicated language features to remember.
Being simple is a big reason for why the Lua JIT implementation is the fastest just in time compiler for any dynamic language in the world. It gets close to the performance of C (which I would not recommend as a choice to write interfacing code in).
There is interesting comment in a discussion on JIT compilers by Brendan Eich the inventor of Javascript on the fact that Lua’s simplicity is a a big driver in making it possible for LuaJIT to achieve the speeds that it does.
Less features – less code to write – less code to optimize.
Result – one genius – in this case Mike Pall was able to implement it by himself.
He is undoubtedly a very smart guy but it would have been much harder to pull off with a more complex language. Compare that with results of the unladen swallow project.
It is the simplicity of Lua that played a big part in us actually managing to deliver the Iguana Translator platform.