diff options
| author | aarne <unknown> | 2004-09-22 20:42:21 +0000 |
|---|---|---|
| committer | aarne <unknown> | 2004-09-22 20:42:21 +0000 |
| commit | d5b4230d6dbee8c03eedf8d181dfa2badf1a954b (patch) | |
| tree | b2d8fd926161d4d904fbf42aa25261ac90691e40 /examples/gfcc/Imper.gf | |
| parent | a0116fd288640a47166b5104b46d9b6fa510a563 (diff) | |
making parsing ImperC work
Diffstat (limited to 'examples/gfcc/Imper.gf')
| -rw-r--r-- | examples/gfcc/Imper.gf | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/examples/gfcc/Imper.gf b/examples/gfcc/Imper.gf index 31ca82f75..28ac3d4bd 100644 --- a/examples/gfcc/Imper.gf +++ b/examples/gfcc/Imper.gf @@ -2,6 +2,7 @@ abstract Imper = PredefAbs ** { cat Program ; + Rec ListTyp ; Typ ; NumTyp ; ListTyp ; @@ -15,12 +16,13 @@ abstract Imper = PredefAbs ** { fun Empty : Program ; Funct : (AS : ListTyp) -> (V : Typ) -> - Body AS -> (Fun AS V -> Program) -> Program ; + (Fun AS V -> Rec AS) -> Program ; + FunctNil : (V : Typ) -> + Stm -> (Fun NilTyp V -> Program) -> Program ; - BodyNil : Stm -> Body NilTyp ; - BodyOne : (A : Typ) -> (Var A -> Stm) -> Body (ConsTyp A NilTyp) ; - BodyCons : (A : Typ) -> (AS : ListTyp) -> - (Var A -> Body AS) -> Body (ConsTyp A AS) ; + RecOne : (A : Typ) -> (Var A -> Stm) -> Program -> Rec (ConsTyp A NilTyp) ; + RecCons : (A : Typ) -> (AS : ListTyp) -> + (Var A -> Rec AS) -> Program -> Rec (ConsTyp A AS) ; Decl : (A : Typ) -> (Var A -> Stm) -> Stm ; Assign : (A : Typ) -> Var A -> Exp A -> Stm -> Stm ; |
