Programming Languages Research with emphasis on the Lua language

Technologies
lua, céu
Topics
scripting languages, reactive programming, kernel scripting
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 and Céu communities 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.

2019 Program

Successful Projects

Contributor
Connor McPherson
Mentor
Romário Rios
Organization
LabLua
The Apolo Library: Building Piping and bash syntax in a light-weight environment
Lua is a tiny language that can do a lot. As a scripting language, it can be embedded into larger projects, used in IoT devices for its lightweight...
Contributor
Gaurav Kumar-1
Mentor
Fernando Jefferson
Organization
LabLua
Google Cloud IoT Core Interface in Lua
The project consists of developing an interface, in Lua, for the set of Cloud IoT Core APIs, through two REST resources: cloudiot methods, to...
Contributor
Jingrui Li
Mentor
Francisco Sant'Anna
Organization
LabLua
An application for Céu-Arduino
An application from Jingrui for Céu-Arduino, I'll do my best for that.
Contributor
Victor Nogueira
Mentor
Pedro Tammela, lneto
Organization
LabLua
XDPLua
A version of the Linux Kernel's XDP framework which will support the execution of Lua scripts as well as eBPF programs
Contributor
Vishnu M
Mentor
Hugo Musso Gualandi, Gabriel Ligneul
Organization
LabLua
C Header File Parser in Lua Using Clang AST
Pallene, the statically typed sister language of Lua requires a Foreign Function Interface(FFI) to C. As a starting point, there is a need to create...