2015-05-24 34 views
0

所以,我有這樣的功能:組成的數據類型的Haskell

solve x y = do 
      ... 
      return (newx,y++[1]) 

其中x和下一頁末是[[INT]]和Y爲[INT]。 使用這個函數,我會返回一個「值」。現在,我想知道如何「處理」這個值,以便提取這兩個組件並分別使用它們。

事情是這樣的:

a <- solve x y 
b <- a[0] 
c <- a[1] 

回答

4

return將它包裝成一些單子,然後你可以通過直接解構它do塊內像這樣得到的部分:

do 
    (b,c) <- solve x y