PhD Student at Carnegie Mellon University
PhD Student at University of LisbonI am a PhD student working under the supervision of Alcides Fonseca, Sara Silva, and Christopher S. Timperley. My research focuses on empirically studying bugs and developing program analysis techniques to detect errors in software systems. I have worked on code generation using evolutionary computation, and I am closely researching the application of AI, programming languages, and software engineering techniques to robot software. Overall, I am interested in Program Analysis, Applied AI, and Code Generation & Repair.
",
which does not match the baseurl ("") configured in _config.yml.
baseurl in _config.yml to "".
Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley
European Conference on Software Architecture (ECSA). 2026. Just Accepted! 🎉
ROS-based robotic systems are rarely static as developers continuously add, remove, and rewire components as their systems evolve, often without documentation. In this work, we study how these architectural changes evolve across open-source ROS repositories by building a differential, cross-language recovery tool that tracks component, connection, and configuration changes across releases. We applied it to hundreds of repositories spanning ROS 1 and ROS 2 in C/C++, Python, and XML. We find that evolution diverges by level of analysis: repositories keep growing as new packages are integrated, while individual packages consolidate by pruning connections and configurations as they mature. Changes also tend to co-occur: when a component is removed, its connections and configurations tend to follow in the same release. These findings give specification writers a clearer picture of the maintenance burden of keeping architectural descriptions up-to-date, and point analysis tools toward the mostchange-prone elements.
Ruben Branco*, Paulo Canelas*, Catarina Gamboa*, Alcides Fonseca (* equal contribution)
Mining Challenge at International Conference on Mining Software Repositories (MSR). 2026.
Paulo Canelas, Bradley Schmerl, Alcides Fonseca, Christopher S. Timperley
Proceedings of the ACM on Programming Languages (PACMPL), OOPSLA. 2025.
Daniel Ramos, Claudia Mamede*, Kush Jain*, Paulo Canelas*, Catarina Gamboa*, Claire Le Goues (* equal contribution)
Large Language Models for Code (LLM4Code) Workshop. 2025. 🏆 Best Paper Award.