个人博客

把正在理解的事,写成可以回访的记录。

关于软件、系统设计与持续学习。文章由 Notion 写作并在这里发布。

目前已发布 302 篇文章。

文章列表

最近文章

302

Get Programming with Haskell-16

你将更仔细地研究一些我们已经介绍过的类型。你这样做是为了更多地了解 Haskell 类型的独特之处以及如何使用类型设计程序。到目前为止,你所看到的大多数类型都是代数数据类型。代数数据类型是通过组合其他类型而形成的任何类型。理解代数数据类型的关键在于准确地知道如何组合其他类型。幸运的是,只有两种方法。你可以使用“与”组合多种类型(例如,一个名字是一个 String 与另一个 String),或者你可以使用“或”组合类型(例如,一个 Bool 是一个 True 数据构造器 或一个 False 数据构造器)。通过使用“与”组合其他类型而形成的类型称为积类型(product types)。使用“或”组合而形成的类型称为和类型(sum types)。

Programming in types

Haskell 中的类型允许你将程序视为一系列的转换。你可以将转换视为一种更抽象的函数思考层面。在 Haskell 中解决问题时,你可以首先将它们视为一系列抽象的转换。

Get Programming with Haskell-15

每个人都喜欢能与朋友秘密通信的想法。在这个总结项目中,你将运用你对类型和类型类的知识,构建几个示例密码。密码(cipher)在密码学中是一种对信息进行编码的方法,使他人无法阅读。密码是密码学的基础,但它们本身也非常有趣、值得玩味。你将首先接触一个容易实现也容易破解的密码,然后进一步了解字符加密的基础知识,最后你将构建一个不可破解的密码!

主题索引

按主题浏览

展开全部标签