gpt4 book ai didi

haskell - 请解释类型同义词

转载 作者:行者123 更新时间:2023-12-02 21:33:35 24 4
gpt4 key购买 nike

我正在学习,所以这可能是一个微不足道的问题。

在yesod脚手架工具生成的代码中我发现了这样的表达式:

type YesodPersistBackend PersistTest = SqlPersist

我的理解是,它创建了一个参数化类型YesodPersistBackend,它有一个类型参数PersistTest,这相当于类型SqlPersist

这是正确的吗?如果是这样,为什么要为没有参数的类型创建带有参数的类型同义词?

最佳答案

这不是普通类型声明。如果您看到完整的代码,它看起来像这样 -

instance YesodPersist PersistTest where
type YesodPersistBackend PersistTest = SqlPersist

这使用了名为 TypeFamilies 的 Haskell98 扩展。在此处阅读有关此特定语法的信息 - http://www.haskell.org/ghc/docs/latest/html/users_guide/type-families.html#assoc-type-instance

关于haskell - 请解释类型同义词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7243622/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com