【发布时间】:2014-02-24 13:26:18
【问题描述】:
我正在寻找业务应用程序中的 State monad 的简单示例。
我找到了很好的例子——memoisation 计算斐波那契数和随机数generation——但我想看一个来自业务领域的例子(最好是在 Scala 中)。
例如,我可以很容易地找到使用 Option、Either、List、Reader 和 Writer monad 的示例:
- 选项:查找不存在的实体(订单、产品、客户等)
- 任一:任何失败
- list :客户订单、订单商品等
- reader : 从数据库中读取任何实体
- writer : 写入日志
现在我正在为 State monad 寻找类似的东西,即据我所知,任何具有可变状态的有状态计算。
【问题讨论】:
-
您心目中的业务应用程序是什么样的?你知道,随机数生成在商业中被大量使用。
-
我指的是订单处理软件,例如供应链软件、计费、CRM等。
-
你能想到一个跟踪某些状态的应用程序吗?然后你有一个应用程序,
State可能是合适的。 -
我想到的大多数应用程序都是客户端/服务器,它们是无状态的。状态要么存储在数据库中,要么存储在客户端中。这就是我寻求帮助的原因。
标签: scala functional-programming state monads