3 个版本 (破坏性)
0.3.0 | 2019年11月3日 |
---|---|
0.2.0 | 2019年10月31日 |
0.1.0 | 2019年10月31日 |
#922 in 编程语言
每月下载 23 次
56KB
1.5K SLoC
rpiet
,用 Rust 编写的 piet 解释器 🖼
piet
是一种将图像文件作为可执行文件执行的 esoteric 编程语言。这是一个用 Rust 编写的 piet 解释器。
红色、黄色和蓝色的组合。1921,皮埃特·蒙德里安。
Piet 是一种编程语言,旨在将图像处理成类似艺术家 皮埃特·蒙德里安 的可执行文件。了解更多关于图像执行的信息,请访问 Piet 主页。
安装和使用
使用 cargo
(Rust 软件包管理器)安装 rpiet
。这需要安装最新的 Rust。
cargo install rpiet
然后运行 GIF 或 PNG 图像
rpiet sample_images/hello_world_globe.png
或者使用
rpiet --help
可以
- 指定代码大小(
-c
,--codel-size <codel_size>
) - 限制解释器在图像中执行的最大步数(
-
,--max-steps <max_steps>
) - 打印调试信息(
-
,--verbose
),允许用户看到解释器在图像中采取的路径
此软件包的状态
可以在其中运行 Piet 程序(我已经验证了来自 Piet 主页的几个程序),请报告您发现的任何错误——规范有些宽松:)
输入处理目前并不严格符合规范。我们读取输入行——规范在这里不是很详细,但我认为我们应该只读取必要的字节(InChar -> 一个字节,InNum -> 构成一个有效数字所需的所有字节,但不能更多)。
手动测试了二进制文件,但我们还没有自动化测试。此外,代码文档很少。
贡献
欢迎在 GitHub 上提交错误报告和拉取请求 https://github.com/tessi/rpiet。此项目旨在成为安全、友好的合作空间,贡献者应遵守 贡献者公约 行为准则。
许可证
该软件包以开源形式提供,遵循MIT许可证。
行为准则
所有在rpiet项目代码库、问题跟踪器、聊天室和邮件列表中互动的人预期遵守行为准则。
依赖项
~1.5MB
~18K SLoC