oop - 数值模拟的函数式编程
问题描述
我最近对函数式编程(FP)感兴趣。但是,我想知道使用 FP 进行模拟是否困难。
例如,使用面向对象编程 (OOP),我会为每个代理(可能是类)分配一个状态并因果更新它们的状态。状态的历史记录到某个数组中。如有必要,将在每个时间段保存和刷新历史记录。
据我所知,FP 避免了可变数据,因此每个代理的时变状态不能包含在代理中。然后,对于 FP 中的模拟,我是否必须将每个时间瞬间的状态记录到某个数组而不为每个代理分配状态?那么,如果我想查看特定代理的状态以进行调试怎么办?我应该在记录的数组中找到状态吗?
像上面一样,我很难用 FP 的方式来思考数值模拟。老实说,OOP 风格对于这项任务来说看起来很自然。
任何人都可以解释一些以 FP 方式编写数值模拟代码的例程吗?
解决方案
推荐阅读
- javascript - 使用 HTML 拖放 API 中使用的光标值
- javascript - 无法使用 select2 读取 null 的属性“查询”
- vba - 在 MS-Word 中,您如何 VBA 拆分插入分节符和段落标记的表格
- flask - 如何在flask-admin中过滤非模型数据
- javascript - 使用 FOR 循环为来自 API 调用的每个响应创建一个文件
- android - OpenGattServer 返回 null
- python-3.x - Dask - dataframe.read_csv 无法识别正确的数据类型
- api-gateway - 重命名 envoy 中现有的 http 标头
- angular - 运行 ngFor 几次
- c# - 单行计算器 - 最后一个数字的问题