Line No. | Rev | Author | Line |
---|---|---|---|
1 | 7 | paulosilva | |
2 | {-# LANGUAGE GADTs #-} | ||
3 | {-# OPTIONS_GHC -Wall #-} | ||
4 | |||
5 | ------------------------------------------------------------------------------- | ||
6 | |||
7 | {- | | ||
8 | Module : Language.Step.Syntax | ||
9 | Description : Abstract representation of proof steps. | ||
10 | Copyright : (c) Paulo Silva | ||
11 | License : LGPL | ||
12 | |||
13 | Maintainer : paufil@di.uminho.pt | ||
14 | Stability : experimental | ||
15 | Portability : portable | ||
16 | |||
17 | -} | ||
18 | |||
19 | ------------------------------------------------------------------------------- | ||
20 | |||
21 | module Language.Step.Syntax ( | ||
22 | Step(..), | ||
23 | steps | ||
24 | ) where | ||
25 | |||
26 | import Language.Combinator.Syntax | ||
27 | import Language.R.SyntaxADT | ||
28 | |||
29 | ------------------------------------------------------------------------------- | ||
30 | |||
31 | data Step where | ||
32 | Comb :: Combinator -> Step | ||
33 | Indirect :: Either S S -> Step | ||
34 | IndirectEnd :: Step | ||
35 | LeftP :: Step | ||
36 | Qed :: Step | ||
37 | RightP :: Step | ||
38 | SeqC :: Step -> Step -> Step | ||
39 | deriving Show | ||
40 | |||
41 | ------------------------------------------------------------------------------- | ||
42 | |||
43 | steps :: [String] | ||
44 | steps = ["indirect", "low", "up", "end", "left", "right", "seqc" ] |