ACER: An AST-based Call Graph Generator Framework
Andrew Chen, Yanfu Yan, Denys Poshyvanyk

TL;DR
ACER is a flexible, AST-based call graph generator framework that uses tree-sitter, enabling rapid and simple call graph creation across multiple languages, demonstrated through Java implementations.
Contribution
Introduces ACER, a novel AST-based framework for call graph generation that is adaptable to any language via tree-sitter, with practical Java implementations.
Findings
ACER outperforms existing Java call graph generators in speed and simplicity.
Framework demonstrates effective cross-language applicability.
Java generators created with ACER show competitive accuracy.
Abstract
We introduce ACER, an AST-based call graph generator framework. ACER leverages tree-sitter to interface with any language. We opted to focus on generators that operate on abstract syntax trees (ASTs) due to their speed and simplicitly in certain scenarios; however, a fully quantified intermediate representation usually provides far better information at the cost of requiring compilation. To evaluate our framework, we created two context-insensitive Java generators and compared them to existing open-source Java generators.
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.
Code & Models
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsNatural Language Processing Techniques · Advanced Software Engineering Methodologies · Software Engineering Research
