Towards Testing Polyglot Programs

by Philémon Houdaille
DiverSE Coffee
Rennes, France


Today, a plethora of programming languages exists, each better suited for a particular concern. For example, Python is suited for data analysis but not web development, whereas JavaScript is the inverse. As software complexity grows and needs to address multiple concerns, different programming languages are often used in combination, despite the burden of bridging them.

Polyglot programming emerged as a solution allowing the seamless mixing of multiple programming languages. GraalVM and PolyNote are examples of runtimes allowing polyglot programming. However, there is a striking lack of support for many development tooling for polyglot programs; in particular, the many techniques used to automate the generation of tests (or even write tests at all) remain unexplored in a polyglot setting.

This talk will thus aim to present the goal of the internship, centered around the topic of polyglot testing, by introducing the concepts present in polyglot programs, the state of the art of automated test generation as well as some preliminary findings.