资源算法write-a-C-interpreter

write-a-C-interpreter

2020-01-02 | |  37 |   0 |   0

How to Run the Code

File xc.c is the original one and xc-tutor.c is the one that I make for the tutorial step by step.

gcc -o xc xc.c
./xc hello.c
./xc -s hello.c

./xc xc.c hello.c
./xc xc.c xc.c hello.c

About

This project is inspired by c4 and is largely based on it.

However, I rewrote them all to make it more understandable and help myself to understand it.

Despite the complexity we saw in books about compiler design, writing one is not that hard. You don't need that much theory though they will help for better understanding the logic behind the code.

Also I write a series of article about how this compiler is built under directory tutorial/en.

There is also a chinese version in my blog.

  1. 手把手教你构建 C 语言编译器(0)——前言

  2. 手把手教你构建 C 语言编译器(1)——设计

  3. 手把手教你构建 C 语言编译器(2)——虚拟机

  4. 手把手教你构建 C 语言编译器(3)——词法分析器

  5. 手把手教你构建 C 语言编译器(4)——递归下降

  6. 手把手教你构建 C 语言编译器(5)——变量定义

  7. 手把手教你构建 C 语言编译器(6)——函数定义

  8. 手把手教你构建 C 语言编译器(7)——语句

  9. 手把手教你构建 C 语言编译器(8)——表达式

  10. 手把手教你构建 C 语言编译器(9)——总结

Resources

Further Reading:

Forks:

Licence

The original code is licenced with GPL2, so this code will use the same licence.


上一篇:interpretable-ml-book

下一篇:JS-Interpreter

用户评价
全部评价

热门资源

  • seetafaceJNI

    项目介绍 基于中科院seetaface2进行封装的JAVA...

  • spark-corenlp

    This package wraps Stanford CoreNLP annotators ...

  • Keras-ResNeXt

    Keras ResNeXt Implementation of ResNeXt models...

  • capsnet-with-caps...

    CapsNet with capsule-wise convolution Project ...

  • inferno-boilerplate

    This is a very basic boilerplate example for pe...