mirror of
https://github.com/PDP-10/its.git
synced 2026-01-13 15:27:28 +00:00
51 lines
2.4 KiB
Plaintext
51 lines
2.4 KiB
Plaintext
New features in CGOL 74. Please report any bugs to MJF;.
|
||
|
||
[1] The lexical syntax has been cleaned up a little. An altmode
|
||
may be included in a character string or in a comment by
|
||
preceeding it with the escape character "?". An unprotected
|
||
altmode now causes an error. To put a quote character (")
|
||
into a character string, it must be doubled.
|
||
|
||
[2] CGOLREAD now takes an argument which is treated just like
|
||
the argument to READ. Namely, if CGOLREAD encounters an end-of-file
|
||
as the first thing upon being called, the argument is returned;
|
||
otherwise it is assumed that there follows a complete CGOL
|
||
expression followed by the input terminator (an altmode or dollar).
|
||
If not, an error is reported. If the argument is NIL, then
|
||
initial end-of-files are passed over. Sometime in the future,
|
||
the argument may become optional, but for now it is required.
|
||
|
||
[3] The necessary changes for compatibility with [2] have been made
|
||
in MAKLISP.
|
||
|
||
[4] A new bracketing operator "OCT" allows the reading of a
|
||
portion of CGOL text with IBASE=8 so numbers are read in octal
|
||
(unless followed by a dot). The following text MUST be
|
||
enclosed in parentheses. E.g. oct(12) $ prints 10., and
|
||
oct(12+14) prints 22.
|
||
|
||
[5] Tokens may now be composed of multiple characters. NEWTOK "foo" defines
|
||
the string foo to be a token. It may then be used like any
|
||
other token, e.g. appear in infix, prefix, and define statements,
|
||
be used as a variable, etc. There are two points of caution.
|
||
(i) The only characters which may appear as the FIRST character
|
||
of such a token are special characters other than quote ("),
|
||
percent (%), exclamation (!), dollar, altmode, and question mark (?).
|
||
(ii) Every prefix of a multiple character token also becomes
|
||
a token. Thus, defining NEWTOK "*-*" causes 2*-3 to parse
|
||
incorrectly. Of course, 2* -3 will still work all right.
|
||
|
||
[6] New bit-vector operators have been defined using the multiple
|
||
character token feature described above. They are:
|
||
.N. - complement;
|
||
.A. - logical and;
|
||
.V. - logical or;
|
||
.X. - exclusive or;
|
||
.^. - left shift.
|
||
|
||
[7] The current version of CGOL may be fasloaded from COM: CGOL FASL.
|
||
Two other ways of invoking it are: (i) Type
|
||
(CGOL) or (CGOLREAD) at LISP (they have autoload
|
||
properties); or (ii) Type :L CGOL; when you start
|
||
your LISP.
|
||
|