正在加载图片...
13.2函数式语言的编译简介 13.2.1几个受启发的例子 例4 letrec f=入yz.ifz=0then1else1y; X==5 in f1 (x+1) 由于入yz.ifz=0then1else1y是函数表达式,需 把它的闭包进一步做成FUNVAL对象 -FUNVAL对象和一般闭包的区别仅在于前者还包 含存放变元指针的存储空间 为保证1和x+1仅在需要时计算,将它们以闭包 (包含一个指令序列和一个约束向量)的形式传递13.2函数式语言的编译简介 13.2.1 几个受启发的例子 例4 letrec f == y z. if z = 0 then 1 else 1/y; x == 5 in f 1 (x + 1) – 由于y z. if z = 0 then 1 else 1/y是函数表达式,需 把它的闭包进一步做成FUNVAL对象 – FUNVAL对象和一般闭包的区别仅在于前者还包 含存放变元指针的存储空间 – 为保证1和x + 1仅在需要时计算,将它们以闭包 (包含一个指令序列和一个约束向量)的形式传递
<<向上翻页向下翻页>>
©2008-现在 cucdc.com 高等教育资讯网 版权所有