Annotation of researchv10dc/dist/man/v4/man6/m6.6, revision 1.1

1.1     ! root        1: .th M6 VI 11/15/72
        !             2: .sh NAME
        !             3: m6 \*- general purpose macro processor
        !             4: .sh SYNOPSIS
        !             5: .bd m6
        !             6: [
        !             7: .bd \*-d
        !             8: arg1 ] [ arg2 [ arg3 ] ]
        !             9: .sh DESCRIPTION
        !            10: .it M6
        !            11: takes input from file arg2 (or standard input if arg2 is missing)
        !            12: and places output on file arg3 (or standard output).
        !            13: A working file of definitions, ``m.def'',
        !            14: is initialized from  file arg1 if that is supplied.
        !            15: .it M6
        !            16: differs from the standard [1] in these
        !            17: respects:
        !            18: .s3
        !            19: #trace:, #source: and #end:
        !            20: are not defined.
        !            21: .s3
        !            22: #meta,arg1,arg2: transfers the role of metacharacter
        !            23: arg1 to character arg2. If two metacharacters become identical
        !            24: thereby, the outcome of further processing is not guaranteed.
        !            25: For example, to make [ ]{} play the
        !            26: roles of #:<> type
        !            27: .s3
        !            28: .in+5
        !            29: \\\#meta,<\\\#>,[:
        !            30: .br
        !            31: [meta,<:>,]:
        !            32: .br
        !            33: [meta,[substr,<<>>,1,1;,{]
        !            34: .br
        !            35: [meta,[substr,{{>>,2,1;,}]
        !            36: .in-5
        !            37: .s3
        !            38: #del,arg1: deletes the definition of macro arg1.
        !            39: .s3
        !            40: #save: and #rest: save and restore the definition table together with
        !            41: the current metacharacters on file
        !            42: m.def.
        !            43: .s3
        !            44: #def,arg1,arg2,arg3: works as in the standard with the extension
        !            45: that an integer may be
        !            46: supplied to arg3 to cause the new macro to perform the
        !            47: action of a specified builtin before its replacement text is evaluated.
        !            48: Thus all builtins
        !            49: except #def: can be retrieved even after deletion.
        !            50: Codes for arg3 are:
        !            51: .s3
        !            52: .in+5
        !            53: .nf
        !            54: 0 \*- no function
        !            55: 1,2,3,4,5,6 \*- gt,eq,ge,lt,ne,le
        !            56: 7,8 \*- seq,sne
        !            57: 9,10,11,12,13 \*- add,sub,mpy,div,exp
        !            58: 20 \*- if
        !            59: 21,22 \*- def,copy
        !            60: 23 \*- meta
        !            61: 24 \*- size
        !            62: 25 \*- substr
        !            63: 26,27 \*- go,gobk
        !            64: 28 \*- del
        !            65: 29 \*- dnl
        !            66: 30,31 \*- save,rest
        !            67: .fi
        !            68: .in-5
        !            69: .sh FILES
        !            70: m.def  working file of definitions
        !            71: .br
        !            72: /usr/lang/mdir/m6a     m6 processor proper (/usr/bin/m6 is only an initializer)
        !            73: .br
        !            74: /usr/lang/mdir/m6b     default initialization for m.def
        !            75: .br
        !            76: /bin/cp        used for copying initial value of m.def
        !            77: .sh "SEE ALSO"
        !            78: [1] A. D. Hall,
        !            79: The M6 Macroprocessor, Bell Telephone Laboratories, 1969
        !            80: .sh DIAGNOSTICS
        !            81: ``err''
        !            82: \*- a bug, an unknown builtin or a bad definition table
        !            83: .br
        !            84: ``oprd''\*-can't open input or initial definitions
        !            85: .br
        !            86: ``opwr''\*-can't open output
        !            87: .br
        !            88: ``ova'' \*- overflow of nested arguments
        !            89: .br
        !            90: ``ovc'' \*- overflow of calls
        !            91: .br
        !            92: ``ovd'' \*- overflow of definitions
        !            93: .br
        !            94: ``Try again'' \*- no process available for copying m.def
        !            95: .sh AUTHOR
        !            96: M. D. McIlroy
        !            97: .sh BUGS
        !            98: Characters in internal tables are stored
        !            99: one per word.
        !           100: They really should be packed to improve capacity.
        !           101: For want of space (and because of unpacked formats) no file arguments
        !           102: have been provided to #save: or #rest:,
        !           103: and no check is made on the actual opening of file m.def.
        !           104: Again to save space,
        !           105: garbage collection makes calls on #save: and #rest: and so overwrites
        !           106: m.def.
        !           107: .s3
        !           108: Since the program is written in the defunct language
        !           109: B it is currently unavailable.
        !           110: Expressions of interest may make a C version appear.

unix.superglobalmegacorp.com

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