型によるプログラミング - 直積型と直和型 - 直積型 - 階層的な設計
入門Haskellプログラミング (Will Kurt(著)、株式会社クイープ(監修、翻訳)、翔泳社)の UNIT3(型によるプログラミング)、LESSON 16(直積型と直和型)、16.1(直積型)、クイックチェック 16-2の解答を求めてみる。
コード
sample2.hs
main :: IO ()
main = do
print sportsCar
data Car = Car deriving Show
data Spoiler = Spoiler deriving Show
data SportsCar = SportsCar Car Spoiler deriving Show
car :: Car
car = Car
spoilerCar :: Spoiler
spoilerCar = Spoiler
sportsCar :: SportsCar
sportsCar = SportsCar car spoilerCar
入出力結果(Terminal, Zsh)
% runghc sample2.hs
SportsCar Car Spoiler
%