基于类型推导与数据流分析的Python程序编译方法及系统

    公开(公告)号:CN116594622A

    公开(公告)日:2023-08-15

    申请号:CN202310347171.0

    申请日:2023-04-03

    Applicant: 南京大学

    Abstract: 本发明公开基于类型推导与数据流分析的Python程序编译方法及系统,属于计算机技术领域。该方法包括:对Python字节码进行控制流和数据流分析,并将所述Python字节码转换为基本块;遍历获得的所述基本块,将Python字节码转换为CPY中间代码,并使用内置方法替换Python API调用;使用类型推导算法推导出CPY中间代码中变量的类型信息,并根据类型推导结果选择静态或动态编译模式,将CPY中间代码转换为不同模式的LLVM中间代码;根据编译模式,调用LLVM链接器来链接已编译的模块或CPython库文件,以生成可执行文件。本发明用于静态编译动态类型语言程序,解决了动态类型语言程序运行效率低的问题,同时本发明采用了静态编译模式和动态编译模式,有效提升了程序的兼容性。

Patent Agency Ranking