{-# LANGUAGE GADTs #-}
{-# OPTIONS_GHC -Wall #-}
-------------------------------------------------------------------------------
{- |
Module : Language.Command.Syntax
Description : Abstract representation of commands.
Copyright : (c) Paulo Silva
License : LGPL
Maintainer : paufil@di.uminho.pt
Stability : experimental
Portability : portable
-}
-------------------------------------------------------------------------------
module Language.Command.Syntax (
Command(..),
commands
) where
import Language.Combinator.Syntax
import Language.Derivation.Syntax
import Language.Law.SyntaxADT
import Language.R.SyntaxADT
import Language.Type.Syntax()
-------------------------------------------------------------------------------
data Command where
Abort :: Command
Assume :: LawS -> Command
Auto :: Command
Browse :: String -> Command
Comb :: Combinator -> Command
Define :: S -> Command
Derive :: Derivation -> Command
Help :: Command
Hint :: Command
IndirectUp :: S -> Command
IndirectLow :: S -> Command
IndirectOut :: Command
Info :: String -> Command
LeftP :: Command
Load :: String -> Command
Modules :: Command
Prove :: LawS -> Command
Qed :: Command
Quit :: Command
Reload :: Command
Restart :: Command
RightP :: Command
Rules :: Command
Save :: Command
Show :: Command
Type :: S -> Command
Undo :: Maybe Int -> Command
Unload :: String -> Command
deriving Show
-------------------------------------------------------------------------------
commands :: [String]
commands = [
"abort",
"assume",
"auto",
"browse",
"comb",
"define",
"derive",
"help",
"hint",
"indirect",
"info",
"left",
"load",
"modules",
"prove",
"qed",
"quit",
"reload",
"restart",
"right",
"rules",
"save",
"show",
"type",
"undo",
"unload",
"up",
"low",
"end"
]
-------------------------------------------------------------------------------
|