An open API service indexing awesome lists of open source software.

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 实现

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)