JSCAN: Designing an Easy to use LLVM-Based Static Analysis Framework

2019 
Assisting code evolution (refactoring, adaptation, parallelisation, etc.) can be handy for improving code quality and execution speed. Generally, tools assisting developers are tailored to some language, making analyses approaches hard to be applied in practice when using a different language. In this paper, we propose a cross-language framework for implementing analyses on object-oriented code. By separating the logic for computing metrics, or detecting code smells, that lets us identify the need for improvements, from code exploration, we enable developers designing high-level recommendation tools that can be effectively applied on the most common object-oriented languages, such as e.g. Java and C++. Code exploration components will provide inspection and data commonly needed for representing the details of the code, such as control and data dependencies, or object and method lists. These will be language-specific and provided by the framework itself.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    14
    References
    1
    Citations
    NaN
    KQI
    []