From: Lars Brinkhoff Date: Tue, 30 Apr 2019 06:40:42 +0000 (+0200) Subject: More files. X-Git-Url: https://jxself.org/git/?p=pdp10-muddle.git;a=commitdiff_plain;h=bb23b34fe64e4bdb6479f4f36313382c42941c65 More files. --- diff --git a//parse-definitions.mud.1 b//parse-definitions.mud.1 new file mode 100644 index 0000000..a41af95 --- /dev/null +++ b//parse-definitions.mud.1 @@ -0,0 +1,493 @@ + + + +"Definitions of types and offsets appropriate for trees built by ADAPLEX + parser" + + + +" " + +"Define MSETG to SETG an atom and make it manifest as well" + + > + + +"INDENTATION and INDENT-AMT are used in pretty printing of ADAPLEX" + + + + + +"Define type for USE statement" + + + + + + > + + ITERATION LIST>> + +"FOR loops have iteration spec and a list of commands" + +> + +> + +"Function to print for loops nicely" + +> + + > + > + + >> + +" " +"Type ITERATION specifies the range of a for loop." + + + IDENTIFIER + ANY + ANY + ATOM + >> + +> + +> + +> + +> + +> + +> + + + + + + + >) + (ELSE )> + + > + + > + + + >)> + RANDOM> + + > + + >)>> + +"Type RETRIEVE is produced by a Retrieve statement in the language" + + ANY IDENTIFIER LIST>> + +> + +> + +> + + + > + + > + + > + > + +" " +"Type PRINTYPE is produced for a PRINT command" + + + + + > + +"Various kinds of IFs become IFTYPE. IFTYPE is a list of CLAUSEs. Each + clause has a predicate and a list of things to do on truth." + + + + + ELSE> ) + (ELSE + ) + (ELSE )> + > + )> + + > + > + > + >> + .L> + > + + ANY LIST>> + +> + +> + +" " + +"Explicit sets become lists of the explicit objects in the set" + + + +> + +"Type FCN is for entity function calls" + + IDENTIFIER ANY>> + +> + +> + +> + + > + > + +"Type RESTRICTION is for restricted sets. It has a variable, an input set and + a predicate" + + IDENTIFIER ANY ANY>> + +> + +> + +> + + + > + + > + + > + > +" " +"Type OPERATOR is for +,- etc." + + ATOM ANY ANY>> + +> + +> + +> + + ;"Binary operator" + OPERATOR> + )> + > + OPERATOR> + )> + >> 2> + >) + (ELSE + + > + )> + OPERATOR> + )> + > + OPERATOR> + )>) + (ELSE + >> 2> + >) + (ELSE + > + )> + >)>> + +" " +"Type QUANTIFIER is for DAPLEX quantifiers FOR SOME etc." + + ATOM FIX IDENTIFIER ANY ANY ANY>> + +> + +> + +> + +> + +> + +> + + + > >) + (ELSE + AT-LEAST> "AT LEAST ") + (ELSE "AT MOST ")>> + >)> + + > + + > + >)> + + >> + + ATOM FIX ANY>> + +> + +> + +> + + ATOM ANY >> + +> + +> + +> + +> + + ATOM ANY ANY>> + +> + +> + +> + +>> + + + + + + IDENTIFIER ANY>> + +> + +> + + IDENTIFIER + + >> + +> + +> + +> + + + + LIST LIST>> + +> + +> + + IDENTIFIER ANY>> + +> + +> + + IDENTIFIER + LIST + > + > + + >> + +> + +> + +> + +> + +> + +> + + +"Utility print stuff" + +) + + + )) + + > ) + (ELSE )>> + .L>> + +) + + + + > .L>> + + + > + + + > + + + + > ,TYPES ,PSUBRS>> + + > ,TYPES>> + + + + + + + \ No newline at end of file diff --git a//getord.mud.1 b//getord.mud.1 new file mode 100644 index 0000000..2d8431f --- /dev/null +++ b//getord.mud.1 @@ -0,0 +1,244 @@ + +"GETORDER FUNCTIONS" + +) + + + + >>> + + (VALUE) LIST) + 1>>> + + (OU) ) + >) + ) + (>> + .TEM> >) + (ELSE .TEM> >)>)> + >>> + +) + )> + > + > + >> + +) + ]>> + (VALUE) ]> + (TEM) >) + >) + (> + !.RES)> + >) + (ELSE >)> + >) + (ELSE + > + .FLIST>> + + !.RES2)> + + >) + (ELSE + + >)>)> + >> >> + ) + (> >)> + > + > + + + 1>>>) + (ELSE + + >>)>)> + ) + (ELSE )>> + )>>> + + ATOM]>) + >> + > > + >>> + + ATOM]> (RES) LIST) + ) + > + ) <1 .LS> .LST>> + >> + ) + FIX>) (TL 0) (LST .LST)) + #DECL ((SHORT TL) FIX (LST) ) + > + >> .SHORT> + + )> + >> + >> <1 <1 .PNT>>) + (ELSE <1 .PNT>)> + !.RES)> + > <1 .PNT>> + > + >) + (ELSE + + >)>) + (ELSE )>> + >> + > + + + (MLST) ATOM]>) + + ) + (ELSE + ) + .ATM> + >> + >> + .MLST>>)>> + .LST> + .LATM> + + + (FUNCL) >) + + + >> + +)) + #DECL ((FM) FORM) + ) + ( + >>>> + ATOM> >> + FUNCTION> >> + MACRO> + >> + >> + ;"Analyze expansion of MACRO call" + ,MAPF> <==? ,<1 .FM> ,MAPR>> + > + FORM> >> + T> + FORM> + >>>>) + (> ,FINDREC <1 .OBJ>>)> + >) + (ELSE ,FINDREC >)>) + (ELSE ,FINDREC .OBJ>)>> + +) TEM) + )> + > + ) + (ELSE " ">)>> + 100> + ) + + ()>> + VECTOR> + + )> + ) + (ELSE > <1 .TEM>)>> + + 2> + ATOM> + <==? ,<1 .FM> ,GVAL> + ATOM> + > + FUNCTION> + MACRO> + >> + > FUNCTION>>> + >>> + + (FUNCL) > + (VALUE) ) + + .FUNCL> + + ATOM>) + > + > <1 .ATM> !.TD)> + >>)) + #DECL ((ATM) > + (TOPDO) ATOM>>) + )) + #DECL ((TODO) + (CURDO) >) + + >> + ) + (ELSE > )>) + ( .TOPDO>) + (ELSE + 1>> + (> <1 .CURDO>)>)> + >>> + +>) + >> + >) + (ELSE )>> + + + + +  \ No newline at end of file diff --git a//m104uni.save.1 b//m104uni.save.1 new file mode 100644 index 0000000..19caeda Binary files /dev/null and b//m104uni.save.1 differ diff --git a//lsrtns.mud.20 b//lsrtns.mud.20 new file mode 100644 index 0000000..68ec45f Binary files /dev/null and b//lsrtns.mud.20 differ diff --git a//em.mud.1 b//em.mud.1 new file mode 100644 index 0000000..2594073 --- /dev/null +++ b//em.mud.1 @@ -0,0 +1,17 @@ +) TEM) + )> + > + ) + (ELSE " ">)>> + 100> + ) + + ()>> + VECTOR> + + )> + ) + (ELSE > <1 .TEM>)>> \ No newline at end of file