Programming Languages Research with emphasis on the Lua language

Technologies
lua, céu, kernel
Topics
scripting languages, reactive languages
Programming Languages Research with emphasis on the Lua language

LabLua is a research lab at the Catholic University of Rio de Janeiro (PUC-Rio), affiliated with its Computer Science Department. It is dedicated to research on programming languages, with emphasis on the Lua language and reactive programming. It was founded on May 2004 by Prof. Roberto Ierusalimschy, the chief architect of the Lua language.

LabLua consists of people from a wide range of backgrounds, including PhD candidates, professors and alumni who are the developers and maintainers of projects that are used by the Lua community at large

What is Lua?

Lua is a powerful, efficient, lightweight, embeddable scripting language. It supports procedural programming, object-oriented programming, functional programming, data-driven programming, and data description.

Lua has been used in many industrial applications (e.g., Adobe's Photoshop Lightroom), with an emphasis on embedded systems (e.g., the Ginga middleware for digital TV in Brazil) and games (e.g., World of Warcraft and Angry Birds). Several versions of Lua have been released and used in real applications since its creation in 1993.

What is Céu?

Céu provides "Structured Synchronous Reactive Programming", a safe and deterministic concurrency model with side effects. Reactive applications interact continuously with the environment and are mostly guided through input events from it. Céu can be described as a reactive, imperative, concurrent, synchronous, and deterministic language, which easily integrates with C and Lua.

2021 Program

Successful Projects

Contributor
Shichu Yang
Mentor
Pedro Tammela, Jonas Devlieghere
Organization
LabLua
Lua scripted watchpoints in LLDB
Enable users to attach a script or Lua function to a watchpoint and execute it when the program flow hits it in LLDB and improve the whole...
Contributor
Deepak Singh Rathore
Mentor
Hisham Muhammad
Organization
LabLua
Typed API for LuaRocks
The goal of this project is to provide typed API for LuaRocks modules, specified using Teal, a typed dialect of Lua, which allows for typed...
Contributor
Micah Kendall
Mentor
Francisco
Organization
LabLua
A Lua library for Freechains-P2P
Freechains Lua API. This is an API for the Freechains project written in the Lua programming language. The lua-sockets library is used to interface...
Contributor
Srijan Paul
Mentor
Hugo Musso Gualandi
Organization
LabLua
Closures in Pallene
Pallene is a statically typed sister of the Lua programming language. This proposal aims to add support for Closures in Pallene. Closures are...