我有兴趣在我自己的时间学习Haskell(不是通过课程),但我怀疑我的数学背景可能不足以理解重要的语言概念(TBD)。

我有一年的大学微积分(单变量),但不是离散的数学或逻辑。

我是否会在数学上遇到空白?

有帮助吗?

解决方案

为什么不试试看?

Haskell的设计借鉴了类别理论(monads,arrows,transformers)等领域的数学思想,但大多数Haskell程序员只能理解这些与编程相关的内容: - )

你不需要任何特别高级的数学来学习Haskell,除了能够在数学意义上考虑函数之类的东西(比如,<!>; a map f:X - <!> gt; Y <!>;而不是作为执行某些动作的<!>“子程序<!>”,能够考虑更高阶的函数(例如,说<!>“;'compose fg'是一个在输入x处具有值f(g(x))<!>“;”等的函数。 Haskell的表示法非常简洁,因此也不应该成为问题。

其他提示

Haskell的重要概念是对所有纯函数式语言都很重要的概念,我相信不一定需要高级数学。

鉴于你已经有一年的微积分,你会没事的。

虽然拥有lambda演算背景可能会很好,但对Haskell来说并不是一个很难的要求。

你会没事的。水温暖。继续!

数学?呃,不。你根本不需要数学(如在代数,微积分,几何等词的常识中的数学),但是你需要一个逻辑(逻辑==数学?)大脑来编程,就像使用任何其他语言一样

我八年前自己教过Haskell只有商业微积分,我认为不需要任何数学。

我相信Haskell教你很多逻辑,离散数学然后学习Haskell,你也会得到一些数学技能:)

你知道的更普遍的代数和范畴理论越好,因为Haskell从数学分支中获取了很多东西(即Monads,代数类型系统,箭头和算子)。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top