我所定義的數據類型如下,其應提供兩個功能:與多參數成員實例化的數據類型
data Problem = Prob { result :: State -> Action -> State
, stepCost :: State -> Action -> Integer
}
如何可以實例化這種類型?我嘗試這樣做:
let mcp = Prob { result _ _ = (False, (1,1)), stepCost _ _ = 1 } in True
但我得到: 錯誤 - 語法錯誤在表達式(意外'_')
我設法實例化一個類似的數據類型與它的成員只需要1個參數異常:
data Lala = La { omg :: State
, gee :: Integer
}
let mcp = La { omg = (False, (1,1)), gee = 1 } in True
返回True。
但重點是,我想實例化具體結果和stepcost函數的數據類型問題。當然,這些功能取決於他們的論點。那麼我怎麼能通過他們一些論據?
aff ..當然!現在我看到它似乎很合乎邏輯。謝謝! – hooch 2012-04-20 21:59:09