让我先声明一下,虽然我有4年的C#经验,但在F#方面还非常新手。我想开始学习F#,并按照TryFSharp.org上的教程进行学习。我到了计算表达式(computation expressions)这一部分时,有些地方不太清楚。于是我开始搜索资料。我看到了另一个教程/文章,在第一个例子(日志记录)中解释得更好。但是当我看到第二个例子时,却无法理解代码的流程或它应该如何工作,也许是因为我不理解
State
类型的定义。type State<'a, 's> = State of ('s -> 'a * 's)
我已经与F#中的一些简单类型合作过,我见过struct
、class
、record
,但我不知道如何阅读此类型或它应该执行什么操作。我也无法弄清楚其中的of
关键字是做什么的。
所以我的问题是:这种类型定义做了什么/其中的of
关键字是做什么的?