使用型別引數建立資料型別

型別建構函式可以採用一個或多個型別引數:

data Foo a b = Bar a b | Biz a b

Haskell 中的型別引數必須以小寫字母開頭。我們的自定義資料型別還不是真正的型別。為了建立我們型別的值,我們必須用實際型別替換所有型別引數。因為 ab 可以是任何型別,我們的值建構函式是多型函式。

建立自定義型別的變數

let x = Bar "Hello" 10      -- x::Foo [Char] Integer
let y = Biz "Goodbye" 6.0   -- y::Fractional b => Foo [Char] b
let z = Biz True False      -- z::Foo Bool Bool