Pattern Analysis of TXL Programs
Md Ashiqur Rahman, James R. Cordy · 2016
Modern programming languages evolve, and need to be updated regularly by adding new features that fill new or unexpected programming needs. Existing approaches to determine new language features are completely manual and are based on language developers' experience, source code analysis, feature requests, on-line discussions and programmer interviews. Although these are acceptable practises, they are subjective, time-consuming, and don't always identify real needs. No research, to our knowledge, has attempted to make the task of language feature identification easier. In this paper, we propose a system-atic approach for identifying the need for new language features with the help of pattern and clone detection tools that work on source code. Our approach semi-automates the task of language feature identification, works quickly, reduces the effort involved, and avoids subjectivity by supporting new feature proposals with evidence. We demonstrate our idea by analyzing a large set of projects written in the TXL language. After detecting and analyzing code patterns, we propose eleven new features that can help improve the TXL language to support ways that it is really used.