lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

On 3/24/17 3:51 PM, Egor Skriptunoff wrote:

According to Stack Overflow Developer Survey 2017,
Lua is ranked 9-th in "Most dreaded Languages" list:
2/3 of developers who are currently using Lua express no interest in
continuing to use it.

That's quite unexpected.
Probably, most of SO survey respondents are Lua newcomers.
What may be the reasons for their "moon fear"?

Maybe, deceptive simplicity (hidden complexity) of the language?


I faced this exact problem with some team-mates (other companies)
on a large contract I worked on last year. My team developed
an application environment for Lua apps to run in. The folks
developing the first application kicked back and, basically,
said "we don't want to program in Lua".

The basic reasons, as far as I could see, were
 - Unfamiliarity with it. this meant that they had to learn another
   language, another set of programming idioms, and so on.
 - For the app programmers we were working with, Lua does not have wide
   applicability beyond our particular project, so there was some degree
   of "it's not a useful addition to my resume".

   We addressed these two points by saying, basically, "The syntax and
   semantics of the language are easy to learn --- the hard part is
   things like programming models, libraries, and so on ... which have
   nothing to do with Lua, but are functions of the environment we
   made".  We also pointed out the difference in size between the
   O'Reilly Python books and PiL --- as a first approximation of the
   complexity of the basic language.

 - The application team did not fully grasp the reasons that we chose
   Lua for programming (instead of Java, Python, etc).

   We dealt with this by carefully explaining why we chose Lua (such as
   its size, well thought out Lua/C API, portability, and license) and
   contrasting these with other languages.

 - Lua didn't "just do things" that other languages might. One that
   hit us was performance -- initial tests of the application showed it
   taking 50x as much time as the same app coded in C++.  A few simple
   optimizations got it down to about 5x, which was acceptable. These
   were optimizations that any modern C/C++ compiler would do

Frank Kastenholz