如果你是一名程序员,也许你对函数式编程这一编程范式有所耳闻。函数式编程植根于上世纪30年代提出的λ演算,以函数作为程序的一等公民及构建程序的基本单位。随着数十年间编程语言理论研究的发展,函数式编程从理论基础到业界应用都有了长足的进步,除了象牙塔里的研究性语言以外,涌现了一批诸如Scala、Clojure、F#、Erlang等面向工业界应用的函数式语言,而不少老牌的主流语言如C++11、Java 8和新兴脚本语言如JavaScript、Python、Ruby等皆不同程度地引入了函数式编程相关特性的支持。
尽管吸引着越来越多的注意力,对许多程序员而言,函数式编程这一概念仍被疑云笼罩,譬如:是否具有lambda
关键词的语言就支持函数式编程?函数式编程是否不能或难以处理副作用?既然我日常使用的语言已具备函数式特性,特地学习函数式语言是否浪费时间?我是否需要数学水平高深,学懂诸如λ演算、类型论、范畴论等数学理论,才能学好函数式编程?函数式语言种类繁多,究竟应该如何选择?不一而足。
本次Haskell函数式编程入门讲座,核心目的即为有兴趣学习函数式编程的程序员扫去疑云,为掌握函数式编程打下基础。Haskell是一门具有极其强悍的类型系统与抽象能力的函数式语言,自上世纪90年代诞生以来,至今一直作为相关理论研究的前沿快速演进,同时积淀了一个足以开发工业级应用的生态系统和高水平社区。本次讲座以Haskell为工具讲授一系列函数式编程概念与方法,并且会涉及软件测试、并发编程、领域特定语言等例子,展示在强大类型系统辅助下函数式编程的价值。
地图: 点此查看
路线: