Pina expands use of computer tool to commonly used programming languages

Luis Pina

Assistant Professor Luís Pina received his first National Science Foundation grant, for research aimed at making computer software better, more reliable, and easier to use.

Pina expands current techniques that surveil the interaction of a computer program with the underlying operating system, expanding the use of this tool to far more programs used today to write code.

Multi-version eXecution (MVX) is a tool that allows a user to run two programs at the same time, as if it were only one program.

“This sounds a little bit wasteful; why would you even want to do that?” Pina said. “But the idea is that if the two programs are different versions of the same program, if one crashes the other continues to execute.”

MVX tools have always been useful with older programming languages, such as C and C++, which run directly on computer hardware.  But the tool didn’t work with managed code, which includes the most used programming languages, such as Java, Javascript, and Python. Managed code insulates the program from the machine it’s running on, creating a more secure environment.

Pina’s research expands the use of MVX to managed languages. This expansion will improve the reliability, security, and availability of such software, which includes critical infrastructure and modern internet browsers used by millions every day.

“Say you receive an alert saying you need to update your computer browser. Now, the update can be done on one version of the software, then seamlessly port it to the other,” Pina said. “The goal is that you as a user don’t even notice that your browser is updating; you’re always protected by using the most recent version with zero effort to zero interruption.”

The $540,658 NSF grant, “Multi-Version eXecution for Managed Languages,” runs through June 2026.

Pina, who joined UIC in 2019, works at the intersection of programming languages and software systems. He is actively seeking students to assist with his research.