haskell 相关问题

Haskell是一种函数式编程语言,具有强大的静态类型,惰性求值,广泛的并行性和并发支持以及独特的抽象功能。

在树转换中处理带星号和不带星号的节点

问题: 加星标的节点: 名称以“*”结尾的节点被视为“加星标”。 要求: 任何不是另一个加星号节点的直接子节点的加星号节点都应该是...

回答 1 投票 0

如何创建不返回类型的类型构造函数?

我正在尝试创建一个类型构造函数,其签名不以 * (Type) 结尾(例如 k -> k) 这是一个小例子: {-# 语言类型系列 #-} 类型族 TF (a :: k) :: k -- 尝试 1 ...

回答 1 投票 0

Opaleye 中链接表的数组聚合

我正在尝试构造一个与以下 SQL 匹配的 Opaleye 查询: 选择 * , (选择 array_agg(tags.tagname) 来自文章_标签 Tags.id 上的内连接标签 =articles_tags.tag_f...

回答 2 投票 0

为什么 ArrowApply 是证明与 Monad 等价性时唯一的选择?

在这个问题下,leftaunabout 留下了非常清晰的解释,为什么我们实际上认为 ArrowApply 和 Monad 是等价的。 这个想法是在往返过程中不丢失任何信息: arrAsFunc...

回答 1 投票 0

为什么静态箭头泛化箭头?

众所周知,Applicative 概括了箭头。在萨姆·林德利 (Sam Lindley)、菲利普·瓦德勒 (Philip Wadler) 和杰里米·雅洛普 (Jeremy Yallop) 的《成语是健忘的,箭头是细致的,单子是杂乱的纸》中,据说...

回答 1 投票 0

我们不应该使用单子绑定来使用循环写下 mfix 的情况

我一直在尝试使用Control.Arrow.loop 写下mfix。我提出了不同的定义,并想看看哪一个是 mfix 的实际工作方式。 所以,我认为的解决方案是......

回答 1 投票 0

是否可以将 Arrows 写为 join,而不是 ArrowApply?

我尝试写下 joinArr :: ??? a => a r (a r b) -> a r b。 我想出了一个使用应用程序的解决方案,因此将范围缩小到 ArrowApply 的范围: joinArr :: ArrowApply a => a r (a r...

回答 1 投票 0

如何写出箭头的顺序?

sequenceA 是一个众所周知的函数: 序列A :: (可遍历 t, 应用 f) => t (f a) -> f (t a) 我想知道我们是否可以为《箭》写下类似的东西。不幸的是,我没有

回答 1 投票 0

Haskell:树上的箭头、XML 和 Hxt:将文本叶子转换为子树

背景 Freeplane 应用程序似乎已经消亡了数十年。我正在从中提取我的数据。 Freeplane 将数据存储为 XML。我采取的首要步骤之一就是统一该格式。

回答 1 投票 0

双函子与箭头方法

Bifunctor 和 Arrow 方法之间有一些重叠: 类双函子 p 其中 首先 :: (a -> a') -> p a b -> p a' b 第二个 :: (b -> b') -> p a b -> p a b' 双图 ::...

回答 2 投票 0

f, g, h :: Kleisli ((->) e) a b <=> f >>> (g &&& h) = (f >>> g) &&& (f >>> h)?

编辑:如果存在这样的函数f:p = arr f,我们将称箭头p为纯箭头。 我正在尝试更好地掌握 Haskell 中的 Arrows,并且我想弄清楚何时 f >>> (g &&&am...

回答 1 投票 0

Arrow 库中 `first` 的实现

我不明白图书馆中first的实现。 首先似乎是用 *** 递归定义的——我不知道递归何时结束!? 首先 :: a b c -> a (b,d) (c,d) 首先...

回答 1 投票 0

如何处理在组合下发生变化的类型?

我最近读了一篇非常有趣的论文《单调性类型》,其中描述了一种新的 HM 语言,可以跟踪操作之间的单调性,这样程序员就不必做...

回答 1 投票 0

如何定义多变量箭头?

这个问题与之前的问题有些相关: 我正在尝试定义几个半依赖类型,它们允许您跟踪函数的“单调性”(如 Monoton... 中所述)

回答 1 投票 0

“广义箭头”和过程符号?

在学习 Control.Arrow 和 Haskell 的内置过程表示法时,我想到这种语言可能会被证明作为一般幺半群类别的 eDSL 非常有用(使用 *** 表示张量和...

回答 1 投票 0

Haskell HXT 拆分 XML 数据

我对箭头还很陌生,所以对我要轻松一些...... 我正在尝试计算 XML 文件中特定节点的数量。 XML 文件的布局使得在根目录下我们有一个场景列表,在...

回答 1 投票 0

为什么输入中的箭头在 proc 块中的箭头命令中不可用?

在学习箭头的过程中,我偶然发现了一个随着时间的推移并没有变得更清晰的点: 从 John Hughes 的论文“Generalizing Monads To Arrows”中,我注意到下面的(案例 I)不是 po...

回答 1 投票 0

fix 与 ArrowLoop

Control.Arrow 的循环说明: 循环运算符表示将输出值作为输入反馈的计算,尽管计算仅发生一次。它是rec va的基础...

回答 1 投票 0

镜头的水平构图[重复]

箭头有两种构图,垂直: (.) :: 箭头 cat => cat b c -> cat a b -> cat a c 和水平: (***) :: 箭头猫 => 猫 a b -> 猫 a' b' -> 猫 (a,a') (b,b'...

回答 1 投票 0

为什么数据库查询是使用箭头的好地方?

我正在读这篇文章,其中说: 嗯,重点是箭头表示法禁止一些表示法允许的计算。特别是所有“箭头动作”必须“静态地”已知“。 还有它

回答 2 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.