title: Getting "Could not find module `Yesod'" when I try to run first example from Yesod book
body: <p>I know this seems a duplicate to <a href="https://stackoverflow.com/questions/14589358/could-not-find-module-yesod">Could not find module `Yesod&#39;</a>, but unlike that user, <code>ghc-pkg list</code> does not show <code>Yesod</code> in its output on my computer, they didn't seem to be using <code>stack</code> (I am, and I'm not sure if that means I don't need to worry about <code>ghc-pkg list</code>), and additionally, the answer (code) to that question did not help my situation.</p>
  
  <p>The <em>Yesod Book</em> has an <a href="http://www.yesodweb.com/book/basics#basics_hello_world" rel="nofollow noreferrer">example</a> that I've been trying to get to work for several hours now. I'll reprint it here</p>
  
  <pre><code>{-# LANGUAGE OverloadedStrings     #-}
  {-# LANGUAGE QuasiQuotes           #-}
  {-# LANGUAGE TemplateHaskell       #-}
  {-# LANGUAGE TypeFamilies          #-}
  import           Yesod
  
  data HelloWorld = HelloWorld
  
  mkYesod "HelloWorld" [parseRoutes|
  / HomeR GET
  |]
  
  instance Yesod HelloWorld
  
  getHomeR :: Handler Html
  getHomeR = defaultLayout [whamlet|Hello World!|]
  
  main :: IO ()
  main = warp 3000 HelloWorld
  </code></pre>
  
  <p>I'm using the latest 64-bit Ubuntu OS. The problem I consistently run into is that <code>runhaskell hello-world.hs</code> will time-and-time again return </p>
  
  <pre><code>hello-world.hs:6:18:
      Could not find module `Yesod'
      Use -v to see a list of the files searched for.
  </code></pre>
  
  <p>Likewise when I add a <code>module</code> name to the file and try loading it with <code>stack ghci hello-world.hs</code>. I'm using <code>stack</code> to build things, and I've tried many different iterations of <code>stack new</code> (with yesod templates), <code>stack init</code>, and <code>stack build</code>'s left and right, with <code>stack update</code>'s here and there for good measure, and even a few <code>cabal install</code>'s, along with the entirety of <a href="http://www.yesodweb.com/page/quickstart" rel="nofollow noreferrer">the Yesod quickstart guide</a>, all to no avail, and all within the proper directories.</p>
  
  <p>When I use Yesod templates with <code>simpleSQL</code>, the template site loads properly, and moreover a much larger project that I'm working with, <a href="https://git.gnu.io/snowdrift/snowdrift/tree/master" rel="nofollow noreferrer">Snowdrift</a>, runs as well (albeit as a site, using <code>stack exec yesod devel</code> and not a <code>runhaskell FILE</code> command; but still, it works, and I've tried the exact same build process for handling the <code>hello-world.hs</code> file above. </p>
  
  <p>I feel like this problem has a simple solution that I'm missing, but I've tried and tried, and searched all over, and I just haven't come across an answer. </p>
  
  <p>Thanks a bunch for taking the time to help me out.</p>