Comparison of Leading Language Parsers – ANTLR, JavaCC, SableCC, Tree-sitter, Yacc, Bison
Abstrak
Software engineering applications in domains like embedded systems and health care have increased exponentially during the last few years. Developing, analyzing, and customization of languages is one of the core software engineering aspects. This usually involves lexical, syntactical, and semantic operations, technically termed parsing. For this, several parsers have been introduced in state-of-the-art. However, due to diverse features, selecting a parser for a particular operation during software engineering applications is always problematic. In this article, we identified six leading parsers (i.e., ANTLR, JavaCC, SableCC, Tree-sitter, Yacc, and Bison) from the state-of-the-art. Furthermore, we also identified significant parser features to perform meaningful comparative analysis. Results indicate that ANTLR and JavaCC provide enhanced parsing features, such as the parsing algorithm and the extended grammar notation. However, JavaCC is suitable for simple grammar definition, whereas ANTLR allows specifying complex grammar with multiple alternative paths. The findings of this article are highly beneficial for researchers and practitioners while selecting the right parser to perform specific software engineering tasks.
Penulis (4)
Afshan Latif
F. Azam
Muhammad Waseem Anwar
Amina Zafar
Akses Cepat
PDF tidak tersedia langsung
Cek di sumber asli →- Tahun Terbit
- 2023
- Bahasa
- en
- Total Sitasi
- 13×
- Sumber Database
- Semantic Scholar
- DOI
- 10.1109/icste61649.2023.00009
- Akses
- Open Access ✓