main: declare char declare colno declare lineno calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "H" : "Read: H" char check eq colno "1" : "The column number should not have advanced yet" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "e" : "Read: e" char check eq colno "2" : "The column number should have been advanced by 1" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "l" : "Read: l" char check eq colno "3" : "The column number should have been advanced by 2" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "l" : "Read: l" char check eq colno "4" : "The column number should have been advanced by 3" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "o" : "Read: o" char check eq colno "5" : "The column number should have been advanced by 4" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "!" : "Read: !" char check eq colno "6" : "The column number should have been advanced by 5" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char eol : "Read: eol" char check eq colno "7" : "The column number should have been advanced by 6" colno check eq lineno "1" : "The line number should not have advanced yet" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char eol : "Read: eol" char check eq colno "1" : "The column number should have been reset" colno check eq lineno "2" : "The line number should have advanced by 1" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "T" : "Read: T" char check eq colno "1" : "The column number should have been reset again" colno check eq lineno "3" : "The line number should have advanced by 2" lineno skip calc char peek calc colno stdincolno calc lineno stdinlineno check eq char "h" : "Read: h" char check eq colno "2" : "The line number should not have been advanced by 1" colno check eq lineno "3" : "The line number should not have advanced further" lineno emit "Success" /