(DEFINE-FILE-INFO READTABLE "XCL" PACKAGE "INTERLISP") (filecreated "21-Oct-86 14:35:46" ("compiled on " {eris}sources>cmldeffer.\;21) "21-Oct-86 04:13:01" "COMPILE-FILEd" |in| "Xerox Lisp 21-Oct-86 ..." |dated| "21-Oct-86 04:48:43") (filecreated "21-Oct-86 14:35:22" {eris}sources>cmldeffer.\;21 17229 |changes| |to:| ( functions def-define-type) |previous| |date:| "12-Oct-86 15:50:17" {eris}sources>cmldeffer.\;19) (rpaqq cmldeffercoms ((* |;;;| "DEF-DEFINE-TYPE and DEFDEFINER -- Your One-Stop Providers of Customized File Manager Facilities.") (* |;;| "BE VERY CAREFUL CHANGING ANYTHING IN THIS FILE!!! It is heavily self-referential and thick with bootstrapping problems. All but the most trivial changes (and some of those) are very tricky to make without blowing yourself out of the water... You have been warned." ) (coms (initvars (filepkgflg)) (coms (fns pprint-definer \\define-type-getdef remove-comments) ( functions \\define-type-save-defn))) (variables *definition-hash-table*) (define-types define-types functions variables) (functions defdefiner def-define-type without-filepkg) (functions cl:defun definline defmacro) (functions cl:defvar cl:defparameter cl:defconstant defglobalvar defglobalparameter) (* |;;| "Don't note file package changes to macro-fn.") (prop proptype macro-fn) ( * |;;| "Arrange for the correct compiler to be used.") (prop filetype cmldeffer))) (rpaq? filepkgflg) pprint-definer d1 (p 3 \#rpars p 2 current p 1 defined p 0 definer i 0 define-expression f 4 prettycomfont f 5 defaultfont f 6 commentflg) @@b@bo H k I0o T I U k Iidd o T I U @dk @@bi @@dVk @@bid @id J lk @idd o h (198 terpri 194 prin1 187 printdef 179 spaces 171 dspxposition 166 terpri 162 fitp 155 printdef 142 spaces 122 printdef 110 spaces 98 changefont 93 prin2 88 changefont 83 prin1 75 printdef 66 spaces 61 changefont 56 prin2 50 changefont 45 prin1 34 spaces 29 prin2 24 prin1 14 dspxposition) nil ( 191 ")" 80 ")" 42 "(" 21 "(") \\define-type-getdef d1 (p 1 defn p 0 cl:hash-table i 2 options i 1 type i 0 name) ;A` H@H @l @A'BgBgBI I(54 cl:copy-tree 16 cl:gethash 6 cl:gethash) (47 edit 39 edit 3 *definition-hash-table*) () remove-comments d1 (i 0 x f 2 commentflg) 2@@R@b@ @ Hd@I@@HI(27 remove-comments 22 remove-comments) nil () \\define-type-save-defn d1 (l (2 definition 1 type 0 name)) [@l@A A` aH-oA A`gggl2gl2 KJI @HBNML @Ag (88 markaschanged 79 cl::puthash 66 cl::puthash 59 cl:make-hash-table 32 cl:warn 18 cl:gethash 10 remprop) (85 changed 53 :rehash-size 48 :size 45 cl:equal 42 :test 38 *definition-hash-table* 15 *definition-hash-table*) ( 28 "Couldn't find a hash-table for ~S definitions.~%One will be created.") (cl:proclaim (quote (global *definition-hash-table*))) (or (boundp (quote *definition-hash-table*)) (setq *definition-hash-table* (hasharray 20))) (addtovar prettydefmacros (define-types x (p * (mapcar (quote x) (function (lambda (item) (cl:do ((def (getdef item (quote define-types)))) (def def) (cl:cerror "Re-fetch the definition" "No ~S definition for ~S" (quote define-types) item)))))))) (addtovar prettytypelst (changeddefine-typeslst define-types "Common Lisp definition type")) (cond ((not (cl:gethash (quote define-types) *definition-hash-table*)) (let* ((a0328 (quote define-types)) (a0329 *definition-hash-table*) (a0331 (cl:make-hash-table (quote :test) (quote cl:equal ) (quote :size) 50 (quote :rehash-size) 50))) (cl::puthash a0328 a0329 a0331)))) (addtovar filepkgtypes define-types) (putprops define-types getdef \\define-type-getdef) (putprops define-types filepkgcontents nill) (putprops define-types proptype define-types) (addtovar prettydefmacros (functions x (p * (mapcar (quote x) (function (lambda (item) (cl:do ((def ( getdef item (quote functions)))) (def def) (cl:cerror "Re-fetch the definition" "No ~S definition for ~S" (quote functions) item)))))))) (addtovar prettytypelst (changedfunctionslst functions "Common Lisp functions")) (cond ((not (cl:gethash (quote functions) *definition-hash-table*)) (let* ((a0332 (quote functions)) ( a0333 *definition-hash-table*) (a0335 (cl:make-hash-table (quote :test) (quote cl:equal) (quote :size) 50 (quote :rehash-size) 50))) (cl::puthash a0332 a0333 a0335)))) (addtovar filepkgtypes functions) (putprops functions getdef \\define-type-getdef) (putprops functions filepkgcontents nill) (putprops functions proptype functions) (addtovar prettydefmacros (variables x (p * (mapcar (quote x) (function (lambda (item) (cl:do ((def ( getdef item (quote variables)))) (def def) (cl:cerror "Re-fetch the definition" "No ~S definition for ~S" (quote variables) item)))))))) (addtovar prettytypelst (changedvariableslst variables "Common Lisp variables")) (cond ((not (cl:gethash (quote variables) *definition-hash-table*)) (let* ((a0336 (quote variables)) ( a0337 *definition-hash-table*) (a0339 (cl:make-hash-table (quote :test) (quote cl:equal) (quote :size) 50 (quote :rehash-size) 50))) (cl::puthash a0336 a0337 a0339)))) (addtovar filepkgtypes variables) (putprops variables getdef \\define-type-getdef) (putprops variables filepkgcontents nill) (putprops variables proptype variables) |expand-DEFDEFINER| d1 (l (1 $$macro-environment 0 $$macro-form)) 1 @  @HH[K]MAi __O_O_ggggJggNOgggggOhhgogggogggLhhhohhohh gggJghhOgggJhoOhhgJhh hgoggggJhogIhhhhgJhh(237 \\append2 170 \\append2 32 \\mvlist 29 parse-body 4 remove-comments) (293 quote 273 quote 262 quote 259 \\define-type-save-defn 256 filepkgflg 253 and 246 cl:eval-when 228 quote 207 quote 204 cl:documentation 201 cl:setf 186 pprint-definer 182 prettyprintmacros 179 addtovar 176 without-filepkg 130 quote 127 \\\, 124 quote 117 \\define-type-save-defn 114 filepkgflg 111 and 104 cl:eval-when 92 progn 89 \\\, 86 without-filepkg 83 progn 80 bquote 72 %original-definition 69 &whole 65 defmacro 62 progn 59 without-filepkg 56 progn) ( 270 (quote functions) 250 (cl:eval) 215 ((quote cl:function)) 159 ((quote (\\\, name))) 144 ((quote (\\\, %original-definition))) 121 (quote (\\\, name)) 108 (cl:eval)) (setf-macro-function (quote defdefiner) (quote |expand-DEFDEFINER|)) (addtovar prettyprintmacros (defdefiner . pprint-definer)) |expand-DEF-DEFINE-TYPE| d1 (l (1 $$macro-environment 0 $$macro-form)) l@ A@HHgggggJggggoggogggggJhhhhogoogJhohhhhhhhgggoJ o J \d L LJKhhgggJhogggJhoohggJhgJogJogJgJhhhgoggggJhogIhhhhgJhh(186 set 180 boundp 175 cl:intern 172 cl:symbol-package 168 cl:concatenate 161 string 4 remove-comments) (352 quote 332 quote 321 quote 318 \\define-type-save-defn 315 filepkgflg 312 and 305 cl:eval-when 284 proptype 280 putprops 270 putprops 260 putprops 252 filepkgtypes 249 addtovar 226 quote 223 cl:gethash 220 cl:setf 207 quote 204 cl:gethash 201 cl:unless 153 string 150 prettytypelst 147 addtovar 104 quote 93 cl:cerror 73 quote 70 item 67 getdef 64 def 61 cl:do 54 lambda 51 function 44 mapcar 41 * 38 p 35 x 31 prettydefmacros 28 addtovar 25 progn 22 without-filepkg 19 progn) ( 329 (quote define-types) 309 (cl:eval) 275 (filepkgcontents nill) 265 (getdef \\define-type-getdef) 240 ((cl:make-hash-table :test (quote cl:equal) :size 50 :rehash-size 50)) 234 (*definition-hash-table*) 215 (*definition-hash-table*) 165 "LST" 157 "CHANGED" 112 (item) 101 "No ~S definition for ~S" 97 "Re-fetch the definition" 90 (def def) 58 (item) 48 (quote x)) (setf-macro-function (quote def-define-type) (quote |expand-DEF-DEFINE-TYPE|)) (addtovar prettyprintmacros (def-define-type . pprint-definer)) |expand-WITHOUT-FILEPKG| d1 (l (1 $$macro-environment 0 $$macro-form)) =@ggoHgogogooHhhhnil (34 let 27 and 20 cl:eval-when 10 cl:eval-when 7 progn) ( 42 (declare (cl:special filepkgflg dfnflg)) 38 (filepkgflg (dfnflg t)) 31 (neq dfnflg (quote prop)) 24 (cl:eval) 14 (cl:load)) (setf-macro-function (quote without-filepkg) (quote |expand-WITHOUT-FILEPKG|)) cl::|expand-DEFUN| d1 (l (1 $$macro-environment 0 $$macro-form)) @ @HH[KAi ]M_M_ggggggJhhggLOgJNh hhOgggJhoOhhhgoggggJhogIhhhhgJhh(89 \\append2 27 \\mvlist 24 parse-body 4 remove-comments) (184 quote 164 quote 153 quote 150 \\define-type-save-defn 147 filepkgflg 144 and 137 cl:eval-when 111 quote 108 cl:documentation 105 cl:setf 80 cl:block 74 cl:lambda 71 cl:function 61 quote 58 cl:symbol-function 55 cl:setf 52 progn 49 without-filepkg 46 progn) ( 161 (quote functions) 141 (cl:eval) 119 ((quote cl:function))) (setf-macro-function (quote cl:defun) (quote cl::|expand-DEFUN|)) (addtovar prettyprintmacros (cl:defun . pprint-definer)) |expand-DEFINLINE| d1 (l (1 $$macro-environment 0 $$macro-form)) @  @HH[KAggMNi __O_gLOgJOh _ggJLMgJoJhJ oggOhohhhgoggggJhogIhhhhgJhh(105 xcl:pack 102 cl:symbol-package 69 \\append2 37 \\mvlist 34 parse-body 4 remove-comments) (189 quote 169 quote 158 quote 155 \\define-type-save-defn 152 filepkgflg 149 and 142 cl:eval-when 115 quote 112 cons 89 defoptimizer 80 cl:defun 77 progn 59 cl:block 53 cl:lambda 28 without-filepkg 25 progn) ( 166 (quote functions) 146 (cl:eval) 124 (args) 109 (&rest args) 94 "definline-") (setf-macro-function (quote definline) (quote |expand-DEFINLINE|)) (addtovar prettyprintmacros (definline . pprint-definer)) cl::|expand-DEFMACRO| d1 (l (1 $$macro-environment 0 $$macro-form))  @  @HH[KggJJloJ oJhJ _LgMJhgg  __O__OgogggOhhggoOgJOhh hhgggJhhgOhhNgggJhoNhhhgoggggJhogIhhhhgJhh(152 \\append2 81 \\mvlist 78 parse-defmacro 58 xcl:pack 55 cl:symbol-package 42 cl:error 4 remove-comments) (275 quote 255 quote 244 quote 241 \\define-type-save-defn 238 filepkgflg 235 and 228 cl:eval-when 201 quote 198 cl:documentation 195 cl:setf 180 quote 170 quote 167 cl:macro-function 164 cl:setf 140 cl:block 131 cl:lambda 128 cl:function 117 quote 114 cl:symbol-function 111 cl:setf 104 cl:eval-when 74 $$macro-environment 71 :environment 65 $$macro-form 26 without-filepkg 23 progn) ( 252 (quote functions) 232 (cl:eval) 209 ((quote cl:function)) 135 ($$macro-form $$macro-environment) 108 (cl:eval cl:compile cl:load) 47 "expand-" 38 "Illegal name used in DEFMACRO: ~S") (setf-macro-function (quote defmacro) (quote cl::|expand-DEFMACRO|)) (addtovar prettyprintmacros (defmacro . pprint-definer)) cl::|expand-DEFVAR| d1 (l (1 $$macro-environment 0 $$macro-form)) @ a@HH[dKhhKKggggggJhhhM!gggJhhgJLhhhNgggJhoNhh hgoggggJhogIhhhhgJhh(127 \\append2 4 remove-comments) (182 quote 162 quote 151 quote 148 \\define-type-save-defn 145 filepkgflg 142 and 135 cl:eval-when 107 quote 104 cl:documentation 101 cl:setf 83 setq 73 quote 70 boundp 67 or 51 cl:special 48 quote 45 cl:proclaim 42 progn 39 without-filepkg 36 progn) ( 159 (quote variables) 139 (cl:eval) 115 ((quote variable))) (setf-macro-function (quote cl:defvar) (quote cl::|expand-DEFVAR|)) (addtovar prettyprintmacros (cl:defvar . pprint-definer)) cl::|expand-DEFPARAMETER| d1 (l (1 $$macro-environment 0 $$macro-form)) @ Q@HH[KdggggggJhhhgJLhMgggJhoMhhhgoggggJhogIhhhhgJhh(4 remove-comments) (145 quote 125 quote 114 quote 111 \\define-type-save-defn 108 filepkgflg 105 and 98 cl:eval-when 72 quote 69 cl:documentation 66 cl:setf 54 setq 41 cl:special 38 quote 35 cl:proclaim 32 progn 29 without-filepkg 26 progn) ( 122 (quote variables) 102 (cl:eval) 80 ((quote variable))) (setf-macro-function (quote cl:defparameter) (quote cl::|expand-DEFPARAMETER|)) (addtovar prettyprintmacros (cl:defparameter . pprint-definer)) cl::|expand-DEFCONSTANT| d1 (l (1 $$macro-environment 0 $$macro-form)) @ Q@HH[KdggggJLhggJhggJhhoMgggJhoMhhhgoggggJhogIhhhhgJhh(4 remove-comments) (156 quote 136 quote 125 quote 122 \\define-type-save-defn 119 filepkgflg 116 and 109 cl:eval-when 83 quote 80 cl:documentation 77 cl:setf 57 constant 54 quote 47 quote 44 puthash 35 setq 32 progn 29 without-filepkg 26 progn) ( 133 (quote variables) 113 (cl:eval) 91 ((quote variable)) 68 (compvarmacrohash)) (setf-macro-function (quote cl:defconstant) (quote cl::|expand-DEFCONSTANT|)) (addtovar prettyprintmacros (cl:defconstant . pprint-definer)) |expand-DEFGLOBALVAR| d1 (l (1 $$macro-environment 0 $$macro-form)) @ a@HH[dKhhKKggggggJhhhM!gggJhhgJLhhhNgggJhoNhh hgoggggJhogIhhhhgJhh(127 \\append2 4 remove-comments) (182 quote 162 quote 151 quote 148 \\define-type-save-defn 145 filepkgflg 142 and 135 cl:eval-when 107 quote 104 cl:documentation 101 cl:setf 83 setq 73 quote 70 boundp 67 or 51 global 48 quote 45 cl:proclaim 42 progn 39 without-filepkg 36 progn) ( 159 (quote variables) 139 (cl:eval) 115 ((quote variable))) (setf-macro-function (quote defglobalvar) (quote |expand-DEFGLOBALVAR|)) (addtovar prettyprintmacros (defglobalvar . pprint-definer)) |expand-DEFGLOBALPARAMETER| d1 (l (1 $$macro-environment 0 $$macro-form)) @ Q@HH[KdggggggJhhhgJLhMgggJhoMhhhgoggggJhogIhhhhgJhh(4 remove-comments) (145 quote 125 quote 114 quote 111 \\define-type-save-defn 108 filepkgflg 105 and 98 cl:eval-when 72 quote 69 cl:documentation 66 cl:setf 54 setq 41 global 38 quote 35 cl:proclaim 32 progn 29 without-filepkg 26 progn) ( 122 (quote variables) 102 (cl:eval) 80 ((quote variable))) (setf-macro-function (quote defglobalparameter) (quote |expand-DEFGLOBALPARAMETER|)) (addtovar prettyprintmacros (defglobalparameter . pprint-definer)) (putprops macro-fn proptype functions) (putprops cmldeffer filetype cl:compile-file) (putprops cmldeffer copyright ("Xerox Corporation" 1986 1900)) nil