sách gpt4 ai đã đi

haskell - Haskell ListT、LogicT 和 ChoiceT 之间的区别

In lại 作者:行者123 更新时间:2023-12-02 17:50:36 28 4
mua khóa gpt4 Nike

这三个 monad 转换器有什么区别?

1 Câu trả lời

Đầu tiên,ListT 不是真正的 monad 转换器。它违反了某些底层单子(monad)的结合律。它也非常慢,就像一般列表的单子(monad)接口(interface)一样。它是在内部基于实际列表构建的。

LogicT 可能是类似列表的 monad 转换器的最佳选择。它不仅实现了适当的 monad 转换器,还实现了一些对于公平列表产品非常有用的组合器。

ChoiceT 是我自己的作品。它基本上只是 LogicT 的 CPSed 版本,并且受到 LogicTmonadLib TRONG ChoiceT 的启发。它非常快,通常优于(未转换的)列表,但类型可能会令人恐惧,并且您必须绑定(bind)结果类型,这有时可能会妨碍您。

结论:如果您认真的话,请使用 LogicT.

关于haskell - Haskell ListT、LogicT 和 ChoiceT 之间的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14125207/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com