Brainfuck 到 Python AST 编译和集成
项目描述
brainfuck.py - 在Python代码中无缝使用Brainfuck
brainfuck.py 将Brainfuck程序编译成Python AST,使得工业级Brainfuck程序可以与Python代码集成。示例
>>> import brainfuck
>>> hello = brainfuck.to_function("""
++++++++[>++++[>++>+++>+++>+<<<<-]>+>+>->>+[<]<-]>>
.>---.+++++++..+++.>>.<-.<.+++.------.--------.>>+.>++.
""")
>>> hello()
'Hello World!\n'
为了方便,还提供了一个导入钩子
>>> brainfuck.install_import_hook()
>>> # Note: programs is a python package (with __init__.py
# and a brainfuck file named rot13.bf)
>>> from programs import rot13
>>> rot13.rot13("brainfuck")
'oenvashpx'
>>> # The module can also be called directly
>>> rot13("foobar")
'sbbone'
安装
$ pip install python-brainfuck
或者
$ git clone git@github.com:koirikivi/brainfuck.git
$ cd brainfuck
$ python setup.py install
或者只需将 brainfuck.py
复制到您的PYTHONPATH中的某个位置。
平台支持
支持并测试了Python 2、3和PyPy的最新版本。其他支持ast
模块的Python版本也应正常工作,但未经测试。
单元测试
使用 $ python test_brainfuck.py
运行测试
待办事项
- 对由brainfuck生成的AST的优化(这是一个大问题!)
- 更多测试
- 使用tox运行测试
- Python AST 到 brainfuck 编译(可能需要一些时间)
许可证
MIT(程序目录中的程序可能具有不同的许可证)
项目详情
关闭
python-brainfuck-0.9.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a39d7c48765289a71f4d1a2a773194bf766f3c0287db98650e8d8510f3c2332b |
|
MD5 | 949b08fc8a368076fcb0b40566a11300 |
|
BLAKE2b-256 | f71bfbe21b1760549b673815233729685638b16f6b967c6edbf29a1c7f168158 |
关闭
python_brainfuck-0.9.1-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 36696e6fa571fbd93d72c4106a5d93a5df36d6e47fba58804efd333af7882f50 |
|
MD5 | ca91fe3a64811179c07ba40d8f52c1c0 |
|
BLAKE2b-256 | 8c3d962805f509a2277e2a3a2221a8249b22fe90e8e6d5dce965a9be8cf541e2 |