使用 Scala 中的许多较新的语言功能,可以实现可组合组件系统并使用 Martin Odersky 在论文中描述的所谓的 Cake 模式创建组件可扩展的组件抽象 http://lampwww.epfl.ch/~odersky/papers/ScalableComponent.pdf并且也在一个最近的谈话 http://channel9.msdn.com/Events/Lang-NEXT/Lang-NEXT-2012/Reflection-and-Compilers.
Cake 模式中使用的几个 Scala 功能具有相应的 Haskell 功能。例如,Scala 隐式对应于 Haskell 类型类,而 Scala 的抽象类型成员似乎对应于 Haskell 的关联类型。这让我想知道蛋糕模式是否可以在 Haskell 中实现以及它会是什么样子。
蛋糕模式可以在 Haskell 中实现吗?在这样的实现中,Scala 功能对应于哪些 Haskell 功能?如果 Cake 模式无法在 Haskell 中实现,那么缺少哪些语言特性才能实现这一点?
奥列格在这里提供了非常详细的答案:http://okmij.org/ftp/Haskell/ScalaCake.hs http://okmij.org/ftp/Haskell/ScalaCake.hs
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)