summaryrefslogtreecommitdiff
path: root/doc/icont.txt
blob: ae867bcc6d1fa48746fd29fa90685d181205353f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128

NAME
       icont - translate Icon program

SYNOPSIS
       icont [ option ... ] file ... [ -x arg ... ]

DESCRIPTION
       Icont  translates  and  links  programs  written  in the Icon language.
       Translation produces ucode files,  suffixed  .u1  and  .u2,  which  are
       linked to produce executable files.  Icon executables are shell scripts
       containing binary data; this data is interpreted by iconx,  which  must
       be present at execution time.

       File names ending in .icn are Icon source files; the .icn suffix may be
       omitted from command arguments.  An argument of - reads  from  standard
       input.   A name ending in .u, .u1, or .u2 selects both files of a ucode
       pair.  The specified files are combined to produce  a  single  program,
       which is named by removing the suffix from the first input file.

       An  argument  of  -x may appear after the file arguments to execute the
       linked program.  Any subsequent arguments are passed to the program.

       Ucode files produced by translation are normally deleted after linking.
       If  the  -c option is given, processing stops after translation and the
       ucode files are left behind.  A directory of such files functions as  a
       linkable library.

OPTIONS
       The following options are recognized by icont:

       -c  Stop after producing ucode files.

       -f s
           Enable full string invocation by preserving unreferenced procedures
           during linking.

       -o file
           Write the executable program to the specified file.

       -s  Suppress informative messages during translation and linking.

       -t  Activate runtime tracing by arranging for &trace to have an initial
           value of -1 upon execution.

       -u  Diagnose undeclared identifiers.

       -v i
           Set verbosity level of informative messages to i.

       -E  Direct  the results of preprocessing to standard output and inhibit
           further processing.

       -N  Don't embed iconx path in executable file.

       -V  Announce version and configuration information on standard error.

TRANSLATION ENVIRONMENT
       Two environment variables control file search paths during  translation
       and  linking.   These variables contain blank- or colon-separated lists
       of directories to be searched after the current  directory  and  before
       the standard library.

       IPATH
           Directories  to search for for ucode files specified in link direc-
           tives and on the command line.

       LPATH
           Directories to search for source files  specified  in  preprocessor
           $include directives.

EXECUTION ENVIRONMENT
       Several environment variables control the execution of an Icon program.
       Values in parentheses are the default values.

       BLKSIZE (500000)
           The initial size, in bytes, of the allocated block region.

       COEXPSIZE (2000)
           The size, in words, of each co-expression stack.

       ICONCORE
           If set, a core dump is produced for error termination.

       ICONX
           The location of iconx, the icon interpreter, overriding  the  value
           built into the executable by icont.  Not required if the configura-
           tion is unchanged since build time or  if  iconx  is  in  the  same
           directory as the executable.

       MSTKSIZE (10000)
           The size, in words, of the main interpreter stack for icont.

       NOERRBUF
           By  default, &errout is buffered.  If this variable is set, &errout
           is not buffered.

       QLSIZE (5000)
           The size, in bytes, of the region used for pointers to strings dur-
           ing garbage collection.

       STRSIZE (500000)
           The initial size, in bytes, of the string space.

       TRACE
           The  initial  value  of  &trace.   If this variable has a value, it
           overrides the translation-time -t option.

SEE ALSO
       icon(1), a simpler command interface for  embedding  Icon  programs  in
       scripts.

       The Icon Programming Language.
       Griswold and Griswold, Peer-to-Peer, third edition, 1996.
       http://www.cs.arizona.edu/icon/lb3.htm.

       Graphics Programming in Icon.
       Griswold, Jeffery, and Townsend, Peer-to-Peer, 1998.
       http://www.cs.arizona.edu/icon/gb/index.htm.

       Version 9.5.0 of Icon.
       http://www.cs.arizona.edu/icon/v950.

CAVEATS
       Icon  executables are not self-sufficient, but require the iconx inter-
       preter.  When distributing an Icon program in executable form,  include
       a copy of iconx in the same directory.