Files
Buysse_09501600_2023.pdf
Open access - Adobe PDF
- 3.49 MB
Details
- Supervisors
- Faculty
- Degree label
- Abstract
- This thesis concerns the calls to the runtime used by the company Raincode in their compilers. Their compiler, written in YAFL, contains data structures called FunctionCalls. These are used by the compiler developers, to access C# libraries at runtime of the compiled code. The structure provides all the information related to the called function. Human errors can be introduced during compiler development, leading to crash at compilation time of the compiler, or worse: crashes of client code that was compiled with Raincode’s compiler. The thesis work generates the FunctionCall usage and adapts the YAFL implementation to call this generated code. The generation represents the core part of this work, and the refactoring redirects the calls to the newly created FunctionCallBuilder, which defines the produced FunctionCall structure. The general solution can produce a basic structure, based on the signature of the library function required. More iterations on the solution allow to include variations, that we call patterns. Each pattern requires further information conveyed to the generation program for an accurate generation. The work is open, as many legacy FunctionCalls still reside in the YAFL code. This thesis is the starting point in order to provide an easier development and maintenance of the FunctionCalls.