2013-01-03 22 views
1

我有問題從我的解析中提取額外的信息。haskell解析具有額外信息的數據結構

我有我自己的數據結構來解析,並且工作正常。我爲我的數據結構編寫了解析器Parse MyDataStructure,它解析了關於MyDataStructure的所有信息。

的問題是,在字符串中,我分析,有MyDataStructure混合,還有什麼我應該MyDataStructure這當然不是MyDataStructure部分,即我不能存儲裏面MyDataStructure此信息做一些信息。

現在的問題是我不知道如何存儲這些信息,因爲在Haskell中,我無法更改某個全局變量來存儲信息,並且我的解析器的返回值已經是MyDataStructure

有沒有一種方法,我可以以某種方式保存這些新的信息,在不改變MyDataStructure,即包括外地來存儲額外的信息(但額外的信息都沒有的MyDataStructure一部分,所以我真的想避免這樣做)?

我希望我已經夠清楚了。

+3

元組'((MyDataStructure,ExtraInfo)''不適合你嗎? – 9000

回答

2

正如@ 9000所說,你可以使用一個元組。如果你發現自己需要通過一些功能,使用State Monad可能會讓事情變得更簡單。