title: seq not forcing evaluation
body: <p>So I have my haskell program that looks something like this:</p>
  
  <pre><code>main = do
      secondData &lt;- loadSecondBars "output.data"
      putStrLn $ "Generated Second Data " ++ (show $ length secondData)
      let tenMinBars = secondData `seq` generateBars (barSize featureSet) secondData
      putStrLn $ "Generated Ten Minute Bars " ++ (show $ length tenMinBars)
      let combinedData = seq tenMinBars sortBars (tenMinBars ++ secondData)
      putStrLn $ "Generated Combined" ++ (show $ length combinedData)
      let completedOrderManager = evalState (runBar combinedData) startState
      putStrLn "Ran Algo"
  </code></pre>
  
  <p>Doing this it will take about 8 seconds to load my second data, then about 3 seconds to do the rest of the functions. </p>
  
  <p>However, if I remove the show length data, it will flash </p>
  
  <pre><code>"Generated Second Data"
  "Generated Ten Minute Bars"
  "Generated Combined"
  "Ran Algo"
  </code></pre>
  
  <p>Then pause for a bit till it runs through all the actual functions. </p>
  
  <p>It was my understanding by having seq in there I prevented the lazy evaluation. Am I using them wrong?</p>