Publications

Structured Synchronous Reactive Programming with Céu by Francisco Sant'Anna, Roberto Ierusalimschy, Noemi Rodriguez. In 14th International Conference on MODULARITY, Fort Collins, Colorado, USA, March 2015.

Left recursion in Parsing Expression Grammars by Sérgio Medeiros, Fabio Mascarenhas, Roberto Ierusalimschy. Science of Computer Programming, v.96 Part 2, 177-190, 2014. (DOI 10.1016/j.scico.2014.01.013)

From regexes to parsing expression grammars by Sérgio Medeiros, Fabio Mascarenhas, Roberto Ierusalimschy. Science of Computer Programming, v.93 Part A, 3-18, 2014. (DOI 10.1016/j.scico.2012.11.006)

Scripting Multiple CPUs with Safe Data Sharing by Alexandre Skyrme, Noemi Rodriguez, Roberto Ierusalimschy. IEEE Software, v.31, 44-51, 2014. (DOI 10.1109/MS.2014.102)

Structured Reactive Programming with Céu by Francisco Sant'Anna, Roberto Ierusalimschy, Noemi Rodriguez. In Workshop on Reactive and Event-based Languages & Systems (REBLS'14), Portland, USA, October 2014. (DOI 10.1145/2661088.2661096)

Scriptable Operating Systems with Lua by Lourival Vieira Neto, Roberto Ierusalimschy, Ana Lúcia de Moura, Marc Balmer. In Proceedings of the 10th ACM Symposium in Dynamic Languages (DLS'14), Portland, USA, October 2014. (DOI 10.1145/2661088.2661096)

On the relation between context-free grammars and parsing expression grammars by Fabio Mascarenhas, Sérgio Medeiros, Roberto Ierusalimschy. Science of Computer Programming, v. 89 Part C, 233-250, 2014. (DOI 10.1016/j.scico.2014.01.012)

Typed Lua: An Optional Type System for Lua by André Murbach Maidl, Fabio Mascarenhas, Roberto Ierusalimschy. In Proceedings of the Workshop on Dynamic Languages and Applications (Dyla'14), Edinburgh, UK, June 2014.

A stepwise approach to developing staged applications by Tiago Salmito, Ana Lúcia de Moura, Noemi Rodriguez. Journal of Supercomputing, v.69, 1-17, 2014. (DOI 10.1007/s11227-014-1110-4)

A Survey of Support for Structured Communication in Concurrency Control Models by Alexandre Skyrme, Noemi Rodriguez, Roberto Ierusalimschy. Journal of Parallel and Distributed Computing, 74(4):2266-2285, 2014.

Exception Handling for Error Reporting in Parsing Expression Grammars by Andre Murbach Maidl, Fabio Mascarenhas, Roberto Ierusalimschy. In XVII Brazilian Symposium on Programming Languages, September 2013. (DOI 10.1007/978-3-642-40922-6_1, LNCS 8129).

Advanced Control Reactivity for Embedded Systems by Francisco Sant'Anna, Noemi Rodriguez, Roberto Ierusalimschy. In REM 2013 - Workshop on Reactivity, Events and Modularity, Indianopolis, October 2013.

LuaRocks: A Declarative and Extensible Package Management System for Lua by Hisham Muhammad, Fabio Mascarenhas, Roberto Ierusalimschy. In XVII Brazilian Symposium on Programming Languages, September 2013. (DOI 10.1007/978-3-642-40922-6_1, LNCS 8129).

Safe system-level concurrency on resource-constrained nodes by Francisco Sant'Anna, Noemi Rodriguez, Roberto Ierusalimschy, Olaf Landsiedel, and Philippas Tsigas. In Proceedings of SenSys, Rome, Italy, 2013. DOI 10.1145/2517351.2517360

From Locks to Transactional Memory: Lessons Learned from Porting a Real-world Application by Alexandre Skyrme, Noemi Rodriguez. In 8th ACM SIGPLAN Workshop on Transactional Computing (colocated with ASPLOS 2013), 2013, Houston, March 2013.

Left Recursion in Parsing Expression Grammars by Sergio Medeiros, Fabio Mascarenhas, Roberto Ierusalimschy. In XVI Brazilian Symposium on Programming Languages, September 2012. (DOI 10.1007/978-3-642-33182-4_4, LNCS 7554).

From Regular Expressions to Parsing Expression Grammars by Sérgio Medeiros, Fabio Mascarenhas, Roberto Ierusalimschy. In XV Brazilian Symposium on Programming Languages, 2011.

Parsing Expression Grammars for Structured Data by Fabio Mascarenhas, Sérgio Medeiros, Roberto Ierusalimschy. In XV Brazilian Symposium on Programming Languages, 2011.

Passing a Language through the Eye of a Needle by Roberto Ierusalimschy, Luiz H. de Figueiredo, Waldemar Celes. Communications of the ACM, 54(7):38-43, July 2011. (DOI 10.1145/1965724.1965739)

Converting regexes to Parsing Expression Grammars. by Marcelo Oikawa, Roberto Ierusalimschy, Ana L. de Moura. In XIV Brazilian Symposium on Programming Languages, Salvador, Brazil, 2010.

Revisiting coroutines, by Ana Lucia de Moura and Roberto Ierusalimschy. In ACM Transactions on Programming Languages and Systems, 31(2):6.1-6.31, February 2009.

LuaGravity, a Reactive Language Based on Implicit Invocation, by Francisco Sant'Anna and Roberto Ierusalimschy. In Proceedings of the 2009 Brazilian Symposium on Programming Languages (SBLP) 89-102.

A text pattern-matching tool based on parsing expression grammars, by Roberto Ierusalimschy. Software: Practice & Experience 39 #3 (2009) 221-258.

A Parsing Machine for PEGs, by Sérgio Medeiros and Roberto Ierusalimschy. In Proceedings of the 2008 symposium on Dynamic languages (2008) 1-12.

Efficient compilation of Lua for the CLR, by Fabio Mascarenhas and Roberto Ierusalimschy. Proceedings of the 2008 ACM symposium on Applied computing (2008) 217-221.

Eliminating cycles in weak tables, by A. Barros and R. Ierusalimschy. Journal of Universal Computer Science 14 #21 (2008) 3481-3497.

The evolution of Lua, by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes. In Proceedings of ACM HOPL III (2007).

C APIs in Extension and Extensible Languages, by Hisham Muhammad and Roberto Ierusalimschy. Journal of Universal Computer Science 13 #6 (2007) 839-853.

Running Lua scripts on the CLR through bytecode translation, by Fabio Mascarenhas and Roberto Ierusalimschy. Journal of Universal Computer Science 11 #7 (2005) 1275-1290.

The implementation of Lua 5.0, by Roberto Ierusalimschy, Luiz Henrique de Figueiredo, and Waldemar Celes. Journal of Universal Computer Science 11 #7 (2005) 1159-1176.

Coroutines in Lua, by Ana Lúcia de Moura, Noemi Rodriguez, and Roberto Ierusalimschy. Journal of Universal Computer Science 10 #7 (2004) 910-925.

LuaInterface: Scripting .NET CLR with Lua, by Fabio Mascarenhas and Roberto Ierusalimschy. Journal of Universal Computer Science 10 #7 (2004) 892-909.

Theses and dissertations

Typed Lua: An Optional Type System for Lua, by André Murbach Maidl. Ph.D. thesis, Department of Computer Science, PUC-Rio, April 2015.

Safe Record Sharing in Dynamic Programming Languages, by Alexandre Rupert Arpini Skyrme. Ph.D. thesis, Department of Computer Science, PUC-Rio, March 2015.

Uma abordagem flexível para o modelo de concorreênica em estágios, by Tiago Lima Salmito. Ph.D. thesis, Department of Computer Science, PUC-Rio, September 2013.

Safe System-level Concurrency on Resource-Constrained Nodes with Céu, by Francisco Figueiredo Goytacaz Sant'Anna, Ph.D. thesis, Department of Comupter Science, PUC-Rio, September 2013.

Lunatik: Scripting de Kernel de Sistema Operacional com Lua, by Lourival Pereira Vieira Neto. M.Sc. dissertation, Department of Computer Science, PUC-Rio, Apr 2011.

Conversão de regexes para parsing expression grammars, by Marcelo Oikawa. M.Sc. dissertation, Department of Computer Science, PUC-Rio, Aug 2010.

Correspondência entre PEGs e classes de gramáticas livres de contexto, by Sergio Queiroz de Medeiros, Ph.D. thesis, Department of Computer Science, PUC-Rio, Aug 2010.

Optimized Compilation of a Dynamic Language to a Managed Runtime Environment, by Fabio Mascarenhas, Ph.D. thesis, Department of Computer Science, PUC-Rio, Sep 2009.

A Synchronous Reactive Language based on Implicit Invocation, by Francisco Sant'Anna. M.Sc. dissertation, Department of Computer Science, PUC-Rio, Mar 2009.

Finalizadores e Ciclos em Tabelas Fracas, by Alexandra Barros. M.Sc. dissertation, Department of Computer Science, PUC-Rio, Apr 2007.

A study on scripting language APIs, by Hisham Muhammad. M.Sc. dissertation, Department of Computer Science, PUC-Rio, Aug 2006.

Revisitando co-rotinas, by Ana Lúcia de Moura. Ph.D. thesis, Department of Computer Science, PUC-Rio, Sep 2004.

Integração entre a linguagem Lua e o Common Language Runtime, by Fabio Mascarenhas. M.Sc. thesis, Department of Computer Science, PUC-Rio, Mar 2004.

Presentations

"LuaRocks - the package manager for Lua" - Hisham Muhammad at LuaConf 2016 - PDF

"LabLua & Google Summer of Code" - Ana Lúcia de Moura at LuaConf 2016 - PDF

"Typed Lua - Optional static typing for Lua" - Fabio Mascarenhas at LuaConf 2016 - PDF

"Lua: an embeddable, high-performance scripting language and its applications" - Hisham Muhammad at RIT 2013 - PDF, ODP