Rascal is a meta programming language focused on the implementation of domain-specific languages and on the rapid construction of tools for software analysis and software transformation. In this paper we focus on the use of Rascal for software analysis. We illustrate a range of scenarios for building new software analysis tools through a number of examples, including one showing integration with an existing Maude-based analysis. We then focus on ongoing work on alias analysis and type inference for PHP, showing how Rascal is being used, and sketching a hypothetical solution in Maude. We conclude with a high-level discussion on the commonalities and differences between Rascal and Maude when applied to program analysis.

, ,
, ,
F. Durán
Lecture Notes in Computer Science
Domain Specific Languages: A Big Future for Small Programs
International Workshop on Rewriting Logic and its Applications
Software Analysis and Transformation

Hills, M.A, Klint, P, & Vinju, J.J. (2012). Program Analysis Scenarios in Rascal. In F Durán (Ed.), Lecture Notes in Computer Science. Springer.