Lua 5.2.0 Released
Written by Kay Ewbank   
Wednesday, 21 December 2011

An updated version of Lua, the scripting language for writing embedded apps is now available. Its improvements include a new library for bitwise operations, changes to the way coroutines work and ephemeron tables.

An updated version of Lua, the scripting language for writing embedded apps is available.

 

Lualogo

 

Lua, whose name means "moon" in Portuguese, is being developed by a team at the Pontifical Catholic University of Rio de Janeiro. It has been used in applications as diverse as World of Warcraft and Cisco’s Adaptive Security Appliance. It has lots of interesting features and is far from just another C/C++ clone with slight syntactic variations. In particular it supports functions as first class objects, closure and extensible semantics. It also isn't a class based language. Overall it is most resembles JavaScript of all the currenly popular languages.

The new version has a new lexical scheme for global variables, and has changed the way it handles function environments. The new version has also changed the way that coroutines work. Coroutines refers to the technique of collaborative multithreading. A coroutine in Lua represents an independent thread of execution that continues until the coroutine yields control back to the calling code. This version of Lua supports yielding across metamethods and for loop iterators pcall and xpcall calls.

Other improvements include a new library for bitwise operations, the addition of a goto statement (which might not be an improvement), and support for light C functions.

An emergency garbage collector has been added so that Lua forces a garbage collection when memory allocation fails - Lua performs automatic memory management.

Another new addition to 5.2.0 is the concept of ephemeron tables. An ephemeron table is one with weak keys and strong values, where the value is only reachable if its key is reachable. This feature should make it easier for the garbage collector to clear away unwanted objects and minimize memory leaks.

 

Lualogo

 

The new version can be downloaded from Lua.org and you can also obtain it here.  The Lua 5.2 Reference Manual provides the official definition of the language and you can try out Lua without downloading it using its demo.

 

To be informed about new articles on I Programmer, subscribe to the RSS feed, follow us on Google+, Twitter, Linkedin or Facebook or sign up for our weekly newsletter.


Banner


Turing Papers At Auction
08/06/2025

Alan Turing's personal copy of his PhD dissertation and an original offprint of "On Computable Numbers" together with a  loose-leaf copy of his portrait photograph that bears his signature are th [ ... ]



Google Improves BigLake And BigQuery
05/06/2025

Google has announced improvements to BigLake and BigQuery, including with the general availability of BigLake Metastore; new high-performance Iceberg-native Cloud Storage; and native support with Data [ ... ]


More News

Last Updated ( Wednesday, 21 December 2011 )