996
|
1 <HTML>
|
|
2 <HEAD>
|
|
3 <TITLE>CLC-INTERCAL Reference</TITLE>
|
|
4 </HEAD>
|
|
5 <BODY>
|
|
6 <H1>CLC-INTERCAL Reference</H1>
|
|
7
|
|
8 <P>
|
|
9 Table of Contents
|
|
10 <UL>
|
|
11 <LI><A HREF="#introduction">Introduction</A>
|
|
12 <LI><A HREF="#obtaining">Obtaining CLC-INTERCAL</A>
|
|
13 <LI><A HREF="concepts.html">Fundamental Concepts</A>
|
|
14 <LI><A HREF="expressions.html">Expressions</A>
|
|
15 <LI><A HREF="statements.html">Statements</A>
|
|
16 <LI><A HREF="belongs.html">Belongs TO</A>
|
|
17 <LI><A HREF="lectures.html">Classes and Lectures</A>
|
|
18 <LI><A HREF="input_output.html">Input/Output</A>
|
|
19 <LI><A HREF="quantum.html">Quantum INTERCAL</A>
|
|
20 <LI><A HREF="internet.html">INTERNET: INTERcal NETworking</A>
|
|
21 <LI><A HREF="syscall.html">The System call interface</A>
|
|
22 <LI><A HREF="extensions.html">Compiler extensions and optional features</A>
|
|
23 <LI><A HREF="parsers.html">Writing compilers for CLC-INTERCAL</A>
|
|
24 <LI><A HREF="sick.html">The command-line compiler tool</A>
|
|
25 <LI><A HREF="intercalc.html">The INTERCAL calculator</A>
|
|
26 <LI><A HREF="errors.html">Errors</A>
|
|
27 <LI><A HREF="charset.html">The various character sets supported by CLC-INTERCAL</A>
|
|
28 </UL>
|
|
29
|
|
30 <H2><A NAME="introduction">Introduction</A></H2>
|
|
31
|
|
32 <P>
|
|
33 CLC-INTERCAL was first released as an April fool joke on April 1st,
|
|
34 1999. The idea behind the release was to provide a new INTERCAL
|
|
35 compiler which could be used as a test-bed for new language ideas,
|
|
36 provided one could justify such ideas with the fundamental INTERCAL
|
|
37 philosophy of "doing things differently".
|
|
38 </P>
|
|
39
|
|
40 <P>
|
|
41 Some features of C-INTERCAL or INTERCAL-72 were thought to be too
|
|
42 "normal", so support for them was made optional. In the
|
|
43 current version (1.-94.-2 at the time of writing), such optional
|
|
44 features can be enabled by providing command-line options to the
|
|
45 compiler tool (see the
|
|
46 <A HREF="sick.html">chapter about the command-line compiler tool</A>),
|
|
47 or by using the appropriate menus in the calculator (see the
|
|
48 <A HREF="intercalc.html">chapter about the INTERCAL calculator</A>).
|
|
49 The reference manual
|
|
50 will indicate which features are optional and which option enables
|
|
51 them. For example, CLC-INTERCAL has always considered NEXT to
|
|
52 be an obsolete statement, being just a standard subroutine call,
|
|
53 and one enables it by selecting the next option (or by using the
|
|
54 ick compatibility mode, which automatically enables this option).
|
|
55 </P>
|
|
56
|
|
57 <P>
|
|
58 Other optional features are experimental language extensions, or
|
|
59 else extensions which, it was felt, are above and beyond the call
|
|
60 of insanity, for example the ability to use computed statement
|
|
61 labels or the "COME FROM gerund" statement. See
|
|
62 <A HREF="extensions.html">the chapter about compiler extensions
|
|
63 and optional features</A>.
|
|
64 </P>
|
|
65
|
|
66 <H2><A NAME="obtaining">Obtaining CLC-INTERCAL</A></H2>
|
|
67
|
|
68 <P>
|
|
69 The official sources for CLC-INTERCAL will be normally hosted on
|
|
70 <a href=http://intercal.freeshell.org">intercal.freeshell.org</a>;
|
|
71 there is normally a mirror using my ISP's servers, see
|
|
72 <A HREF="http://intercal.freeshell.org/download/">the CLC-INTERCAL download page</A>.
|
|
73 A Debian package for CLC-INTERCAL is provided by Mark Brown, usually at the same
|
|
74 time as the official sources, or very soon after. See the
|
|
75 <A HREF="http://packages.debian.org/clc-intercal">Debian package description</A>
|
|
76 for more details. Packages for other operating systems and/or
|
|
77 distributions may be made available in future. Watch this space.
|
|
78 </P>
|
|
79
|
|
80 </BODY>
|
|
81 </HTML>
|
|
82
|