A CHARACTERIZATION STUDY OF MATLAB AND CODING ANTI-PATTERNS. LANGUAGE CONSTRUCTS AND THEIR, IMPORTANCE IN MATLAB - Almeida, Diogo David Sousa (2023)
This thesis is an analysis of the MATLAB language. The analysis performs a characterization of the language and detects some specific coding anti-patterns. The work for this thesis builds on previous research on techniques for concern location in MATLAB code bases. It is based on a SQLite database that contains all the lexical tokens from a given repository of MATLAB systems. Previous research studied the use of this database for representing the MATLAB repository and supporting higher-level concepts, as well as its detection in specific MATLAB files. The viability of this approach was demonstrated in work prior to this thesis using SQL queries over the database, demonstrating that code blocks can be used to characterize the language and describe some coding anti-patterns. The present thesis extends previous work by extending the concept of code blocks. It incorporates that notion into the broader concept of language constructs. Support for language constructs in the SQLite platform are a contribution of this thesis. The results were derived from a repository of over 450 000 MATLAB files. Work on this repository also serves as a MATLAB characterization study.