Multi-Language Detection of Design Pattern Instances
Hugo Andrade, Jo\~ao Bispo, Filipe F. Correia

TL;DR
This paper introduces DP-LARA, a multi-language pattern detection tool that uses a common abstract syntax tree to identify design pattern instances across different programming languages, improving extensibility and consistency.
Contribution
The paper presents DP-LARA, a novel multi-language design pattern detection tool leveraging a virtual AST for language-agnostic analysis, enhancing extensibility and maintaining detection performance.
Findings
DP-LARA achieves consistent pattern detection across Java and C/C++.
Multi-language detection does not reduce detection accuracy.
Using a virtual AST simplifies extending the tool to new languages.
Abstract
Code comprehension is often supported by source code analysis tools which provide more abstract views over software systems, such as those detecting design patterns. These tools encompass analysis of source code and ensuing extraction of relevant information. However, the analysis of the source code is often specific to the target programming language. We propose DP-LARA, a multi-language pattern detection tool that uses the multi-language capability of the LARA framework to support finding pattern instances in a code base. LARA provides a virtual AST, which is common to multiple OOP programming languages, and DP-LARA then performs code analysis of detecting pattern instances on this abstract representation. We evaluate the detection performance and consistency of DP-LARA with a few software projects. Results show that a multi-language approach does not compromise detection performance,…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
