其实不是本人第一次学习python,只是在抛开语法用法之后的学习本次尚属第一次,所以相较而言更慎重一点,大概的思路如下:
其中因为有编译原理的学习,3将简略带过,可能会单独做编译原理的学习系列,看心情;其次在GC上因为有go的runtime和Java的JVM的了解,也不做详细笔记,但会在G1的笔记中,看。。
python的最高结构分为三部分,python core,python runtime environment,Lib,带点Java味就是,PVM,pre,lib~~
我们从数据流向看待PVM
python code ----> Scanner(词法分析)-----> token
token ----------->parser(语法分析)----------->AST
AST -------------->compiler ------------------>byte code
code evaluator 执行 字节码,中间这些就是JVM做的事,严格来说,最后介个才是vm
首先是对象类型系统,以后再看,然后是内存分配和运行时状态,没什么说的,运行时状态似曾相识,计数器??以后再说,内存分配内部其实是c的malloc,这和大部分python libraries一致,应该反过来说,运行时状态就是一个巨大的有穷自动机~
哈哈哈,没啥