|
|
|
|
|
|
Synopsis |
|
|
|
Documentation |
|
newtype Name |
Names in the process algebra. | Constructors | | Instances | |
|
|
data Term |
Term algebra. | Constructors | App String [Term] | Application | Var Name | Variables (only in processes) | Lab Label | Labels (only in productions) |
| Instances | |
|
|
freeVars :: Term -> [Name] |
|
data Proc |
Processes of the algebra. | Constructors | | Instances | |
|
|
newtype Position |
Address in the process. | Constructors | | Instances | |
|
|
newtype Label |
Labels for the generated grammar. | Constructors | | Instances | |
|
|
data Production |
Productions of the generated grammar. | Constructors | |
|
|
Utility |
|
newLabel :: Position -> String -> Label |
Generate a fresh Label at a given place. |
|
newLabelForName :: Position -> Name -> String -> Label |
Label for a variable at a given place. |
|
constOfName :: Name -> String -> Term |
Constant Term for a new-generated variable.
We assume every new to be distinct.
(We could also use Position for this, but it would be harder to use the
generated name in rewriting rules.) |
|
top :: Position |
The top address for the whole proces. |
|
top' :: Position |
Alternative top (used only in post-apocalyptic analysis). |
|
next :: Position -> Position |
Generate a new Position for the continuation. |
|
left :: Position -> Position |
Generate a new Position for the left branch of a Par. |
|
right :: Position -> Position |
Generate a new Position for the right branch of a Par. |
|
Pretty printers. |
|
pprBinding :: Name -> Label -> String |
Used for Remarks. |
|
pprTerm :: Term -> String |
Pretty print a Term. |
|
pprProductions :: [Production] -> String -> String |
Pretty print Productions. |
|
pprProc :: Proc -> String |
Pretty print a Process. |
|
Produced by Haddock version 0.6 |