gpt4 book ai didi

haskell - 现实世界的 Haskell 编程

转载 作者:行者123 更新时间:2023-12-02 03:20:07 24 4
gpt4 key购买 nike

作为命令式开发人员已有多年,我从未有过学习函数式编程的冲动。

几个月前,我终于决定学习 Haskell。这是一种很酷的语言,但我对如何用这种语言编写事件驱动的真实应用程序感到困惑。你知道关于它的好的教程吗?

注意:当我说“真正的应用程序”时,我并不是在谈论现实世界中的生产就绪应用程序。我只是指一个小示例应用程序,只是为了掌握它。我认为像 Windows 计算器的简化版本这样的东西会很棒,然后也许会更复杂一些。

最佳答案

当您提到“现实世界”的示例时,您可能正在考虑本质上是顺序的或有状态的或执行大量 I/O 的问题,对吗?

那么,游戏怎么样?

或者,X Window Manager 怎么样? ,可扩展Emacs clone text editorIDE

然后,有一本书,标题中甚至已经包含了您的问题:Real World Haskell ,这也是 available for free !

您可能想查看的另一件事是 Functional Reactive Programming 。 (例如,它在 Frag 中使用。)FRP 的有趣之处在于它允许您从一个非常不同的角度来看待 GUI 编程问题。如果您阅读 RWH 书中的 GUI 章节,您会发现它讨论了如何像用 C 语言一样编写 GUI 应用程序,甚至更好。 FRP OTOH 允许您以一种完全不同的方式编写它,而在 C 中甚至不可能

很多时候(我并不是说你的问题就是这种情况,但这是一种反复出现的模式)当有人说“但是 Haskell 可以在现实世界中使用吗”时,他们是什么真正的意思是“我知道如何在 C 中做到这一点,而在 Haskell 中我不能以完全相同的方式做到这一点,因此在 Haskell 中它一定是不可能的,因此 Haskell 还没有为现实世界做好准备”。但他们错过的是,可能有一种完全不同且更好的方法来解决问题。 (这就像说“Erlang 没有线程,因此不可能用于实现并发系统。”)FRP 只是一个例子。

关于haskell - 现实世界的 Haskell 编程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1113226/

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