E-learningNew Courses

LUA Programming Language

Welcome to Lua.

Lua programming language is a powerful and fast programming language that is easy to learn and use and to embed into your application.

Lua Programming Language is designed to be a lightweight embeddable scripting language. In other words, it is used for all sorts of applications, from games to web applications and image processing.

Moreover, in order to run Lua Programming Language programs on your computer, you’ll need a standalone Lua interpreter and perhaps some additional Lua libraries. For instance, use your favorite text editor to write your Lua programs. Additionally, make sure to save your programs as plain text. You can fork Lua from ClayDesk GitHub repository.

The main changes introduced in Lua 5.3

  • Similarly, integers (64-bit by default)
  • official support for 32-bit numbers
  • bitwise operators
  • basic utf-8 support
  • functions for packing and unpacking values

Additionally, see below in Lua 5.3, for example:

Language

  • Moreover, userdata can have any Lua value as uservalue
  • floor division
  • more flexible rules for some metamethods

Libraries

  • ipairs and the table library respect metamethods
  • strip option in string.dump
  • table library respects meta methods. Below are new functions in Lua.
  • table.move
  • string.pack
  • string.unpack
  • string.packsize

C API

  • Subsequently, simpler API for continuation functions in C
  • lua_gettable and similar functions return type of resulted value
  • strip option in lua_dump. In addition, below are some new functions.
  • lua_geti
  • lua_seti
  • lua_isyieldable
  • lua_numbertointeger
  • lua_rotate
  • lua_stringtonumber

Lua standalone interpreter

  • can be used as calculator; no need to prefix with ‘=’
  • arg table available to all code

You can download Lua here.

For you to implement Lua in pure ANSI C and compiles unmodified in all platforms that have an ANSI C compiler. Lua also compiles cleanly as C++.

What do I call software derived from Lua?

Lua is designed for your specific domain. When the time comes to distribute your software two questions may arise: “May I still call the language inside my software Lua?” and “May I call it something else?”.

For instance, if the syntax and the semantics of the language (that is, the parser and the virtual machine) remain the same, then the language is still Lua. Moreover, if you simply add new libraries, or even replace the standard Lua libraries with your own libraries, the language is still the same, and you don’t need to (and probably shouldn’t) give it a completely different name.

Similarly, if you have changed the syntax or the semantics of the language, then it’s probably a minor extension and you’ll probably benefit from calling your language a Lua variant, so that you can refer users to existing Lua documentation and community, with the caveats relating to your extension of the language.