Haskell实践:探索单词链问题
1. 引言
现在,让我们通过一个编程练习来深入探索Haskell编程。我们将使用Dave Thomas的单词链问题,通过这个问题,我们可以了解函数式程序员如何解决问题,学习一些Haskell的语法和库,还会涉及Haskell代码的性能和优化。
这个问题的目标是找到从一个单词到另一个单词的一系列步骤,每一步只改变一个字母,并且得到的字符串也是一个有效的单词。例如,将 “lead” 变成 “gold”,路径可以是 [“lead”, “load”, “goad”, “gold”]。为了简单起见,我们假设所有单词都是四个字母的小写单词。
1.1 准备工作
在开始之前,我们需要做一些准备工作:
- 开发工具 :使用Glasgow Haskell Compiler (GHC) 作为主要的开发工具。GHC是Haskell最先进的实现,涵盖了标准语言 (Haskell - 98) 以及许多实验性扩展和库。它还提供了一个类似REPL的工具GHCi。
- 安装包 :Haskell Platform 提供了一个易于安装的包,包含了主要的Haskell工具,如GHC、GHCi、Cabal(类似于Ruby的Gem工具)和其他构建工具,以及许多流行的额外库。
- 代码编辑 :可以使用任何喜欢的编辑器,这里使用vi。完整的代码可以在Github Gist上找到。要运行代码,将其保存为一个扩展名为 .hs 的文件,然后在文件上运行ghci(或者如果你使用的是hugs,就运行hugs),之后可以根据需要运行各种代
超级会员免费看
订阅专栏 解锁全文
1432

被折叠的 条评论
为什么被折叠?



