doLs :: FilePath -> Maybe String -> IO ()
doLs dbFile possiblePattern = SQLite.withConnection dbFile $ \c -> do
    let conn = DbConnection c
    printProjects =<< case possiblePattern of
        Nothing -> listProjects conn
        Just pattern -> findProjects conn (modifyPattern pattern)
doLs :: FilePath -> Maybe String -> IO ()
doLs dbFile possiblePattern = SQLite.withConnection dbFile $ \c -> do
    let conn = DbConnection c
    printProjects =<< case possiblePattern of
        Nothing -> listProjects conn
        Just pattern -> findProjects conn (modifyPattern pattern)
doLs dbFile possiblePattern = SQLite.withConnection dbFile $ \c -> do
    let conn = DbConnection c
    printProjects =<< case possiblePattern of
        Nothing -> listProjects conn
        Just pattern -> findProjects conn (modifyPattern pattern)