Imagem de capa do perfil de Roberto Ierusalimschy
Foto de perfil de Roberto Ierusalimschy

Roberto Ierusalimschy

Nascimento: 1960 Rio de Janeiro, RJ
Cientista da computação carioca, professor titular da PUC-Rio e arquiteto-chefe da linguagem Lua, usada em jogos, software embarcado e aplicações no mundo inteiro.

Poucas linguagens de programação saíram de um campus brasileiro e foram parar dentro de jogos, editores de foto e da própria Wikipédia. Lua fez esse percurso sem virar um pacote enorme: continua pequena, embarcável e escrita em C, com o desenho ainda conduzido no Rio de Janeiro.

Quem busca Roberto Ierusalimschy está, na prática, procurando o professor que segue como arquiteto-chefe dessa linguagem. Carioca, nascido em 1960, ele é professor titular do Departamento de Informática da PUC-Rio e assina Lua com Luiz Henrique de Figueiredo e Waldemar Celes desde 1993. A dúvida que costuma vir junto do nome é concreta: o que ele fez, o que estudar e por que uma ferramenta tão enxuta virou peça recorrente em programação de games e software embarcado.

Quem é Roberto Ierusalimschy

Roberto Ierusalimschy trabalha com linguagens de programação na PUC-Rio, onde se formou, fez mestrado e doutorado e hoje ocupa o cargo de professor titular. A ficha do departamento o descreve como projetista-chefe de Lua, linguagem usada em programas como Angry Birds, World of Warcraft, Adobe Lightroom e Wikipedia. Não é um slogan de bastidor: é o recorte público da própria universidade e da equipe em lua.org.

Ele não construiu uma marca de influenciador. A presença pública passa pela página pessoal na PUC-Rio, por palestras, artigos acadêmicos e pelo livro oficial da linguagem. Quem chega pelo nome costuma cruzar três coisas: a biografia de professor, a história de Lua e o material para aprender a linguagem de fato.

O critério de trabalho é o de um projetista que prefere mecanismos a uma lista infinita de recursos. Lua oferece poucos tipos, uma tabela associativa como estrutura central e uma interface em C pensada para embutir o interpretador em outros programas. Essa economia de conceitos explica boa parte da fama entre quem precisa de script leve, não de mais uma linguagem “completa” disputando espaço com Python ou Java.

Como Lua nasceu na PUC-Rio

Lua surgiu em 1993 no Tecgraf, então o grupo de tecnologia em computação gráfica da PUC-Rio. O problema inicial era prático: customizar aplicações, inclusive demandas ligadas à Petrobras, sem reescrever o núcleo em C a cada pedido de mudança. Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar Celes desenharam uma linguagem de extensão, pequena o bastante para entrar em software já existente.

O nome é português e não é sigla. “Lua” é a palavra para o satélite da Terra; a equipe pede que se escreva assim, não como LUA em caixa alta. A pronúncia usual em inglês, LOO-ah, aparece nos materiais oficiais justamente para evitar essa confusão.

Da PUC-Rio a linguagem saiu para usos que a equipe original não poderia ter previsto um a um. A indústria de jogos adotou Lua como script de jogabilidade e interface. A Blizzard usou a linguagem em World of Warcraft. A Rovio usou em Angry Birds. A Adobe usou em Lightroom. No Brasil, o middleware Ginga de TV digital também entra na lista oficial de aplicações. A Wikipédia passou a executar módulos Lua via Scribunto. O fio comum não é um mercado só: é a necessidade de um interpretador leve, com licença MIT e interface clara para C.

Em 2007, Lua entrou na HOPL III, a conferência da ACM sobre história das linguagens de programação. Em 2011, recebeu o Front Line Award da Game Developers Magazine. Em 2022, os criadores foram homenageados com a Medalha Pedro Ernesto, comenda da Câmara Municipal do Rio de Janeiro. O reconhecimento não muda o fato técnico: a linguagem segue sendo mantida por um time pequeno, hoje ligado ao LabLua, no Departamento de Informática da PUC-Rio.

Formação, pesquisa e o LabLua

A trajetória acadêmica de Roberto Ierusalimschy é quase toda na mesma casa. Graduação em Informática na PUC-Rio em 1982, mestrado em 1985, doutorado em 1990, com orientação de Carlos José Pereira de Lucena. A tese tratou de uma linguagem orientada a objetos para desenvolvimento rigoroso de programas. Em 1992 fez pós-doutorado na Universidade de Waterloo, no Canadá. Em 2012 foi professor visitante em Stanford.

No currículo institucional, ele aparece como coordenador do LabLua, laboratório de desenvolvimento de Lua e de outras linguagens, e como bolsista de produtividade do CNPq. O perfil público no LinkedIn da PUC-Rio e o Google Scholar batem com esse retrato de pesquisador de linguagens, não de empreendedor de curso. Ele também integra o IFIP Working Group on Language Design, grupo internacional de pesquisadores de linguagens.

Alguns marcos públicos da carreira:

  • Arquiteto-chefe de Lua, criada em 1993 na PUC-Rio com Luiz Henrique de Figueiredo e Waldemar Celes.
  • Professor titular do Departamento de Informática da PUC-Rio e coordenador do LabLua.
  • Autor de Programming in Lua e da edição brasileira Programando em Lua, publicada pela LTC.
  • Criador da biblioteca LPeg, para casamento de padrões com gramáticas de parsing.
  • Pós-doutorado na Universidade de Waterloo, em 1992, e professor visitante em Stanford, em 2012.

A pesquisa publicada cobre implementação de Lua, corrotinas, coleta de lixo, gramáticas PEG e o próprio desenho da linguagem. Textos como “The evolution of Lua” e “Passing a language through the eye of a needle” descrevem as escolhas que mantiveram o núcleo pequeno. Quem lê esses artigos encontra o mesmo critério do software: poucas primitivas e muitos jeitos de o programador estender o resto.

Livros, LPeg e o que ele publica

O livro oficial da linguagem é Programming in Lua, escrito pelo próprio arquiteto-chefe e publicado por Lua.org. A quarta edição, de 2016, cobre Lua 5.3, reorganiza o material por complexidade crescente e trata da ponte com C. No Brasil, a LTC publicou Programando em Lua, terceira edição, em 2015, para quem prefere estudar em português. Os dois títulos não substituem o manual de referência, disponível em lua.org: o livro ensina padrões de uso; o manual define a linguagem.

Fora dos livros, Roberto Ierusalimschy criou o LPeg, biblioteca de Lua para Parsing Expression Grammars. Em vez de tratar expressões regulares como um dialeto à parte, o LPeg leva o parsing para um formalismo com gramática explícita. O artigo de 2009 em Software: Practice and Experience documenta a ferramenta. Quem já bateu numa regex ilegível para analisar texto estruturado entende o apelo.

Há também o curso Building a Programming Language, em formato de turma com projeto: os participantes constroem um compilador pequeno em Lua, usando LPeg para a análise. Não é um catálogo permanente de aulas; é uma iniciativa de ensino ligada ao próprio autor, anunciada por ele na lista da comunidade. O centro da autoridade continua sendo a linguagem e a pesquisa, não uma prateleira de cursos empilhados.

Onde acompanhar o trabalho

O ponto de partida oficial é a página pessoal na PUC-Rio, com publicações e palestras. A linguagem vive em lua.org, com manual, código-fonte, licença MIT e a história do projeto. A Amazon reúne o perfil de autor e as edições de Programming in Lua e Programando em Lua. Google Scholar e DBLP indexam os artigos. O LinkedIn institucional confirma o cargo.

Roberto Ierusalimschy não concentra audiência em Instagram ou canal próprio no YouTube. A presença pública é a de um professor de ciência da computação que ainda mantém uma linguagem usada em tecnologia de consumo, da TV digital brasileira a motores de jogo. Para quem está escolhendo o que ler, o caminho curto é o livro oficial, o manual em lua.org e, se a dúvida for sobre a pessoa, a ficha da PUC-Rio.

O que você acha desta Autoridade?

A comunidade quer saber: Roberto Ierusalimschy cumpre o que promete? Escreva seu parecer sincero sobre a qualidade, a ética e a utilidade do trabalho.

Projetos de Roberto Ierusalimschy

Programando em Lua
Programando em Lua
Edição brasileira do livro oficial de Lua, escrita por Roberto Ierusalimschy e publicada pela LTC em terceira edição.
00%
00%
Programming in Lua
Programming in Lua
Livro oficial da linguagem Lua, quarta edição de Roberto Ierusalimschy, atualizado para Lua 5.3 e publicado por Lua.org.
00%
00%
Lua
Lua
Linguagem de programação leve e embarcável criada na PUC-Rio em 1993, com Roberto Ierusalimschy como arquiteto-chefe.
00%
00%