Developing a Modular Compiler for a Subset of a C-like Language
This addresses compiler development for high-level languages, enabling modular modifications, but it is incremental as it builds on existing compiler design principles.
The paper tackled the challenge of constructing a compiler for a C-like language by developing a modular compiler that allows for easy modification and results in a minimal, memory-efficient design, demonstrating effectiveness on resource-constrained devices like a single-board computer.
The paper introduces the development of a modular compiler for a subset of a C-like language, which addresses the challenges in constructing a compiler for high-level languages. This modular approach will allow developers to modify a language by adding or removing subsets as required, resulting in a minimal and memory-efficient compiler. The development process is divided into small, incremental steps, where each step yields a fully functioning compiler for an expanding subset of the language. The paper outlines the iterative developmental phase of the compiler, emphasizing progressive enhancements in capabilities and functionality. Adherence to industry best practices of modular design, code reusability, and documentation has enabled the resulting compiler's functional efficiency, maintainability, and extensibility. The compiler proved to be effective not only in managing the language structure but also in developing optimized code, which demonstrates its practical usability. This was also further assessed using the compiler on a tiny memory-deficient single-board computer, again showing the compiler's efficiency and suitability for resource-constrained devices.