Next: Differences to Other Compilers, Previous: CREATE, Up: Top [Index]
INTERCAL-72 | C-INTERCAL | CLC-INTERCAL | J-INTERCAL |
---|---|---|---|
no | version 0.28+ | no | no |
C-INTERCAL has a feature allowing INTERCAL and non-INTERCAL code to be mixed. This is achieved by causing the non-INTERCAL programs to participate in the INTERCAL line-numbering model. The same feature allows expansion libraries to be linked into the code.
To create a combined program containing INTERCAL and
non-INTERCAL code, use ick
as the
compiler as normal, but specify both the INTERCAL
and non-INTERCAL source files on the command line,
and use the -e command-line option. ick
will
invoke other compilers as necessary, after modifying the source files
accordingly. At present, external calls are only supported to and from
C and Funge-98.
In each case, it will be the INTERCAL program that
is invoked first. (This means that it is impossible to link together
more than one INTERCAL program, but you probably
don’t want to, because concatenating the programs is likely to
have a similar effect.) You can get the INTERCAL
program to NEXT
to the non-INTERCAL
program immediately, or the non-INTERCAL program to
COME FROM
or NEXT FROM
the
INTERCAL program immediately, to obtain the effect
of running the non-INTERCAL program first.
Note that external calls are incompatible with PIC-INTERCAL and with
multithreading; note also that you must use gcc
as your
compiler, and GNU cpp and ld, for them to work in
the current version of C-INTERCAL.
• External Calls to C: | How to put INTERCAL calls in C. | |
• External Calls to Funge-98: | Linking Befunge-98 and INTERCAL. | |
• Miscellaneous External Calls: | Other things you can link in. | |
• Using External Calls: | What happens when you use -e. | |
• Expansion Libraries: | Expanding the compiler’s capabilities. |
Next: Differences to Other Compilers, Previous: CREATE, Up: Top [Index]