Lua is a powerful and efficient scripting language. One
includes the run
time interpreter in your program. My
experience with Lua was scripting stress
tests for a game
server. The idea is that it is almost free form - with a
very
relaxed syntax, making it both flexible and powerful.
It has things like
closures and lamba calculus that puts it
on the cutting edge of software
engineering. Lua was
developed in Brazil, and evolved almost as a fluke until
it
caught on.
My guess is that the virus under discussion has many
different configurable modules and they can all be easily
scripted via Lua.
Lua would be very appropriate for this
kind of use, and I would think one that
is very experienced
in the language would become rather fond of it and
naturally
want to include it wherever appropriate. The engine is so
light
weight that cost in terms of memory and performance
are not a
concern.
I only used Lua for three months, and didn't get to the
point
of fondness for the language in that time. I was still
learning to use the more
advanced features of the language
and learning best practices, so all that
doesn't come
naturally to me yet. In contrast, I have been using C/C++
for 20
years, and I can write code in that language without
even thinking, unlike my
abilities with Lua, so I never felt
I was at an advantage using Lua. It was a
requirement for
the job, not by personal choice.
However, I might guess
that someone who is far more
comfortable in 4GLs like Java or .Net would likely
prefer
Lua to C/C++, and they might even rave about the language.
Myself, I
don't really like 4GLs, and much prefer to stay
close to the metal, even being
able to drop into assembler
where appropriate. For me, programming in a 4GL is
like
typing with rubber gloves on my fingers. I like to feel the
bare metal
beneath my finger tips.
So in case that wasn't already a bit more of an
answer
than you expected, I have one more little tidbit about Lua
to tell. You
can download Lua for your Android phone and
create programs right on the phone.
There is a library that
gives you hooks into Android's API. Imagine then you
are
held
over waiting for a flight at the airport, with several hours
to
kill. You could develop a cool app right there on your
Android phone in Lua,
finding good use for your time. [ Reply to This | Parent | # ]
|