Grammar engineering for multiple front‐ends for Python. (4th December 2018)
- Record Type:
- Journal Article
- Title:
- Grammar engineering for multiple front‐ends for Python. (4th December 2018)
- Main Title:
- Grammar engineering for multiple front‐ends for Python
- Authors:
- Malloy, Brian A.
Power, James F. - Abstract:
- Summary: In this paper, we describe our experience in grammar engineering to construct multiple parsers and front ends for the Python language. We present a metrics‐based study of the evolution of the Python grammars through the multiple versions of the language in an effort to distinguish and measure grammar evolution and to provide a basis of comparison with related research in grammar engineering. To conduct this research, we have built a toolkit, pygrat, which builds on tools developed in other research. We usepygrat to build a system that automates much of the process needed to translate the Python grammars from EBNF to a formalism acceptable to thebison parser generator. We exploit the suite of Python test cases, used by the Python developers, to validate our parser generation. Finally, we describe our use of themenhir parser generator to facilitate the parser and front‐end construction, eliminating some of the transformations and providing practical support for grammar modularisation.
- Is Part Of:
- Software, practice & experience. Volume 49:Number 3(2019)
- Journal:
- Software, practice & experience
- Issue:
- Volume 49:Number 3(2019)
- Issue Display:
- Volume 49, Issue 3 (2019)
- Year:
- 2019
- Volume:
- 49
- Issue:
- 3
- Issue Sort Value:
- 2019-0049-0003-0000
- Page Start:
- 380
- Page End:
- 400
- Publication Date:
- 2018-12-04
- Subjects:
- front end -- grammarware -- grammar engineering -- parser -- programming language evolution -- Python -- software engineering
Computer software -- Periodicals
Computer programming -- Periodicals
Computer programs -- Periodicals
005.3 - Journal URLs:
- http://onlinelibrary.wiley.com/ ↗
- DOI:
- 10.1002/spe.2665 ↗
- Languages:
- English
- ISSNs:
- 0038-0644
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - 8321.453000
British Library DSC - BLDSS-3PM
British Library STI - ELD Digital store - Ingest File:
- 9486.xml