996
|
1 version.4i is a simple program that tests what version of INTERCAL you are
|
|
2 running.
|
|
3
|
|
4 Under INTERCAL-72, the .4i suffix is ignored, and the COME FROM lines are
|
|
5 splatted. So execution flows to the first splat line, where an error is
|
|
6 reported that prints out the required message.
|
|
7
|
|
8 Under C-INTERCAL (or CLC-INTERCAL faking it), the ? is interpreted as XOR,
|
|
9 leaving a hugely large value in .1. So the second COME FROM doesn't match,
|
|
10 and the second splat line generates the error.
|
|
11
|
|
12 Under CLC-INTERCAL (or C-INTERCAL using the -X option), the ? is interpreted
|
|
13 as BUT, leaving #5 in .1. So the second COME FROM finds the required line
|
|
14 label, and the third splat line generates the error.
|