module Main where import Acme.HeroClub import Data.Maybe (fromMaybe) import System.Environment (getArgs, lookupEnv) import Data.List (isInfixOf) putFiveTenetsJa :: IO () putFiveTenetsJa = putFiveTenetsIn Japan putFiveTenetsEn :: IO () putFiveTenetsEn = putFiveTenetsIn English dispatch :: [(String, IO ())] dispatch = [("english", putFiveTenetsEn), ("japan", putFiveTenetsJa)] putTenetsWithEnv = do lang <- lookupEnv "LANG" if "ja_JP" `isInfixOf` fromMaybe "default" lang then putFiveTenetsJa else putFiveTenetsEn head' :: [String] -> String head' (x:xs) = x head' _ = "" main :: IO () main = do lang <- getArgs fromMaybe putTenetsWithEnv (lookup (head' lang) dispatch)