某岛

… : "…アッカリ~ン . .. . " .. .
January 15, 2022

Haskell 相关

本篇记录一下学习 Haskell 过程中查阅的资料和踩过的坑。

一般来说学习一个新的编程语言都从 Hello World 开始,但是 Haskell 里要展开介绍 IO() 就不得不涉及到 Monad,
(不能理解 Monad 就是自函子范畴上的一个幺半群你还想用 Haskell 写出 Hello World ?)

这大概也是 Haskell 的学习曲线比较陡的原因,正因为此 Haskell 里的 Hello World 一般是用阶乘 或者 斐波那契数列,
学完之后就可以开始刷 PE 了,(因为 PE 几乎不用管 IO()、而且可以用暴力算法跑一天)。

学习的目标:
– [ ] 理性愉悦。
– [ ] 达成 彩虹小马 成就:在 Codeforces 的一场 Div2 Round 中,使用不同的语言 AC 每一道题。
– [ ] 读懂 PFDS 和 SICP
– [ ] Javascript、Python 甚至现在 Cpp 里已经吸收了大量 FP 的 Feature,学习 FP 可以让我们更好的在这些语言中使用相关的 Feature。

常用资料

数据结构

书籍

视频

文档

博客

题库

Project Euler

Codeforces

Luogu

知识点

斐波那契数列

筛素数

记忆化

Monad

平衡树

不动点组合子

(Y 组合子 这个名字听起来像是 Ω 百合子 的姐姐。。。)