我試圖找出mVars如何工作的,我碰到此位的代碼來:什麼是哈希(#)用於圖書館的來源?
-- |Create an 'MVar' which is initially empty.
newEmptyMVar :: IO (MVar a)
newEmptyMVar = IO $ \ s# ->
case newMVar# s# of
(# s2#, svar# #) -> (# s2#, MVar svar# #)
除了是容易混淆與newMVar
相互遞歸,它也散落着hashs(#)。
在這兩者之間,我無法弄清楚它是如何工作的。我知道這基本上只是mVar的一個僞構造函數,但模塊的其餘部分(實際上大部分庫)都包含它們,並且我無法找到它們。谷歌搜索「哈斯克爾哈希」沒有產生任何相關。
謝謝。因此,爲了理解庫的片段,我基本上可以忽略它們,只是想想它們與之相關的類型? – Carcigenicate 2014-10-02 21:53:55
@Carcigenicate很多,是的。 – bheklilr 2014-10-02 21:55:57
@Carcigenicate我會這麼說,如果你真的好奇,你可以閱讀原始文檔,但是我不認爲你會從他們那裏獲得很多。 – jozefg 2014-10-02 21:56:27