> module TalkGetOpt (Opts(..),getNodefromOpts,options) where > import GetOpt > import Distributed > data Opts = Node Nodename | Remote String > options :: [OptDescr Opts] > options = [Option ['n'] ["node"] (OptArg node "node") "Local node name"] > node :: Maybe String -> Opts > node Nothing = Node "localhost" > node (Just o) = Node o > getNodefromOpts :: [Opts] -> Nodename > getNodefromOpts [] = "test" > getNodefromOpts (x:xs) = case x of > Node h -> h > _ -> getNodefromOpts xs