型によるプログラミング 直積型と直和型 レコード構文
入門Haskellプログラミング (Will Kurt(著)、株式会社クイープ(監修、翻訳)、翔泳社)のUNIT3(型によるプログラミング)、LESSON16(直積型と直和型)、16.1(直積型)、クイックチェック 16-1の解答を求めてみる。
コード
data AuthorName = AuthorName
{ fname :: String,
lname :: String
}
deriving (Show)
author :: AuthorName
author = AuthorName {fname = "first", lname = "last"}
main :: IO ()
main = do
print author
print $ fname author
print $ lname author
入出力結果(Terminal, Zsh)
% runghc sample01.hs
AuthorName {fname = "first", lname = "last"}
"first"
"last"
%