-- |Contents:
--
--  [/Ask/]
--     Asking the user for input in a principled way.
--     Reading, parsing errors, predicate checks are all handled.
--
--  [/Command/]
--     The main module of the package. Functions for creating
--     commands, which can receive and ask for arguments.
--     Commands are composable and can be built into a REPL.
--
--
--     With commands, making a full-fledged CLI is as simple as writing:
--
--  @
--  main :: IO ()
--  main = makeREPLSimple [cmd1, cmd2, cmd3]
--  @
--
--  [/Config/]
--     Read configuration files in various formats.
module System.REPL (
   module System.REPL.Ask,
   module System.REPL.Command,
   module System.REPL.Config,
   ) where

import System.REPL.Ask
import System.REPL.Command
import System.REPL.Config