diff options
Diffstat (limited to 'static/v10/man1/sno.1')
| -rw-r--r-- | static/v10/man1/sno.1 | 99 |
1 files changed, 99 insertions, 0 deletions
diff --git a/static/v10/man1/sno.1 b/static/v10/man1/sno.1 new file mode 100644 index 00000000..e6852120 --- /dev/null +++ b/static/v10/man1/sno.1 @@ -0,0 +1,99 @@ +.pa 1 +.he 'SNO (I)'2/9/73'SNO (I)' +.ti 0 +NAME sno -- SNOBOL interpreter +.sp +.ti 0 +SYNOPSIS sno___ [ file ] +.sp +.ti 0 +DESCRIPTION sno___ +is a SNOBOL III (with slight differences) +compiler and interpreter. +sno___ obtains input from the +concatenation of file____ and the standard input. +All input through a statement +containing the label 'end' is +considered program and is compiled. +The rest is available to 'syspit'. + +The following is a list of differences +between sno___ and SNOBOL III: + +.in +3 +There are no unanchored searches. +To get the same effect: + +.ti +3 +a ** b unanchored search for b +.ti +3 +a *x* b = x c unanchored assignment + +No back referencing + +.ti +3 +x = "abc" +.ti +3 +a *x* x unanchored search for "abc" + +Different function declaration. +The function declaration is +done at compile time by the use of the label 'define'. +Thus there is no ability to define functions at run time +and the use of the name 'define' is preempted. +There is also no provision for 'automatic' variables +other than the parameters. + +.ti +3 +define f() +.ti +3 + or +.ti +3 +define f(a,b,c) + +All labels except 'define' (even 'end') +must have a non-empty statement. + +If 'start' is a label in the program, +program execution will start there. +If not, execution begins with the first +executable statement. +('define' is not an executable statement) + +There are no builtin functions + +Variable length patterns +at the end of a pattern match are not treated +specially. +They still match the shortest rather than +longest text. + +Parentheses for arithmetic are not needed. +Normal (eg FORTRAN) precedence applies. +Because of this, the arithmetic +operators '/' and '*' +must be set off by space. + +The right side of assignments +must be non-empty. + +Either ' or " may be used for literal quotes. + +The pseudo-variable 'sysppt' is not available. +.in -3 +.sp +.ti 0 +FILES -- +.sp +.ti 0 +SEE ALSO SNOBOL III manual. +(JACM____; Vol. 11 No. 1; Jan 1964; pp 21) +.sp +.ti 0 +DIAGNOSTICS As appropriate +.sp +.ti 0 +BUGS Runtime +diagnostics give the +last program line number +rather than the executing statement line number. |
