/rust-toy-lang-book

Rust开发一个玩具语言

Primary LanguageRust

用 Rust 开发编程语言

引个流先:

序言

写这个电子书是因为最近在做 KusionStack、KCLVM 项目中编译器研发的相关工作,发现虽然编译器的基本原理不变,但是将学校中学习的内容应用在工作中开发编译器还远远不够,想要创造一种新的编程语言不仅仅需要了解编译原理,还需要了解与编译器相关的整个周边生态,因此,在柴大的建议下打算开一个坑,通过一个玩具语言 Tiny-Lang,将整个语言编译生态的开发过程串联起来,使用Rust语言开发一个完成的编译工具集。

KCLVM 是我们在 Kusion 这个项目中使用 Rust 开发的语言编译器,书中的部分内容在这个项目中也有对应的应用。对云原生生态、技术感兴趣的同学可以了解下 👉 KusionStack 这个项目;对 Rust、编程语言、编译器感兴趣的同学可以看下 👉 KCLVM

最后,这些文章中的内容大部分是我在日常开发过程中进行的总结和凝练,本人水平有限,所以可能会有一些不准确甚至错误的地方,也欢迎大家提 PR/Issue/Discussion,或者下方扫码加群讨论。如果对 Rust 源码有自己分析和见解,同样欢迎提 PR 投稿。


电子书

目标:使用 Rust 为一个玩具语言 Toy-Lang 开发一个完整的编译工具生态。

cover

目录

用 Rust 开发编程语言

前言


Star History Chart