4 void print_apos(unsigned int revision
)
10 print_apos(revision
- 2);
14 void print_ident(char *ident
, unsigned int revision
)
25 void term_print(struct lambda
*t
, struct lambda
*mark
)
31 print_ident(t
->data
.identifier
.ident
, t
->data
.identifier
.revision
);
35 print_ident(t
->data
.abstraction
.ident
, t
->data
.abstraction
.revision
);
36 while((t
= t
->data
.abstraction
.expr
)->which
== lambda_abs
){
38 print_ident(t
->data
.abstraction
.ident
, t
->data
.abstraction
.revision
);
44 if(t
->data
.application
.expr1
->which
== lambda_abs
)
46 term_print(t
->data
.application
.expr1
, mark
);
47 if(t
->data
.application
.expr1
->which
== lambda_abs
)
52 if(t
->data
.application
.expr2
->which
== lambda_app
)
54 term_print(t
->data
.application
.expr2
, mark
);
55 if(t
->data
.application
.expr2
->which
== lambda_app
)
63 void lambda_print(struct lambda
*t
, struct lambda
*mark
)