2014-02-09 100 views
1
import qualified Data.Sequence as Seq 

data Heap a = EmptyHype | Seq.Seq (Seq.Seq) Int deriving (Show, Read, Eq) 

「合格的裝訂位置名爲」我的錯誤Qualified name in binding position: Seq.Seq我讀到這個問題,據我undestood我不能使用Seq.Seq但只有SEQ(SEQ一),但我需要將其限定爲Seq,因爲我無法使用某些功能。哈斯克爾,錯誤

當然,我可能是錯的,這就是爲什麼我在這裏問。

回答

4

您需要爲數據的第二部分構造函數名稱。以下編譯:

data Heap a = EmptyHype 
      | Nonempty (Seq.Seq (Seq.Seq a)) Int 
    deriving (Show, Read, Eq) 

您還需要充分應用(二)Seq.Seq,這就是爲什麼我編組我怎麼沒括號。

+0

難道只是輸入「a」?像'|非空(Seq.Seq(Seq.Seq a))Int'因爲當它不是空的時它有變量Seq.Seq(Seq.Seq)並且變量Int。這是一個問題嗎? – user3129475

+0

當然,我已經編輯了我的答案,現在我看到了你想要的東西。 – crockeea