如何判断严格性实际上是由GHC推断的?

年龄

我是haskell的初学者,最近我在haskell Wiki上阅读了有关严格性分析的信息GHC用户指南如下:

严格性分析器确定何时可以“严格地”对待函数中的参数和变量(即始终在函数中对其进行评估)。

通常,我还读到了何时可以推断出严格性。但是,作为一个初学者,我并不总是确定ghc是否实际上将我打算严格执行的代码视为严格。

目前,除了向程序提供大数据之外,我没有其他方法可以找到是否进行严格的分析。

有什么办法问ghc是否可以推断给定的代码严格?

埃里克

我所看到的唯一实际验证GHC推断出严格性的方法是读取称为Core的已编译程序的中间表示。

一些学习阅读核心输出的资源:

但是,另一种方法是简单地告诉GHC,例如,使用BangPatterns语言扩展或seq函数,应严格评估哪些表达式

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章