⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chill.texi

📁 gcc-2.95.3 Linux下最常用的C编译器
💻 TEXI
📖 第 1 页 / 共 3 页
字号:
| @i{<buffer mode name>}| @i{<text location>}| @i{<text mode name>}@end example@end example@b{semantics:}@i{ADDR} is derived syntax for -> @i{<location>}.@i{PRED} and @i{SUCC} delivers respectively, in case of a @i{discreteexpression}, the next lower or higher discrete value of their argument,in case of @i{bound reference expression} these built-in calls deliver apointer to the previous or next element.@i{ABS} is defined on numeric values, i.e. integer values and floatingpoint values, delivering the corresponding absolute value.@i{LENGTH} is defined on@itemize @bullet@item string and text locations and string expressions, delivering thelength of them;@item event locations, delivering the @b{event length} of the mode of thelocation;@item buffer locations, delivering the @b{buffer length} of the mode ofthe location;@item string mode names, delivering the @b{string length} of the mode;@item text mode names, delivering the @b{text length} of the mode;@item buffer mode names, delivering the @b{buffer length} of the mode;@item event mode names, delivering the @b{event length} of the mode;@item Additionally, @i{LENGTH} also may be used on the left handside of an assignment to set a new length of a @i{varying characterstring location}. However, to avoid undefined elements in the varyingstring, the new length may only be less or equal to the current length.Otherwise a @b{RANGEFAIL} exception will be generated.@end itemize@i{SIN} delivers the sine of its argument (interpreted in radians).@i{COS} delivers the cosine of its argument (interpreted in radians).@i{TAN} delivers the tangent of its argument (interpreted in radians).@i{ARCSIN} delivers the sin -1 function of its argument.@i{ARCCOS} delivers the cos -1 function of its argument.@i{ARCTAN} delivers the tan -1 function of its argument.@i{EXP} delivers the exponential function, where x is the argument.@i{LN} delivers the natural logarithm of its argument.@i{LOG} delivers the base 10 logarithm of its argument.@i{SQRT} delivers the sqare root of its argument.@i{QUEUE_LENGTH} delivers either the number of sending delayed processesplus the number of messages in a buffer queue (if the argument is a@i{buffer location}), or the number of delayed processes (if theargument specifies an @i{event location}) as @i{integer expression}.@i{GEN_INST} delivers an @i{instance expression} constructed from thearguments. Both arguments must have the @i{&INT}-derived class.@i{COPY_NUMBER} delivers as @i{&INT}-derived class the copy number of an@i{instance location}.@i{GEN_PTYPE} delivers as @i{&INT}-derived class the associated numberof the @i{process name}.@i{PROC_TYPE} delivers as @i{&INT}-derived class the process type of an@i{instance expression}.@i{GEN_CODE} delivers as @i{&INT}-derived class the associated number ofthe @i{process name} or @i{signal name}.@i{DESCR} delivers a @i{free reference expression} pointing to astructure with the following layout describing the @i{location} argument.@exampleSYNMODE __tmp_descr = STRUCT (p PTR, l ULONG);@end example@item 7.4.2 Associating an outside world object@*The syntax of the associate built-in routine call is defined as:@example@i{<associate built-in routine call> ::=}@example@i{ASSOCIATE ( <association location>, <string expression>,} [@i{, <string expression>} ] @i{)}@end example@end exampleThe ASSOCIATE call has two parameters besides the association location:a pathname and an optional mode string.The value of the first string expression must be a pathname according tothe rules of the underlying operating system. (Note that a relative pathname implies a name relative to the working directory of the process.)The mode string may contain the value "VARIABLE", which requestsan external representation of records consisting of an UINT recordlength followed by as many bytes of data as indicated by the length field.Such a file with variable records is not indexable.A file with variable records can be written using any record mode. If the record mode is CHARS(n) VARYING, the record length is equal to the actual length of the value written.  (Different record may have differing lengths.)With all other record modes, all records written using the same access modewill have the same length, but will still be prefixed with the length field.(Note that by re-connecting with different access modes, the externalrepresentation may ultimately contain records with differing lengths.)A file with variable records can only be read by using a record mode ofCHARS(n) VARYING.@item 7.4.2 Accessing association attributes@*The value of the READABLE and WRITEABLE attributes is determined using the file status call provided by the operating system.  The result willdepend on the device being accessed, or on the file mode.The INDEXABLE attribute has the value false for files with variable records,and for files associated with devices not supporting random positioning(character devices, FIFO special files, etc.).The variable attribute is true for files associated with the mode sting"VARIABLE", and false otherwise.@item 7.4.5 Modifying association attributes@*The syntax of the MODIFY built-in routine call is defined as:@example@i{<modify built-in call> ::=}@example@i{MODIFY ( <association location>, <string expression> )}@end example@end exampleAt present, MODIFY accepts a character string containing a pathnamein addition to the association location, which will cause a renaming of the associated file.@item 7.4.9 Data transfer operations@*READRECORD will fail (causing READFAIL) if the number of bytes from thecurrent position in the file to the end of the file is greater than zerobut less than the size of the record mode, and no data will be transferred.(If the number of bytes is zero, no error occurs and OUTOFFILE willreturn TRUE.)The number of bytes transferred by READRECORD and WRITERECORD is equal tothe size of the record mode of the access location. Note that theinternal representation of this mode may vary depending on therecord mode being packed or not.@item 7.5 Text Input Output@*Sequential text files will be represented so as to be compatiblewith the standard representation of texts on the underlying operatingsystem, where control characters are used to delimit text records on filesas well as to control the movement of a cursor or printing head on a device.For indexed text files, records of a uniform length (i.e. the size of thetext record, including the length field) are written.  All i/o codes cause an i/o transfer without any carriage control  characters being added to therecord, which will be expanded with spaces.An indexed text file is therefore not compatible with the standardtext representation of the underlying operating system. @item 7.5.3 Text transfer operations@*The syntax of @i{<text argument>} is changed to:@example@i{<text argument> ::=}@example  @i{<text location>}| @i{<predefined text location>}| @i{<varying string location>}@end example@i{<predefined text location> ::=}@example  STDIN| STDOUT| STDERR@end example@end exampleNOTE: The identifiers STDIN, STDOUT, and STDERR are predefined.Association and connection with files or devices is done according tooperating system rules.The effect of using READTEXT or WRITETEXT with a character string locationas a text argument (i.e. the first parameter) where the same location alsoappears in the i/o list is undefined.The current implementation of formatting assumes run-to-completion semanticsof CHILL tasks within an image.@item 7.5.5 Conversion@*Due to the implementation of @i{<floating point modes>} the syntaxis changed to:@example@i{<conversion clause> ::=}@example@i{<conversion code> @{ <conversion qualifier @} *}@i{[ <clause width> ]}@end example@i{<conversion code> ::=}@example@i{B} | @i{O} | @i{H} | @i{C} | @i{F}@end example@i{<conversion qualifier> ::=}@example@i{L} | @i{E} | @i{P<character>}@end example@i{<clause width> ::=}@example  @i{@{ <digit> @} +} | @i{V}| @i{<real clause width>}@end example@i{<real clause width> ::=}@example@i{@{ @{ <digit> + | V @} : @{ @{ <digit> @} + | V @}}@end example@end exampleNote: The @i{<real clause width>} is only valid for @i{<conversioncode>} `C' or `F'.@item 7.5.7 I/O control@*To achieve compatibility of text files written with CHILL i/o withthe standard representation of text on the underlying operating systemthe interpretation of the i/o control clause of the format deviates from Z.200. The following table shows the i/o codes togetherwith the control characters written before and after the text record, to achieve the indicated function:@table @samp@item /Write next record (record, line feed)@item +Write record on next page (form feed, record, line feed)@item -Write record on current line (record, carriage return)@item ?Write record as a prompt (carriage return, record)@item !Emit record (record).@item =Force new page for the next line: The control character written beforethe next record will be form feed, irrespective of the i/o control used fortransferring the record.@end tableWhen reading a text file containing control characters other than line feed,these characters have to be reckoned with by the format used to read thetext records.@item 11.2.2 Regionality@*Regionality is not implemented at all, so there is no difference in thegenerated code when REGION is substituted by MODULE in a GNUCHILLcompilation unit.@item 11.5 Signal definition statement@*The @i{<signal definition statement>} may only occur at module level.@item 12.3 Case Selection@*The syntax of @i{<case label specification>} is changed to:@example@i{<case label specification> ::=}@example@i{( <case label> @{, <case label> @} * )}@end example@i{<case label> ::=}@example  @i{<discrete literal expression>}| @i{<literal range>}| @i{<discrete mode name>}| @b{ELSE}@end example@end example@end itemize@node Directives@chapter Compiler Directives@itemize @bullet@item ALL_STATIC_ON, ALL_STATIC_OFF@*These directives control where procedure local variables areallocated. ALL_STATIC_ON turns allocation of procedure local variablesin the data space ON, regardless of the keyword STATIC being used or not.ALL_STATIC_OFF places procedure local variables in the stack space.The default is ALL_STATIC_OFF.@item RANGE_ON, RANGE_OFF@*Turns generation of rangecheck code ON and OFF.@item USE_SEIZE_FILE <character string literal>@*Specify the filename (as a character string literal) where subsequent SEIZE statements are related to. This directive and the subsequent SEIZEs are writtento a possibly generated grant file for this module.@example<> USE_SEIZE_FILE "foo.grt" <>SEIZE bar;@end example@item USE_SEIZE_FILE_RESTRICTED "filename"@*Same as USE_SEIZE_FILE. The difference is that this directiveand subsequent SEIZEs are *not* written to a possibly generatedgrant file. @item PROCESS_TYPE = <integer expression>@*Set start value for all PROCESS delclarations. This value automaticallygets incremented after each PROCESS declaration and may be changed witha new PROCESS_TYPE compiler directive.@item SIGNAL_CODE = <integer expression>@*Set start value for all SIGNAL definitions. This value automaticallygets incremented after each SIGNAL definition and may be changed with anew SIGNAL_CODE compiler directive.@item SEND_SIGNAL_DEFAULT_PRIORITY = <integer expression>@*Set default priority for send signal action.@item SEND_BUFFER_DEFAULT_PRIORITY = <integer expression>@*Set default priority for send buffer action.Note: Every <integer expression> in the above mentioned compilerdirectives may also be specified by a SYNONYM of an integer type.@exampleSYN first_signal_code = 10;<> SIGNAL_CODE = first_signal_code <>SIGNAL s1;@end example@end itemize@node References@chapter Language Definition References@itemize @bullet@item	CCITT High Level Language (CHILL) Recommendation Z.200	ISO/IEC 9496, Geneva 1989                ISBN 92-61-03801-8@item	An Analytic Description of CHILL, the CCITT high-level	language, Branquart, Louis & Wodon, Springer-Verlag 1981                                                 ISBN 3-540-11196-4@item	CHILL User's Manual	CCITT, Geneva 1986                       ISBN 92-61-02601-X@item	Introduction to CHILL	CCITT, Geneva 1983                       ISBN 92-61-017771-1@item	CHILL CCITT High Level Language	Proceedings of the 5th CHILL Conference	North-Holland, 1991                      ISBN 0 444 88904 3@item	Introduction to the CHILL programming Language	TELEBRAS, Campinas, Brazil 1990@end itemizeZ.200 is mostly a language-lawyer's document, but more readablethan most.  The User's Guide is more readable by far, but doesn'tcover the whole language.  Our copies of these documents came throughGlobal Engineering Documents, in Irvine, CA, USA. (714)261-1455.@contents@bye

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -