编程中的monad是可组合的计算描述。 Monads是Haskell等函数式编程语言中的重要构造。
集合的类别既是笛卡尔单曲面的又是笛卡尔笛卡尔的。下面列出了见证这两个单曲面结构的规范同构的类型:类型x + y =任意x y ...
我有以下代码,新类型State sa = State {runState :: s->(s,a)} evalState :: State sa-> s-> evalState sa s = snd $ runState sa s instance Functor(State s ),其中...
我是Haskell的新手。在Monad文档中,有一个使用void函数的示例:>>> void(Left 8675309)Left 8675309 >>> void(Right 8675309)Right()我很艰难...
流畅地类似于Stream的多个方法,而没有Optional类型的冗长性
[在Spring应用程序中,我倾向于将请求主体放在控制器方法中,并希望通过多个方法调用(沿途返回不同的类型)来流利地传递它,例如在...中]
TypeScript具有相同接口的不同类实现。正在检查其实例的字段
尝试在我的应用程序中为某些业务逻辑实现2个类,这是一些伪代码(我使用对象和字符串类型,但主要思想是为每种逻辑指定每种类型)……”]
在ghci中:λ>:t(纯1)(纯1)::(适用f,Num a)=> faλ> show(纯1) :1:1:(Show(f0)没有实例a0))是由于使用了'show'...
使用Async [F]]将Future [A]转换为F [A
我正在与Slick and Cats合作。 database.run返回一个Future,但是我需要我的类的方法(F [_]:异步上的泛型)来返回monadF。我可以使它像这样运行val future = database.run(...
我正试图绕过Haskell中列出的单子。给定指定布尔变量的字符串列表,我试图生成所有可能命题的列表。例如调用:...
我有一个函数,需要将两个对象的结果相结合。如果“ handlingResult”是“ Right”,我需要“ request”的右侧,并且如果“ handlingResult”是...,这是给定的事实...
示例使用案例:def div2(i:Int):Validation [String,Int] = if(i%2 == 0)Validation.success(i / 2)else Validation.failure(“ odd”)def div4 (i:Int)=对于{a
[我一直在使用Scala并更深入地了解函数式编程,所以我选择了Hashamell中的Graham Hutton的编程(喜欢它:)。在有关Monads的章节中,我对...有了初步了解。
我有以下代码:输入Mapper akv = a-> [(k,v)]输入Reducer kv = k-> [v]-> [v] mapReduce :: Ord k => Mapper akv-> Reducer kv -> [a]-> [(k,[v])] mapReduce m ...
说我想对列表[1,2,3]中的所有元素应用一个简单函数(\ x-> x + 1)。我映射(\ x-> x + 1)[1,2,3]并获得了预期的[2,3,4]。返回类型为Num a => [a]。现在是什么...
使用返回Monad类型的输入函数调用Map.mapWithKey
我有一个函数类型Reducer kv = k-> [v]-> [v]如果我有一个来自Ord k类型的变量r => Reducer kv和一个来自Ord k类型的变量输入=>映射k [v]我可以写...
这里是ListT的Monad实例(从montrivo复制),案例类ListT [M [_],A](值:M [List [A]])隐式def listTMonad [M [_]:Monad] =新的Monad [ListT [M,*]] {覆盖def flatMap [A ,B](fa:...
我有2个类型定义type Mapper akv = a-> [(k,v)] type MapperM mavv = a-> m [[k,v)]我想编写一个将类型值转换为(Ord k,Monad m)=> MapperM ma ...
我正在尝试创建自己的数据类型,该数据类型将成为Monad类的一部分,但是newtype Container a =派生Monad的容器给我这个错误:*无法创建`Monad的派生实例...] >
我有一个monad转换器:newtype ChoiceT fma = ChoiceT(forall x。fx-> mx)-> ma现在,我认为这是Monads类别的仿函数,我想为此绘制一个地图。 。
Haskell`do`表示法如何在未由返回值定义时知道采用哪个值?
我有这个单子物体。数据解析器a =解析器(String-> Maybe(a,String))实例Functor解析器,其中-fmap ::(a-> b)->解析器a->解析器b fmap f(解析器pa)= ...] >