There is no way around Lua anymore!!
Lua is a computer programming language, that came like many other language from the times of the great computer language boom in the early 90’s.(Wikipedia info)
It’s design was focusing on easy language, easy and small implementation, so that it was able to be used as an embedded language expansion of otherwise static applications.
It also was used as a scripting engine in many games, the Nintendo DS and other small devices, because it was so small that it could be used without wasting the platforms potential.
It has developed since then into a full grown, very flexible and ingenious language of wide application range from said classic use, as a system scripting language, interprocess communication language but also as a classic universal language.
The easy and effective design makes it easy to JIT compile, so that LuaJIT today is one of the fastest if not the fastest high level language you can get. It is as powerful as its competition, but beats it by factor 30+ in speed usually, while to embed Lua into your program costs two lines of code (from C) and less than a kilobyte additional code length, while in memory it lives as a sharable dynamic linked library of 130–400 kb size, which is in todays age computers and mobile devices just nothing.
LuaJIT programs can even with calculations rival pure C if you don’t take care about your C code, but even if you optimize your C it is hard on your heels.
Modern Lua is used in AI, starts to replace the role of PHP on some webserver projects, because of its efficiency and speed it doesn’t suffer the performance problems, it is used in web-frameworks, hacking programs, in the NeoVIM editor, in Redis and many other projects.
Lua has at the moment the key-role to the App 2.0 development of many programs, because it does to a normal App what PHP did 1995 to static HTML and we all know where that led.
The language only needs 21 keywords and knows only very few standard datatypes like Number, String, Boolean, Function and Table. Where the table is the only higher datatype and is representing Array, Set, Hashed Dictionary or anything including Linked Lists and so on what you like.
You can create classes in Lua if you want through a unique feature of the language that is called “metatable”. Everything for Lua is a table if it is not a primitive. Because this is the same for C and the processor the communication between Lua and C, Asm or the system is very easy, natural, fast and efficient.
The FFI interface makes communication with every system library possible without the need of specialized glue-code.
Lua represents the class of HLL that work on the application layer of software
application layer (HLL, highly dynamic languages)
implementation layer (compiling languages like C, system libraries, shared code, implementation of algorithms)
hardware layer (Asm, OpenCL, CUDA, Verilog)
Lua is a very lean language, but is easy to enhance up to any abstract layer you need it to be. But it doesn’t forces costly abstraction on your project if you don’t need it.
It is child-easy to learn and write. But can do everything.
It includes structures like real coroutines and real functional programming instead of just limited generators and lambda calculus like in Python.
LuaJIT is still something like factor 30 faster than PyPy, which is the Python JIT compiler.
It is like C a simple language that has only very few upper limits, especially because it likes to communicate downwards the ladder or upwards into meta-programming (cloud, web, …). It can be easily expanded by libraries, that cover most of the stuff you would like to do as a programmer, including multiprocessing, working with the GPU, sockets, graphics, mathematics or anything you want. There is even a LuaLaTeX available, the LaTeX package has decided to go that path in recent versions.
There is no way around Lua anymore.
Follow me on :-
Youtube : https://goo.gl/2exULj
Instagram(Tech) : https://goo.gl/ikLTyb
Instagram(Food) : https://goo.gl/ht3bZM
Quora : https://goo.gl/sEoxY3
Medium : https://goo.gl/M3QvUq
Linekdin : https://goo.gl/LeaGSF
Steemit : https://goo.gl/o7RUj7
GitHub : https://goo.gl/3R38LK
Zomato : https://goo.gl/tMKpM5