divert(-1) define(`FUNCTION',`divert(0) .BG .FN $1 .TL $1: ~Function to do abc .CS $1(divert(-1)') define(`ARG',`divert(1) ifelse($1,PAR,.GR, `.AG $1 ~Describe $1 here') divert(0)ifelse($1,PAR,,`$1, ')divert(-1)') define(`KEYARG',`divert(1) .AG $1= ~Describe $1 here divert(0)$1=, divert(-1)') define(`RETURN',`divert(2) .RT ~Describe what is returned divert(-1) ifelse($2,,,`RET($*)')') define(`RET',`ifelse($1,,, $1,&,`RET(shift($*))', $1,FILTER,`RET(shift($*))',`divert(2) .RC $1 ~Describe returned component $1 RET(shift($*)) divert(-1)')') divert(1) .PP divert(3) .EX ~Examples .KW ~ keyword .WR divert(-1)