

The first rule of Lua - goplexian
http://www.goplexian.com/2010/02/first-rule-of-lua.html

======
chipsy
I get a mention in this. It's clear that "the reason why I'm not using Lua,"
which is what I talked about, is not the same as a discussion of "the reason
why Lua isn't talked about."

But I think I can weave my first comment into a comment on the second: The
amount of discussion is dependent on the scale of useful projects. Bloggers,
as a rule, try to fit everything into sound-bites. The big, complex projects
where Lua gets used successfully are not easy to sound-bite, and the
(hypothetical) average programmer can't relate to them; instead, blogs focus
disproportionately on "tiny code-snippet hack" cases: take, for example, the
"reddit in n lines of foo" meme. Those things are not particularly useful or
informative, but they drive a lot of programmer traffic because they're just
interesting enough to get attention without being difficult.

A project like Sqlite fits in great in the "code-snippet" case. It fills a
certain application need - persistent storage and queries - and has lots of
bindings so you can use it from most languages. It reuses well-known concepts
from SQL databases, even if the actual implementation is different. So it's
easy to talk about, and it's easy to include by default for a broad subset of
projects.

Lua, being a "full" language, has some unique concepts and syntax, and an
integration process requiring a little bit of thought and effort, which makes
people feel uncomfortable. The benefits aren't immediately obvious. They'd
need a bigger push to habitually include it in _most_ projects. So it fails
the code-snippet test.

Rails is another good example. "Look at how easy it is to get a useful webapp
running!" That was the original draw. It worked because, as it happened, when
it came out, programmers were desperate for exactly that kind of solution. The
people who bought into this soon generated additional waves of hype, because
they realized that Ruby was more expressive than Java/C++/etc. that they had
been using before, so you got a lot of "Why Ruby is better than x" follow-on
posts from people who had never seen a dynamic-typed language in their life.

It is a case of "stupid gimmicks," of course. Sqlite would still be useful
without using SQL query syntax, and Ruby would still be useful without Rails,
But I think that's the kind of thing Lua needs to gain hype. A Lua-based
project that, within a specific application domain, makes it easy to create
cool, useful hacks.

(LÖVE seems like a pretty good example for this, honestly.)

