Henrique Rebelo

Registered user since Tue 28 Oct 2014

Name: Henrique Rebelo

Bio: My chief [and long-term] research interest is at improving the productivity of programmers by enabling them to write programs that, as much as possible, look like their design [and design constraints]. I believe that programs that clearly capture the design structure and interfaces they implement are more configurable, fun to develop and easier to maintain.

In pursuit of this goal, my research has been focused in programming language design and implementation, including software engineering, tools and related issues.

I have worked massively in the area of design by contract (DbC) and aspect-oriented programming (AOP). In the former, I have contributed extensively to the implementation of the JML specification language and its [RAC] compiler. In the latter, more recently, I’m excited to have started the next generation of aspect-oriented programming, as outlined in my SBLP 2017 talk. In this context, I’m leading the development of aspect-oriented programming reloaded project, which includes the AspectJML programming language and its Online IDE. AspectJML is [now] a general-purpose aspect-oriented extension to Java. It supports programming in Java, JML, AspectJ, AspectJML, or a mixin of all that. Hence, some of my current research in the Software Productivity Group is AOP[Reloaded]/AspectJML related.

Country: Brazil

Affiliation: Universidade Federal de Pernambuco

Personal website: http://www.cin.ufpe.br/~hemr

Research interests: Programming Languages, Modularity, Software Engineering


SPLASH 2020Accessibility Chair in Organizing Committee
ESEC/FSE 2018Publications Chair in Organizing Committee
ECOOP 2016Committee Member in Artifact Evaluation Committee within the Artifacts-track
Modularity 2016 Students Event Co-Chair in Organizing Committee within the Student Research Competition-track
Students Event Co-Chair in Organizing Committee
SPLASH 2013Author of Client-Aware Checking and Information Hiding in Interface Specifications with JML/ajmlc within the Demonstrations-track
Author of Identifying and Specifying Crosscutting Contracts with AspectJML within the ACM SRC-track