免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2427 | 回复: 0

PyPy文档-3 [复制链接]

论坛徽章:
0
发表于 2009-08-11 17:34 |显示全部楼层
如何读PyPy源码
               
               
               
               
PyPy由较为独立的几个块组成,从下面选择最吸引你的部分:
--pypy/interpreter  这里是字节码解释器,包含:pyopcode.py 字节码调度器eval.py,pyframe.py 代码对象和框架function.py, argument.py 函数对象和参数传递baseobjspace.py 对象空间的接口定义module.py,mixedmodule.py  模块typedef.py  字节码解释器支持的核心类型的定义
--pypy/interpreter/astcompiler 这里是编译器,包含一个去除了bug, 可以被翻译的CPython编译器包的修正版。PyPy 0.80版以后,编译器和语法分析器就可以被翻译了,产生的二进制软件交互使用起来更好玩了。
--pypy/objspace/std 这里是标准对象空间。 主文件是objspace.py. 每种类型都对应一个xxxtype.py和xxxobject.py, 分别是该类型的定义和(默认的)执行时行为
--pypy/objspace 这里是一些其它对象空间:thunk对象空间, trace对象空间 和 flow对象空间(流对象空间)。其中,流对象空间能在字节码解释器运行时构建控制流图
--pypy/translator 这里是代码分析和生成工具。如果你从这里开始读源文件,就容易跟踪各个翻译阶段的相应代码段。
--pypy/annotation 这里有用于类型注解的数据模型,会被控制流图用到。控制流图漫步者在pypy/annotation/annrpython.py里。
--pypy/rpython 这里是RPython类型器的代码。这个类型器注解过的控制流图转变成C代码的样子,然后翻译就变得简单了。pypy/rpython/rtyper.py里的工具会控制这个转变过程pypy/rpython/lltypesystem/lltype.py里是会被用到的对象模型每个RPython类型对应一个rxxx.py, 给定它的低级函数
--pypy/rlib 这里是RPython的标准库,里面的东西会被rpython用到。
原文网址:
http://codespeak.net/pypy/dist/pypy/doc/getting-started-dev.html#start-reading-sources


本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u1/54441/showart_2024700.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP