- 博客(8)
- 收藏
- 关注
原创 对Python控制流图生成器的一些探索
为什么需要控制流图控制流图清晰地表示了程序执行时的可能路径.它有很多应用, 比如数据流分析. 数据流分析的第一步是建立一个与之对应的控制流图.本文基于Python讲述如何生成对应的控制流图....
2022-03-13 18:26:39 1955 2
原创 Principles of Program Analysis -- 可用表达式分析
目录可用表达式分析 available expressions analysis例子静态分析框架什么是计算副作用分析形式化求值结论课后作业编程作业本文将通过一个简单的例子来体现静态分析的应用.可用表达式分析 available expressions analysis可用表达式分析指的是在没一个程序点,哪个表达式在所有到达此处的路径上已经被计算过了且没有修改. 如果被计算过了,那么我们可以复用原值. 英文说明在此处.例子以上程序,的值在程序点.
2021-12-15 07:47:21 927
原创 Principles of Program Analysis-背景设置
编译器通常使用静态分析来进行程序优化, 也可以帮助IDE进行智能提示. 如下便是一个例子:#include <stdio.h>int main(){ printf("Hello World"); return 0; //IDE会提示不可达 printf("Unreachable code");}静态分析的书真心不多(可能太小众了),这本书算一本.虽然比较老(20年前的书了),但是里面的思想现在还用得到.现在以及近期的博客都会介绍
2021-12-11 04:26:35 458
原创 Haskell使用Z3 Theorem Prover
背景Haskell是一款函数式编程语言, Z3官方并没有提供Haskell绑定.如果利用第三方库https://hackage.haskell.org/package/z3, 其代码晦涩难懂且并没有文档支持.方法Source language -> Z3 AST将Z3AST放入Z3后端进行求值...
2021-12-05 19:49:44 192
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人