X-Git-Url: https://jxself.org/git/?a=blobdiff_plain;f=MUDDLE%2Fpprint.1;fp=MUDDLE%2Fpprint.1;h=b408a23090483f63df75a11dd8170aa555ce378a;hb=39c5769144e7f2a58076bdb973d2c80fa603345c;hp=0000000000000000000000000000000000000000;hpb=bab072f950a643ac109660a223b57e635492ac25;p=pdp10-muddle.git diff --git a/MUDDLE/pprint.1 b/MUDDLE/pprint.1 new file mode 100644 index 0000000..b408a23 --- /dev/null +++ b/MUDDLE/pprint.1 @@ -0,0 +1,401 @@ + "MUDDLE PRETTY-PRINT, FRAME-SCANNER, AND OTHER ROUTINES" + +)> + +"These atoms are placed in the ROOT oblist to allow general + access to their functions" +M +> > >>)> +PPRINF +SPECBEF +SPECAFT +FORMS +PPRINT +EPRINT +FRAMES +FRATM +FRM +INDENT-TO +LINPOS +LINLNT +PAGPOS +PAGLNT +QUICKPRINT +PP ;"OBLIST" + + + + )> + + + + + ;"To make compatible with MEDDLE." + ) M (COMELE ,COMPONENTS)) + ) + (<==? TOPLEVEL> )> + >> FSUBR> + <==? > EVAL> + <==? >>> FORM> + <==? <1 <1 >>>> + > + + > + + + > + SKIPIT > + > + > + >>> + +) (DEPTH!-FR 1) AF) + ) + (<==? TOPLEVEL> )> + EVAL> + <1? >> + <==? >>> FORM> + <==? > ATOM> + <==? > ,<1 .AF>> + .F> .F>>>> + FUNCTION> + + + >> + > + > >> + +)) + ) + (<==? TOPLEVEL> + + + )> + > + >>>> + + + + + + + + + + + + + + + + + + +)) + ;"Print tabs and spaces to get to column -n-" + + -1> ,TABS>> + -1> ,SPACES>>)>>> + ) (STOP 0)) + ) (M 0)) + > > + > + + >>)> + > + + >>> + +) (STOP 0)) + ) + (.QUICKPRINT + > + >> <==? .L .STOP>> > + >) + (ELSE + ) COM) + > + > + >> <==? .L .STOP>> )> + )> + >)>>> + + + + ) ;"If its a MONAD, just print it." + (ELSE + .M>>> + )> ;"If it fits, use ELEMENTS, else COMPONENTS." + < PPRINT ;"Snarfed from BKD." + '#FUNCTION (() + + > + >>)>>)>>> + + + ) + ( .M>>> + ) + (ELSE < PPRINT + '#FUNCTION ( () + + > + >>)>>)>>> + + COMMENT>> + > .M) (0)>> + + + .MARG + 2>>> + )> + + + .MARG>> + 2>> + + )>>> + + + > + >>> + "The following functions define the way to pprint a given data type" +"They are PUT on the appropriate type name" +"FORM is a special case - see next page." + + <.COMELE .L > >> + + <.COMELE .L > :L>> + + + > + >> + + +> + <.COMELE .L <+ .M 2>> + >>> + + >>> + +>> + +> + +> + + >>> + + + > + <> + ">>> + ) (TEM %<>)) + ) + (ELSE + > ATOM> + -1> > + > + >> >)> + > LIST> .P>> >)> + ) + ( ) + (ELSE )>)>> + + .M .FUDGE>>>> + + %<>) + (ELSE + > -1> > + + > + ) (N <+ .M 1>)) + > + STRING> + )> + + ) + ( ) + (ELSE )> + + + >> + + + )>> + + %<>) + (<==? > STRING> + > + > + .T) + (ELSE + %<>) + (<==? > STRING> %<>) + (ELSE > >)>>)>> + "How to print FORM and its special cases." +"Special cases for FORM are PUT on the appropriate function." + + SPECFORM ',NORMFORM>>>> + +>)) + + > + ) + ( + <- + + .M 3>> + >) + (T >)>) + (T )> + ">> + + +)) + )> + >) + ( <.COMELE >)> >> + + + .M>)) + > FORM> + >> + >>> + T) + (ELSE + 2> ) + (> FORM>> ) + (> + <- 99999999>>> + 3>> + >) + (ELSE )>>)>> + + +>> + +>> + +>> + +> + ;"No fucking comments printed on . , or ' " + >) + (<.COMELE >)>) + (ELSE )>> + + + <- 2>> + ">>> + + + > + >>) + (ELSE + > + + .POS>)> + ">>> + + 3>)) + + > + + + <.COMELE > + ">>> + ATOM>> ) + ( + FUNCTION> + >) + (<==? RSUBR> + >>>>) + (ELSE >>)>) + ( > + FUNCTION> +
) + (<==? RSUBR> + >) + (ELSE )>>>) + (ELSE #FALSE ("NAKED ATOM?"))>>> + + + + + + ,NULL ;"Null atom returned" >> + +) + OUTCH NULLO) + > + > 13 100> + > 13 100> + )) + Q) + .INCH>> + >> + 58> .BOTH>> + > + + + + "DONE"> + + + + + + + +> )> +> )> +> )> +> )> +  ð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒð`Áƒ \ No newline at end of file