08 2023 档案

摘要:ADT与表达式 这篇主要是写函数式编程中的元素与ADT的关系,特别的就是关于表达式的讨论。在函数式编程中,表达式也是一个比较重要概念。下图是Scott Wlaschin关于F#核心概念的图。 函数式编程 F# 表达式与值 类型系统 模式匹配 区别于面向过程的程序主要由语句(Statement)构成, 阅读全文
posted @ 2023-08-28 08:57 大福是小强 阅读(82) 评论(0) 推荐(0) 编辑
摘要:代数数据类型与领域驱动设计 代数数据类型(Algebraic Data Type,ADT)和抽象数据类型(Abstract Data Type,ADT)都与数据类型设计有关,但是两者的设计思想是不同的。抽象数据类型是OOP领域常用的设计思想,注重对实体对象的状态变化的封装和抽象;而代数数据类型则是组 阅读全文
posted @ 2023-08-24 10:00 大福是小强 阅读(127) 评论(0) 推荐(0) 编辑
摘要:一个小问题的求解 问题 一根 1m 长的玻璃棒,摔倒地上断成 3 段,最短一段的平均值是多少? 假设玻璃棒一定会摔成三段,且玻璃棒质地均匀,为理想状态。 物理的视角 玻璃棒摔成三段,其物理过程是什么样的? 有一位网友分析了倾斜碰撞的应力分布,提出了断裂位置的可能性分布,并把一次断成三阶分解为同时发生 阅读全文
posted @ 2023-08-23 17:25 大福是小强 阅读(37) 评论(0) 推荐(0) 编辑
摘要:Pattern Matching 为什么老是你! 什么是模式匹配 模式匹配是一种编程语言的特性,它可以让我们根据不同的模式来执行不同的代码。模式匹配的本质是一种条件分支,但是它的语法更加简洁,更加清晰。 在F# for fun and profit中,把模式匹配(控制结构)作为F#函数式编程的四个关 阅读全文
posted @ 2023-08-23 09:17 大福是小强 阅读(22) 评论(0) 推荐(0) 编辑
摘要:F#中主动模式的三种形式 F#中有一种特殊的模式匹配,叫做主动模式(Active Pattern)。主动模式可以让我们自定义模式匹配的方式,这样可以让我们的代码更加简洁,更加清晰。主动模式有三种形式,分别是: 单选项主动模式多选项主动模式部分应用的主动模式 这三个方式的语法如下: let (|Act 阅读全文
posted @ 2023-08-18 21:44 大福是小强 阅读(15) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示