X-Git-Url: https://mattmccutchen.net/match/match.git/blobdiff_plain/df3d7779b79713973898f91d7bd9d418bf41eebe..86e209954803086a9a880fe3cd538d2c866cb8d6:/program/Formatter.hs diff --git a/program/Formatter.hs b/program/Formatter.hs index ed851b3..aab845c 100644 --- a/program/Formatter.hs +++ b/program/Formatter.hs @@ -8,7 +8,11 @@ intercalate xs xss = concat (intersperse xs xss) padWith :: a -> Int -> [a] -> [a] padWith _ 0 l = l padWith e n [] = replicate n e -padWith e (n+1) (h:t) = h:(padWith e n t) +-- http://hackage.haskell.org/trac/haskell-prime/wiki/RemoveNPlusK +-- Ugg... GHC could at least give a meaningful error message. ~ Matt 2011-08-27 +padWith e n (h:t) = + if n == 0 then error "padWith: list is already longer than the requested length" + else h:(padWith e (n-1) t) formatTable :: [[String]] -> String formatTable cells =