title: optional arguments in haskell
body: <p>I have declared my own type:</p>
  
  <pre><code>data Book = Bookinfo {
                bookId :: Int,
                title :: String
            } deriving(Show)
  </code></pre>
  
  <p>and now:</p>
  
  <pre><code>x = Bookinfo
  </code></pre>
  
  <p>it is all ok, valid statement</p>
  
  <p>but making bookId x throws an error.</p>
  
  <p>If I would be able to handle errors in Haskell that would be ok but right now I cant do this So Im curious how to make not specified values of fields take default value, and what exactly value is there when I'm not giving vcalues of fields in construcotr ?</p>
  
  <p>thanks for help</p>