{-# LANGUAGE DeriveDataTypeable #-}

import System.Console.CmdArgs.Implicit

data CostFunction = Quadratic | CrossEntropy
                    deriving (Show, Data)

data Sample = Sample { lambda :: Double, eta :: Double, fileName :: String,
                       costFunction :: CostFunction }
              deriving (Show, Data, Typeable)

sample = Sample { lambda = 5 &= help "Lambda value for regularization",
                  eta = 0.5 &= help "Learning rate",
                  fileName = "" &= help "Load from file",
                  costFunction = Quadratic &= help "Cost function" }
         &= summary "Sample v2"

main = print =<< cmdArgs sample
