Next: Writing to a log file, Previous: Utilizing log-file comments, Up: I/O statements [Contents][Index]
coNCePTuaL’s
OUTPUT
keyword is used to write a message from one or
more source tasks (see Source tasks) to the standard
output device. This is useful for providing progress reports during
the execution of long-running coNCePTuaL programs. An
<output_stmt> looks like this:
<output_stmt> | ::= | <source_task> |
OUTPUTS |
||
<expr> | <string_or_log_comment> | ||
[ AND
<expr> |
<string_or_log_comment>]* |
The following are some sample <output_stmt>s:
TASK 0 OUTPUTS "Hello, world!" TASKS nr SUCH THAT nr>0 OUTPUT nr AND "'s parent is " AND nr>>1 AND " and its children are " AND nr<<1 AND " and " AND nr<<1+1 ALL TASKS me OUTPUT "Task " AND me AND " is running on host " AND THE VALUE OF "Host name" AND " and plans to send to task " AND (me+1) MOD num_tasks
OUTPUT
does not implicitly output spaces between
terms. Hence, ‘OUTPUT "Yes" AND "No"’ will output
“YesNo”, not “Yes No”. Although it is unlikely
that a program would ever need to output two arithmetic expressions
with no intervening text, an empty string can be used for this
purpose: ‘OUTPUT 6 AND "" AND 3’.
An <output_stmt> implicitly outputs a newline character at the end. Additional newline characters can be output by embedding ‘\n’ in a string. (see Primitives.) coNCePTuaL does not provide a means for suppressing the newline, however.
Scott Pakin, pakin@lanl.gov