Parsing Fortran-77 with proprietary extensions

09/05/2023
by   Younoussa Sow, et al.
0

Far from the latest innovations in software development, many organizations still rely on old code written in "obsolete" programming languages. Because this source code is old and proven it often contributes significantly to the continuing success of these organizations. Yet to keep the applications relevant and running in an evolving environment, they sometimes need to be updated or migrated to new languages or new platforms. One difficulty of working with these "veteran languages" is being able to parse the source code to build a representation of it. Parsing can also allow modern software development tools and IDEs to offer better support to these veteran languages. We initiated a project between our group and the Framatome company to help migrate old Fortran-77 with proprietary extensions (called Esope) into more modern Fortran. In this paper, we explain how we parsed the Esope language with a combination of island grammar and regular parser to build an abstract syntax tree of the code.

READ FULL TEXT
research
03/06/2020

Code Obfuscation for the C/C++ Language

Obfuscation is the action of making something unintelligible. In softwar...
research
09/17/2022

Practical LR Parser Generation

Parsing is a fundamental building block in modern compilers, and for ind...
research
10/16/2020

It was never about the language: paradigm impact on software design decisions

Programming languages development has intensified in recent years. New o...
research
08/04/2022

On-the-Fly Syntax Highlighting using Neural Networks

With the presence of online collaborative tools for software developers,...
research
12/04/2018

Using Binary File Format Description Languages for Documenting, Parsing, and Verifying Raw Data in TAIGA Experiment

The paper is devoted to the issues of raw binary data documenting, parsi...
research
05/11/2023

PExReport: Automatic Creation of Pruned Executable Cross-Project Failure Reports

Modern software development extensively depends on existing libraries wr...
research
03/27/2018

Towards Zero-Overhead Disambiguation of Deep Priority Conflicts

**Context** Context-free grammars are widely used for language prototypi...

Please sign up or login with your details

Forgot password? Click here to reset