我们的任务提供了以下类型 newtype Trans state a = T {run :: state -> (a,state)}
type Stack a = Trans [Int] a 我想要的是写一个函数1. push把一个Integer放到堆栈上2. pop返回并移除最高的对象 我试图通过谷歌搜索来理解它们,我得到了概念,但我不能用给定的类型结构实现它。
我是Haskell的新手,但我明白Monad变形金刚是如何使用的。然而,我仍然很难抓住他们声称的优势,而不是传递参数来进行函数调用。2-我找不到任何关于如何在Haskell中编写大型模块化应用程序的文档,其中模块公开某种形式的API并隐藏它们的实现,以及(部分)向其他模块隐藏自己的状态和环境。有什么建议吗?(编辑: Real Haskel