Is there any way to take "things" out of a monad?
I am developing a game, and I am now trying to understand about databases. I found happstack really nice, but I can't get the thing.
For example, I have this function (hope you are familiar with happstack) 
getAllThings :: MonadIO m => m [Thing]
getAllThings = do
            elems <- query GetThings
            return elems
So I get m [Things], but I can't use this in my model! For instance
doSomeThingWithThings :: [Thing] -> Something
I googled this and I found nothing.