Master Thesis
Summary
Fine-grained aspects of automatic refactoring in C2Eiffel
Master Thesis, April 2011 — September 2011
Author: Adrian Friedli
Supervisor: Marco Trudel
Project report
Description
The C2Eiffel framework translates C source code to Eiffel source code.
It aims to generate code that looks natural to a programmer such that it is
readable and maintainable. While this is already the case for most parts of
common C programs, there are areas for improvements.
External C functions are currently wrapped in the generated Eiffel code
since the used libraries are not translated. In this thesis I will replace some
standard and often used C functions by the corresponding Eiffel equivalents. In
the attempt to replace standard C string functions I will also try to replace the
current translation of C strings to integer arrays with native Eiffel strings.
I will also remove jump statements like break that are often used in C programs
but are not available in Eiffel. This will increase the readability of the
code compared to the current implementation that emulates the jump mechanism
in Eiffel and produces hard to read code.