Welcome to the upgraded MacSphere! We're putting the finishing touches on it; if you notice anything amiss, email macsphere@mcmaster.ca

Reverse Engineering of Scientific Computation FORTRAN Code

dc.contributor.advisorCarette, Jacques
dc.contributor.advisorWassyng, Alan
dc.contributor.authorDragon, Olivier Étienne
dc.contributor.departmentComputing and Softwareen_US
dc.date.accessioned2017-05-03T16:09:18Z
dc.date.available2017-05-03T16:09:18Z
dc.date.issued2006-07-25
dc.description.abstract<p> In this day and age, many companies struggle with the maintenance of legacy scientific software systems written in outdated programming languages. These languages use low-level control structures, algorithmic operations and cumbersome syntax that make the true meaning of an algorithm difficult to understand. To make matters worse, the process of reverse engineering the algorithm to specification often involves a considerable amount of manual work which is error-prone and time-consuming.</p> <p> This thesis explores a completely automated method of reverse engineering. We apply this method to FORTRAN77 linear algebra software. This software is transformed to an extension of FORTRAN77, which we call Fortran-M. This language allows for high-level mathematical constructs such as sums, products and vector and matrix operations. To serve as a proof-of-concept for this method, we have developed a tool which uses a combination of pattern matching on the source code's abstract syntax tree to recognise low-level control structures, and symbolic analysis to determine the meaning of loops. Once a pattern has been recognised, or a loop's invariant found, we apply transformations to the syntax tree, thus creating a Fortran-M equivalent.</p>en_US
dc.description.degreeMaster of Applied Science (MASc)en_US
dc.description.degreetypeThesisen_US
dc.identifier.urihttp://hdl.handle.net/11375/21347
dc.language.isoen_USen_US
dc.subjectreverse engineering, scientific computation, FORTRAN code, programming languages, algorithmen_US
dc.titleReverse Engineering of Scientific Computation FORTRAN Codeen_US
dc.typeThesisen_US

Files

Original bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Dragon_Olivier_E._2006Jul_Masters..pdf
Size:
2.81 MB
Format:
Adobe Portable Document Format

License bundle

Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
license.txt
Size:
1.68 KB
Format:
Item-specific license agreed upon to submission
Description: