"tiny_c" is a student project used to learn and practice c++ programming and software engineering skills.
Now, this project is at the beginning stage, so it has no output yet.
The recent goal of this project is to develop a C interpreter. This interperter is planned to support the following C language features:
-
Basic features: include basic variable definition, expression evaluation, loops, if and switch.
-
break and continue statement.
-
Macro: simple macro support.
-
struct definiton.
-
function definition.
-
support for pointer and array.
-
(maybe not) typedef statement.
If the developer can complete the development of these functions, the next goal is developer a debugger based on the interpreter, which may act like a tiny gdb.
The longer term plan for this project, is a compiler based on LLvM, which the developer at present knows nothing at all. However, The developer will try his best to collect enough time and energy to learn more and overcome the challenges. Good luck to me!
The structure of this project in tree comes as follows:
.
├── README.md
├── build
├── compile_commands.json
├── doc
│ └── dev
├── include
├── src
│ ├── debugger
│ ├── interpreter
│ ├── lexical_analyzer
│ ├── parser
│ └── preprocessor
├── test
└── xmake.lua
11 directories, 3 files
Updated in 2024-03-11 Mon 00:15:40