我正在浏览关于棱镜的“镜头”文档,我注意到 Control.Lens.Review 中有一行说明中缀审查运算符#'在将棱镜用作智能构造函数时通常使用。'。
这让我有点好奇,因为就我理解的智能构造函数(对参数值添加额外的限制)而言,带有 _Left 的示例,它是“Either”数据类型的构造函数之一,看起来不像是智能构造函数。所以我在谷歌上搜索了一下棱镜作为智能构造函数,但我并没有真正找到任何例子。
有没有人知道这句话的确切含义并举个例子?或者也许告诉我,我对智能构造函数的定义是不正确的,当然。