iTasks 入门:定义 Web 交互式工作流
1. 基础工作流示例
1.1 数字猜谜游戏
数字猜谜游戏是一个两人工作流。玩家 1 需输入一个 1 到 100 之间的整数,玩家 2 则要猜出这个数字。每次猜测后,工作流会反馈猜测的数字是过低、过高还是正确。若猜对,工作流返回 JustN ;若玩家 2 放弃,工作流返回 Nothing 。此外,还可选择让玩家 1 得知玩家 2 的结果,并回复一条“私人”消息。
1.2 井字棋游戏
井字棋游戏也是两人工作流。游戏由一个 3×3 的矩阵组成,玩家 1 放置 × 标记,玩家 2 放置 ◦ 标记。率先在水平、垂直或对角线上连成三个相同标记的玩家获胜。工作流需确保玩家只能在轮到自己时放置标记。
2. 投机任务与多用户:截止日期
工作流系统需要处理与时间相关的任务,例如某些任务必须在给定时间 T 之前完成,否则将被取消。在 iTasks 工具包中,有以下与时间相关的组合器:
- waitForDateTask :: HtmlDate → Task HtmlDate :当给定日期过去时终止。
- waitForTimeTask :: HtmlTime → Task HtmlTime :当给定时间过去时终止。
- waitForTimerTask :: HtmlTime → Task HtmlTime :在给定时
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



