V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
edenwang233
V2EX  ›  分享创造

开源 编译原理 pl/0 编译器 (rust 实现)

  •  
  •   edenwang233 ·
    DrEden33773 · 339 天前 · 1225 次点击
    这是一个创建于 339 天前的主题,其中的信息可能已经有所发展或是发生改变。

    开源一个本人用 rust 实现的 pl/0 编译器 (编译原理课设)

    GitHub Repository: GitHub - DrEden33773/pl_0: a simple pl/0 compiler implementation in rust.

    大概是第一批拿 rust 做编译原理课设的, 也算是小马过河

    编译器的大概架构是 词法分析器-[Tokens]-语法分析器-[AST]-语义分析+代码生成器-[PCode 三地址元组]-虚拟机/解释器 , 相比目前大部分的编译原理课设, 多了 AST 这个中介, 把语法分析和语义分析拆开, 让每个部分的实现都变得更加清晰简洁

    另外, 本人实现的这个编译器, 具有相当完善的 错误同步 机制, 避免了相当一部分课设 遇到一个编译错误, 报错后就停止执行 的问题

    默认实现中, 词法分析 / 语法分析 / 语义分析 / 代码生成 / 错误处理 / 解释执行 每个阶段都没有使用第三方自动化工具 (例如 pest / llvm) , 主打一个全过程参与

    如果你认为这个工程对你来说有参考价值的话, 可否动动手指, 给一颗 Star 呢? 不胜感激!

    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1005 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 21:24 · PVG 05:24 · LAX 13:24 · JFK 16:24
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.