GSoC/GCI Archive
Google Summer of Code 2015

LabLua

License: MIT license

Web Page: http://www.lua.inf.puc-rio.br/gsoc/ideas2015.html

Mailing List: http://groups.google.com/group/labluagsoc

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 (www.lua.org). Lua is a powerful, fast, lightweight, scripting language, currently used in areas ranging from embedded systems to Web development. LabLua was founded on May 2004 by Prof. Roberto Ierusalimschy, the chief architect of the Lua language.

Projects

  • Add support for WSDL generation to LuaSOAP Add support for WSDL generation to LuaSOAP by implementing an automatic generator of WSDL documents.
  • Elasticsearch Lua client (elasticsearch-lua) Elasticsearch is very good and scalable search engine. It provides a REST API accessed though JSON format. There have been many clients written in different languages(php, js, python, ruby, etc.) to wrap around the REST API. There has been no client for lua. My project aims to create an elastic-search client in Lua.
  • Port an SDL-based C++ open source game to Céu The idea is to show that a game of a considerable size (30,000-50,000 lines of C/C++ code) could be written using reactive programming language Céu in a few months. The most possible game candidate is Supertux yet. Game would be written on Céu from scratch. There also would be a report about Céu game development experience and the final game would be compared with the original. I've already worked with SDL2 using C/C++ and built the development environment on my Windows machine.
  • Port Lua Test Suite to the NetBSD Kernel The Lua programming language has been ported to the NetBSD kernel, so as to allow interaction with kernel subsystems by means of a higher-level language. The main goal of this project was to port the Lua test suite to the NetBSD kernel.
  • Sailor: Web development in Lua Lua is greatly used in embedded systems but it's also excellent as a general purpose language. Its use in web development, for example, could be more widespread. Sailor is a web MVC framework completely written in Lua that allows to write robust web systems using Lua programming language. It's in early development stage with two releases under MIT License. Its participation in GSoC would be very beneficial for both Sailor as a project and for the Lua community.
  • Typed binary format for dynamically evolving RPC applications Distributed systems that use the RPC model could benefit from having typing data included in invocations. This would make it possible to quickly find deployment problems related to mismatching interfaces between different nodes. Most current RPC protocols do not include typing data in invocations or, if they do, this information is present in inefficient representations. The goal of this project is to design and develop a typed binary serialization format and an RPC protocol using this format.