Annotation of researchv10dc/dist/man/v3/man1/m6.1, revision 1.1

1.1     ! root        1: .pa 1
        !             2: .he 'M6 (I)'11/15/72'M6 (I)'
        !             3: .ti 0
        !             4: NAME           m6 -- general purpose macro processor
        !             5: .sp
        !             6: .ti 0
        !             7: SYNOPSIS       m6__
        !             8: [ -d__ arg1 ] [ arg2 [ arg3 ] ]
        !             9: .sp
        !            10: .ti 0
        !            11: DESCRIPTION    m6__
        !            12: takes input from file arg2 (or standard input if arg2 is missing)
        !            13: and places output on file arg3 (or standard output).
        !            14: A working file of definitions, "m.def",
        !            15: is initialized from  file arg1 if that is supplied.
        !            16: M6 differs from the standard [1] in these
        !            17: respects:
        !            18: .sp
        !            19: #trace:, #source: and #end:
        !            20: are not defined.
        !            21: .sp
        !            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: .sp
        !            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: .sp
        !            38: #del,arg1: deletes the definition of macro arg1.
        !            39: .sp
        !            40: #save: and #rest: save and restore the definition table together with
        !            41: the current metacharacters on file
        !            42: m.def.
        !            43: .sp
        !            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: .sp
        !            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: .sp
        !            70: .ti 0
        !            71: FILES          m.def--working file of definitions
        !            72: .br
        !            73: /usr/lang/mdir/m6a--m6 processor proper (/usr/bin/m6 is only an initializer)
        !            74: .br
        !            75: /usr/lang/mdir/m6b--default initialization for m.def
        !            76: .br
        !            77: /bin/cp--used for copying initial value of m.def
        !            78: .sp
        !            79: .ti 0
        !            80: SEE ALSO       [1] A. D. Hall,
        !            81: The M6 Macroprocessor, Bell Telephone Laboratories, 1969
        !            82: .sp
        !            83: .ti 0
        !            84: DIAGNOSTICS    "err"
        !            85: -- a bug, an unknown builtin or a bad definition table
        !            86: .br
        !            87: "oprd"--can't open input or initial definitions
        !            88: .br
        !            89: "opwr"--can't open output
        !            90: .br
        !            91: "ova" -- overflow of nested arguments
        !            92: .br
        !            93: "ovc" -- overflow of calls
        !            94: .br
        !            95: "ovd" -- overflow of definitions
        !            96: .br
        !            97: "Try again" -- no process available for copying m.def
        !            98: .br
        !            99: .sp
        !           100: .ti 0
        !           101: BUGS           Characters in internal tables are stored
        !           102: one per word.
        !           103: They really should be packed to improve capacity.
        !           104: For want of space (and because of unpacked formats) no file arguments
        !           105: have been provided to #save: or #rest:,
        !           106: and no check is made on the actual opening of file m.def.
        !           107: Again to save space,
        !           108: garbage collection makes calls on #save: and #rest: and so overwrites
        !           109: m.def.

unix.superglobalmegacorp.com

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