English

The Design and Implementation of an Extensible System Meta-Programming Language

Programming Languages 2023-09-28 v1 Software Engineering

Abstract

System programming languages are typically compiled in a linear pipeline process, which is a completely opaque and isolated to end-users. This limits the possibilities of performing meta-programming in the same language and environment, and the extensibility of the compiler itself by end-users. We propose a novel redefinition of the compilation process in terms of interpreting the program definition as a script. This evaluation is performed in an environment where the full compilation pipeline is implemented and exposed to the user via a meta-object protocol, which forms the basis for a meta-circular definition and implementation of the programming language itself. We demonstrate the feasibility of this approach by bootstrapping a self-compiling implementation of Sysmel, a static and dynamic typed Smalltalk and C++ inspired programming language.

Keywords

Cite

@article{arxiv.2309.15416,
  title  = {The Design and Implementation of an Extensible System Meta-Programming Language},
  author = {Ronie Salgado},
  journal= {arXiv preprint arXiv:2309.15416},
  year   = {2023}
}
R2 v1 2026-06-28T12:33:24.768Z