Strategies for testing and formalizing properties of modern programming languages - Feitosa, Samuel da Silva (2019)