Annotation of researchv10dc/dist/man/v4/man1/sno.1, revision 1.1

1.1     ! root        1: .th SNO I 2/9/73
        !             2: .sh NAME
        !             3: sno \*- Snobol interpreter
        !             4: .sh SYNOPSIS
        !             5: .bd sno
        !             6: [ file ]
        !             7: .sh DESCRIPTION
        !             8: .it Sno
        !             9: is a Snobol III (with slight differences)
        !            10: compiler and interpreter.
        !            11: .it Sno
        !            12: obtains input from the
        !            13: concatenation of
        !            14: .it file
        !            15: and the standard input.
        !            16: All input through a statement
        !            17: containing the label `end' is
        !            18: considered program and is compiled.
        !            19: The rest is available to `syspit'.
        !            20: .s3
        !            21: .it Sno
        !            22: differs from Snobol III in the following ways.
        !            23: .s3
        !            24: There are no unanchored searches.
        !            25: To get the same effect:
        !            26: .s3
        !            27:        a ** b          unanchored search for b
        !            28: .br
        !            29:        a *x* b = x c   unanchored assignment
        !            30: .s3
        !            31: There is no back referencing.
        !            32: .s3
        !            33:        x = "abc"
        !            34: .br
        !            35:        a *x* x         is an unanchored search for `abc'
        !            36: .s3
        !            37: .i0
        !            38: Function declaration is different.
        !            39: The function declaration is
        !            40: done at compile time by the use of the label `define'.
        !            41: Thus there is no ability to define functions at run time
        !            42: and the use of the name `define' is preempted.
        !            43: There is also no provision for automatic variables
        !            44: other than the parameters.
        !            45: For example:
        !            46: .s3
        !            47: .lp +5 5
        !            48: .bd "define    f( )"
        !            49: .s3
        !            50: .i0
        !            51: or
        !            52: .s3
        !            53: .lp +5 5
        !            54: .bd "define f(a,b,c)"
        !            55: .s3
        !            56: .i0
        !            57: All labels except `define' (even `end')
        !            58: must have a non-empty statement.
        !            59: .s3
        !            60: If `start' is a label in the program,
        !            61: program execution will start there.
        !            62: If not, execution begins with the first
        !            63: executable statement.
        !            64: `define' is not an executable statement.
        !            65: .s3
        !            66: There are no builtin functions.
        !            67: .s3
        !            68: Parentheses for arithmetic are not needed.
        !            69: Normal precedence applies.
        !            70: Because of this, the arithmetic
        !            71: operators `/' and `*'
        !            72: must be set off by space.
        !            73: .s3
        !            74: The right side of assignments
        !            75: must be non-empty.
        !            76: .s3
        !            77: Either \*a or " may be used for literal quotes.
        !            78: .s3
        !            79: The pseudo-variable `sysppt' is not available.
        !            80: .sh "SEE ALSO"
        !            81: Snobol III manual.
        !            82: (JACM;
        !            83: Vol. 11 No. 1; Jan 1964; pp 21)
        !            84: .sh BUGS

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.