https://github.com/yianandcode/pineapple-php
pineapple lang 的 PHP 实现
https://github.com/yianandcode/pineapple-php
pineapple
Last synced: 12 months ago
JSON representation
pineapple lang 的 PHP 实现
- Host: GitHub
- URL: https://github.com/yianandcode/pineapple-php
- Owner: YianAndCode
- License: mit
- Created: 2021-02-18T16:32:07.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2021-11-04T16:19:03.000Z (over 4 years ago)
- Last Synced: 2025-03-25T02:43:47.706Z (about 1 year ago)
- Topics: pineapple
- Language: PHP
- Homepage:
- Size: 25.4 KB
- Stars: 24
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# PINEAPPLE
pineapple lang 是一个简单的编程语言 demo。它包含了个手写的递归下降解析器和一个简单的解释器。虽然该语言甚至不是图灵完备的。但 pineapple 的主要目的是让编译原理初学者有一个预热,简单了解一个编程语言是怎么构建的。
**本项目是 pineapple lang 的 PHP 实现**
## 运行
```bash
composer dump-autoload
./bin/pineapple-php ./examples/hello-world.pineapple
```
## 小教程
### GitHub
- [write-a-programming-language-in-450-lines](https://github.com/karminski/write-a-programming-language-in-450-lines)
### 知乎专栏
- [牙医教你 450 行代码自制编程语言 - 1, 从 EBNF 开始](https://zhuanlan.zhihu.com/p/341405385)
- [牙医教你 450 行代码自制编程语言 - 2, 两个魔法就可以实现永动机](https://zhuanlan.zhihu.com/p/341532964)
- [牙医教你 450 行代码自制编程语言 - 3, 实现 Lexer 上篇](https://zhuanlan.zhihu.com/p/341840788)
- [牙医教你 450 行代码自制编程语言 - 4, 实现 Lexer 下篇](https://zhuanlan.zhihu.com/p/342036670)
- [牙医教你 450 行代码自制编程语言 - 5, 递归下降语法解析器](https://zhuanlan.zhihu.com/p/342333858)
- [牙医教你 450 行代码自制编程语言 - 6, 后端](https://zhuanlan.zhihu.com/p/342457860)
- [牙医教你 450 行代码自制编程语言 - 7, 后续该如何学习编译原理](https://zhuanlan.zhihu.com/p/342982862)
## 贡献者
- [karminski-牙医](https://github.com/karminski)
- [Y!an](https://github.com/YianAndCode)
## 开源协议
- [MIT](LICENSE)