statement - Open-Turing-Project/TuringDocs GitHub Wiki
#statement
##Syntax A statement is one of:
(a) assignmentStatement % variableReference := expn (b) openStatement % open (c) closeStatement % close (d) putStatement % put (e) getStatement % get (f) readStatement % read (g) writeStatement % write (h) seekStatement % seek (i) tellStatement % tell (j) forStatement % for end for (k) loopStatement % loop end loop (l) exit [ when trueFalseExpn ] (m) ifStatement % if end if (n) caseStatement % case end case (o) assert trueFalseExpn (p) begin statementsAndDeclarations end (q) procedureCall % procedureId [(parameters)] (r) return (s) result expn (t) new [ collectionId , ] pointerVariableReference (u) free [ collectionId , ] pointerVariableReference (v) tag unionVariableReference , expn (w) forkStatement % fork (x) signal variableReference (y) wait variableReference [ , expn ] (z) pause expn (aa) quit [ guiltyParty ] [ : quitReason ] (bb) unchecked (cc) checked
##Description A statement (or command) causes a particular action, for example, the putStatement:
outputs Hello. See the descriptions of the individual statements for explanations of their actions. Each statement can optionally by followed by a semicolon (;).
put "Hello"
##Example
width := 24 % Assignment statement
put "Hello world" % Put statement
exit when i = 100 % Exit statement
assert width < 320 % Assert statement
##Details You can use a result statement only in a function. You can use a return statement only to terminate a procedure or the main program (but not to terminate the initialization of a module). See also result and return.
There are a number of predefined procedures, such as drawline, which are not listed as statements above. These are considered procedure calls, which is one form of statement.