rav*_*ven 48 haskell functional-programming
几年来我一直是一位势在必行的开发人员,我从未有过学习函数式编程的冲动.
几个月前,我终于决定学习Haskell.这是一个非常酷的语言,但我很困惑如何用这种语言编写一个事件驱动的真实应用程序.你知道一个关于它的好教程吗?
注意:当我说"真正的应用程序"时,我不是在谈论现实世界,生产就绪应用程序.我只是说一个小样本应用程序,只是为了掌握它.我觉得像windows caculator的简化版本会很棒,然后可能会更复杂一点.
Jör*_*tag 89
当你说"真实世界"的例子时,你可能会想到本质上是顺序或有状态的问题,或者做很多I/O,对吧?
那么,游戏怎么样?
或者,X Window Manager,可扩展的Emacs克隆文本编辑器或IDE呢?
然后,有一本书,甚至标题中已经有你的问题:真实世界Haskell ,也可以免费获得!
您可能想要了解的另一件事是功能反应式编程.(例如,它在Frag中使用.)FRP的有趣之处在于它允许您从一个非常不同的角度来看待GUI编程的问题.如果您阅读RWH书中的GUI章节,您将看到它谈论如何编写GUI应用程序,就像在C中一样,只是更好.FRP OTOH允许您以完全不同的方式编写它,这在C中是不可能的.
很多时候(我不是说你的问题就是这种情况,但它是一种反复出现的模式)当有人说"但是Haskell可以在现实世界中使用"时,他们真正说的是"我知道如何在C中执行此操作,在Haskell中我无法以完全相同的方式执行此操作,因此在Haskell中它必定是不可能的,因此Haskell还没有为现实世界做好准备".但他们错过的是,可能存在一种完全不同且更好的方法来解决问题.(这就像说"Erlang没有线程,因此它不可能用于实现并发系统.")而FRP只是一个例子.
对于今天的闪电话题,我已经汇总了这个展示案例Haskell应用程序列表,故意排除任何只针对程序员的东西:
(还在我的博客上,以及演讲的幻灯片上,以及每个节目的精美代表性图片.)
以下是您要求的一些链接.
这个解释了许多对Haskell的命令式程序员没有"意义"的事情
这是一个非常好的易于学习的教程
用Haskell编写的Raytracer
您可以从这里下载Glasgow Haskell Compiler. GHC
| 归档时间: |
|
| 查看次数: |
19164 次 |
| 最近记录: |