About
I am an Invited Assistant at the Department of Computer Science of the University of Porto, and Collaborator at LIACC working with Mário Florido and Pedro Vasconcelos. Before this, I obtained a MSc degree in Computer Science with a focus on Reliable Computation at the University of Porto.
My research interests are in the design and implementation of programming languages, focusing on type systems and semantics. I study how to make type systems more precise, in the sense that they better describe a program’s behaviour.
News
- Sep 2024
-
Attending the ISR term-rewriting school in Obergurgl, ICFP in Milano, and the Proof Society school in Birmingham
- Jun 2024
-
Attending OPLSS 2024 in Boston
- Dec 2023
-
Defended my MSc dissertation
Papers
- 2024
-
Haskelite: A Tracing Interpreter Based on a Pattern-Matching Calculus
Pedro Vasconcelos, Rodrigo Marques
Proceedings of the 17th ACM SIGPLAN International Haskell Symposium
Abstract doi - 2023
-
A Lazy Abstract Machine Based on a Pattern-Matching Calculus
Pedro Vasconcelos, Rodrigo Marques
Presented at: Symposium on Implementation and Application of Functional Languages
Abstract - 2022
-
Towards Algebraic Subtyping for Extensible Records
Rodrigo Marques, Mário Florido, Pedro Vasconcelos
Presented at: ML Workshop at the International Conference on Functional Programming
Abstract arXiv
Master’s Dissertation
- 2023
-
Subtyping: Study and Implementation
University of Porto, Portugal. Advised by Mário Florido and Pedro Vasconcelos
Abstract link
Teaching
Lab instructor
L.EIC024: Functional and Logic Programming
- Fall 2024
- Final year class about declarative programming languages
CC1005: Functional Programming
- Spring 2024
- Introduction to functional programming and formal reasoning with Haskell
L.EIC009: Programming
- Spring 2024
- Introduction to imperative and object-oriented programming with C++
CC1008: Introduction to Programing
- Fall 2023
- Introductory programming course with Python
L.EIC003: Programming Fundamentals
- Fall 2023
- Introductory programming course with Python