Haskell是一个纯函数式编程语言,它抛弃了命令式编程中的可变(mutable)变量和循环等形式,引入了非常灵活强大的类型系统、模式匹配等功能。
在Haskell中,有很多原本用循环可以轻易解决的问题可能变得复杂得让人百思不得其解,也有很多原本需要几十行才能完成的任务变成只要区区几行就能完成。可以说,编程的思路完全不一样了。
本人在尝试使用Haskell解决一些简单的问题,就当是锻炼思维了。这里包括了一些解决问题的源代码,有:
- 2048(游戏)
- 八皇后(经典算法问题,用Haskell能非常精炼地解决)
- 数独
- 填字游戏(Crossword)
- Markdown 解析
- 自己实现的Parsec库,并在此基础上移植了上面的Markdown程序