2013-12-20 106 views
1

有沒有簡化包含類的函數類型頭的方法?命名類實例

現在我寫

myfce :: Graph gr => Sometype -> gr Int String 

,我想

myfce :: Sometype -> MyGraph 

回答

3

如果MyGraphx Int String一種代名詞,其中xGraph一個實例,那麼你可以這樣做:

data GraphType a b = ... 

instance Graph GraphType where ... 

type MyGraph = GraphType Int String 

您可以然後專門myfce有你想要的類型

myfce :: Sometype -> MyGraph