# BasicCompiler **Repository Path**: egu0/basic-compiler ## Basic Information - **Project Name**: BasicCompiler - **Description**: 深入编译器之解析表达式 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-05-09 - **Last Updated**: 2024-09-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 深入编译器之解析表达式 ## 一、普拉特解析器 代码目录:`src/main/java/me/` 可以使用的运算符号:`+ - * / ^ ( )` 了解普拉特解析器:[博客](https://zhuanlan.zhihu.com/p/471075848) ## 二、递归下降解析方法 代码目录:`src/main/java/ci240913` 语法规则: ```text expression → equality ; equality → comparison ( ( "!=" | "==" ) comparison )* ; comparison → term ( ( ">" | ">=" | "<" | "<=" ) term )* ; term → factor ( ( "-" | "+" ) factor )* ; factor → unary ( ( "/" | "*" ) unary )* ; unary → ( "!" | "-" ) unary | primary ; primary → NUMBER | STRING | "true" | "false" | "nil" | "(" expression ")" ; ``` 出处:[链接](https://craftinginterpreters.com/parsing-expressions.html#recursive-descent-parsing)