微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python – 针对.pyc文件的编译器?

出于好奇,是否有许多针对.pyc文件的编译器?

经过一段谷歌搜索后,我能找到的唯一两个是:

> unholy:why_的Ruby-to-pyc编译器
> Python:PSF的Python到pyc编译器

那么……还有吗?

(作为旁注,我考虑过这个因为我想编写一个Scheme-to-pyc编译器)

(作为第二个侧面说明,我并没有任何幻想,一个Scheme-to-pyc编译器会很有用,但它会给我一个令人难以置信的借口来学习Scheme和Python的一些内部结构)

解决方法

几年前我编写了一个编译器,它接受了一种名为“Noodle”的类似lisp的语言并生成了Python字节码.虽然它从未变得特别有用,但它对于更好地理解Common Lisp(我复制了它的几个特性)以及更好地理解Python是一个非常好的学习经验.

我可以想到两个特殊情况,直接定位Python字节码可能有用,而不是生成Python并将其传递给Python编译器:

>完全闭包:在3.0之前的Python中(在非本地关键字之前),你不能修改封闭变量的值而不诉诸字节码hackery.您可以改为改变值,因此通常的做法是使用闭包引用列表,例如,从内部作用域更改其中的第一个元素.这真的很烦人.但是,限制是语法的一部分,而不是Python VM.我的语言有明确的变量声明,因此它成功提供了具有可修改的闭合值的“正常”闭包.
>获取traceback对象而不引用任何内置函数.真正的利基案例,当然,但我用它打破了早期版本的“safelite”监狱.有关它,请参阅my posting.

所以,是的,它可能比它的价值更多的工作,但我很喜欢它,你也可能.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐