看板 PLT 關於我們 聯絡資訊
我其實沒仔細看,可能不是很進入狀況。我猜是這樣的: ※ 引述《dryman (dryman)》之銘言: : type config = : Inter of statement * state : | Fianl of state : 老師作業中應該是要讓 : natural_semantics 的type為 : config->config = <fun> : 不過實際寫起來覺得似乎不太可行 : 因為根本不可能知道回傳的config是Inter還是Final : 於是根本無法遞迴(題目沒有加rec,可是by definition ns 是遞迴沒錯) 我想 ns 應該是要定義成遞迴函數的。遞迴呼叫的結果 也可以用 match 得知是 Inter 還是 Final. : 但如果將natural semantics設定成 : (statement,state)->state = <fun> 我也是覺得這樣比較像 natural semantics. 也許 改用 config -> config 的原因是以後比較容易和 small-step semantics 做比較?但無論如何這兩個 type 蠻像的。 我猜想你碰到的問題可能不是關於 semantics, 而是 不知在 ocaml 中如何做 pattern matching? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 123.192.160.134