procedures

sprocedure_definition:=
csyntax | sadjectives "void" sdeclname sfun_arg* sopt_traint_eq scompound
cbind | sadjectives sproc_kind sdeclname : stypeexpr sopt_cstring srequires_clause ;
functions | ctor stvarlist sfun_arg* sopt_traint_eq sctor_inits scompound
functions | sadjectives sproc_kind sdeclname sfun_arg* sopt_traint_eq scompound
sproc_kind:=
functions | procFunction
functions | cprocCFunction
sopt_traint_eq:=
functions | expect sexpr =
functions | epsilonnone